Hi,

In our project we use an XML driven menu in Border component

menu.xml example:
    <menu id="Accounts">
        <menu-item page="CreateAccount" listener="createAccount"/>
        <menu-item page="AccountDetails" listener="viewAccountDetails"/>
        <menu-item page="Logout" listener="doLogout"/>
    </menu>

Border.jwc example:
    <property-specification name="menuNode" type="test.MenuNode"/>
    <property-specification name="menuItem" type="test.MenuItem"/>

Border.html example:
<div jwcid="[EMAIL PROTECTED]" source="menuNode" value="menuItem">
     <a jwcid="@DirectLink"        
        listener="ognl:listeners.getListener(menuItem.listenerName)">
        <span jwcid="@Insert"
              value="ognl:getMessage(menuItem.pageName)"/>
     </a>
</div>

Border.java example:
    public void doLogout(IRequestCycle cycle)
    {
        ...
    }
    public void createAccount(IRequestCycle cycle)
    {
        ...
    }
    public void viewAccountDetails(IRequestCycle cycle)
    {
        ...
    }

The page looks fine and "getMessage(menuItem.pageName)" works but as soon as I click on any of the links I get

org.apache.tapestry.BindingException
Unable to resolve expression 'listeners.getListener(menuItem.listener)' for [EMAIL PROTECTED]/$Border].

ognl.OgnlException
source is null for getProperty(null, "listener")

It seems that menuItem was "null", but how come menuItem.pageName works? is this a scope or page rewinding issue? How can I solve it (Tapestry 3.03)?

Regards
Sean



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to