Where should I check for the log? In tomcat.log, catalina.out or what? In those I don't see nothing for hivemind...

Thanks

Il giorno 26/mar/06, alle ore 16:55, James Carman ha scritto:

Do you have logging turned on? Does HiveMind say that it's parsing the
module descriptor for the "com.mypackage" module?


-----Original Message-----
From: GbT [mailto:[EMAIL PROTECTED]
Sent: Sunday, March 26, 2006 9:54 AM
To: Tapestry users
Subject: Re: Application State Objects and Hivemind...

Yes it's in the classes directory... I don't understand what could be
wrong... my Home.html is:

<span jwcid="@Wrapper">
        <div id="navigation">
        <ul>
                <span jwcid="@For" source="ognl:visita.menus"
value="ognl:currentMenu" element="li">
                        <span jwcid="@Insert"
value="ognl:currentMenu.name">Menu
name</span>
                </span>
         </ul>
     </div>
</span>



Il giorno 26/mar/06, alle ore 16:17, Mike Snare ha scritto:

Hmm.  Looks ok (but I don't use annotations, either).  Are you sure
that the hivemodule.xml file is being copied over to the classes
directory?  Check that.

I find it easier (for webapps) to just drop it directly in the WEB- INF
directory.  Since you're typically running tomcat with the docBase
pointing back to your project (for development, anyway -- and likely
so if you are using Kent's book) this should work fine.

-Mike

On 3/26/06, GbT <[EMAIL PROTECTED]> wrote:
Hi to all,
I am in trouble getting application state objects to work... I
want to
use a class named Visita in my package com.mypackage... and write
this
hivemind.xml file in src/META-INF as explained in Kent Tong book:

<?xml version="1.0"?>
<module id="com.mypackage" version="1.0.0" package="com.mypackage">
       <contribution configuration-
id="tapestry.state.ApplicationObjects">
               <state-object name="visita" scope="session">
                       <create-instance
class="com.mypackage.Visita"/>
               </state-object>
       </contribution>
</module>

I'm using cayenne for the persistence... Visita.java is simple:

package com.mypackage;
import java.io.Serializable;
import java.util.List;
import org.apache.tapestry.IRequestCycle;
import org.objectstyle.cayenne.access.*;
import org.objectstyle.cayenne.query.*;
import com.mypackage.logic.*;

public class Visita implements Serializable {
   protected DataContext dataContext;
   protected Menu currentMenu;
   public Visita() {
       super();
       this.dataContext = DataContext.createDataContext();
   }
   public DataContext getDataContext() {
       return dataContext;
   }
       public void setCurrentMenu(Menu menu) {
               currentMenu = menu;
       }
       public List getMenus() {
       if (currentMenu!=null) {
               return currentMenu.getSons();
       }
       SelectQuery query = new SelectQuery(Menu.class);
               return getDataContext().performQuery(query);
   }
}

I inject visita in Home.java with:
@InjectState("visita")
public abstract Visita getVisita();

But everytime I try to access Home to display visita.menus... i
get this error:

Unable to read OGNL expression '<parsed OGNL expression>' of
[EMAIL PROTECTED]: visita

... 'visita' is not a declared application state object.

What's wrong???

And what's the best way to store the currentMenu a user is
displaying?
I choose to use the Visita.currentMenu object (in the session).

Thanks

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



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





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



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

Reply via email to