Hello Werner, Thanks a lot for your fast answer...
You are right, the EHCache has to be in the class path, I change it there but still I get the same result. Here is the output log, there you can see the only error is the PresitenceException after the update: 16 abr 2007 00:04:08.249 [INFO] [http-8080-Processor25] [org.exolab.castor.mapping.Mapping] - Loading mapping descriptors from mapping.xml 16 abr 2007 00:04:08.419 [INFO] [http-8080-Processor25] [org.castor.mapping.MappingUnmarshaller] - Loading mapping descriptors from mapping/User.xml 16 abr 2007 00:04:08.619 [INFO] [http-8080-Processor25] [org.castor.mapping.MappingUnmarshaller] - Loading mapping descriptors from mapping/Category.xml 16 abr 2007 00:04:08.629 [INFO] [http-8080-Processor25] [org.castor.mapping.MappingUnmarshaller] - Loading mapping descriptors from mapping/Content.xml 16 abr 2007 00:04:08.639 [INFO] [http-8080-Processor25] [org.castor.mapping.MappingUnmarshaller] - Loading mapping descriptors from mapping/Library.xml 16 abr 2007 00:04:08.649 [INFO] [http-8080-Processor25] [org.castor.mapping.MappingUnmarshaller] - Loading mapping descriptors from mapping/Link.xml 16 abr 2007 00:04:08.659 [INFO] [http-8080-Processor25] [org.castor.mapping.MappingUnmarshaller] - Loading mapping descriptors from mapping/UserContent.xml 16 abr 2007 00:04:08.669 [INFO] [http-8080-Processor25] [org.castor.mapping.MappingUnmarshaller] - Loading mapping descriptors from mapping/Configuration.xml No timestamp information for object com.mbook.base.UserBase with identity <2(2)> available in cache (anymore). 16 abr 2007 00:04:32.524 [ERROR] [http-8080-Processor24] [org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/mbookdev].[ jsp]] - Servlet.service() para servlet jsp lanzó excepción org.exolab.castor.jdo.PersistenceException: No timestamp information for object com.mbook.base.UserBase with identity <2(2)> available in cache (anymore). at org.exolab.castor.persist.ClassMolder.update(ClassMolder.java:888) at org.exolab.castor.persist.LockEngine.update(LockEngine.java:685) at org.castor.persist.AbstractTransactionContext.markUpdate(AbstractTransaction Context.java:913) at.......................... I´m doing a simple test operation where I modify a UserBase object right after I load it. Here is the update code in the JSP. UserBase user = null; String nombre = null; nombre = request.getParameter("nombre"); user = UserBase.load(new Integer(2)); if(nombre != null && !nombre.trim().equals("")) { user.setName(nombre); user.setToUpdate(); user.update(); } I have the Castor code wrapped in some classes but you can see how I just load the Object and modify it in only two fast operations. If I don't modify the object It's there and I can use it with out any error. Also, If I take of the <cache-type type="ehcache"/> from the mapping file, it works fine. It't the first time I use EHCache so I'm not sure of this but it's looks like you have to create a cache definition, there are some examples in the ehcache.xml: <cache name="myCacheTest" maxElementsInMemory="10000" eternal="false" timeToIdleSeconds="100" timeToLiveSeconds="100" overflowToDisk="false"> <cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"/> </cache> Does Castor need a specific definition there? Also, running: java -jar ehcache-1.2.4-remote-debugger.jar ehcache.xml myCacheTest It should give you some information about it. But you need to indicate the cache name to show the info. Any more ideas? Thanks a lot and best regards, Gonzalo Abollado. -----Mensaje original----- De: Werner Guttmann [mailto:[EMAIL PROTECTED] Enviado el: lunes, 16 de abril de 2007 8:47 Para: dev@castor.codehaus.org Asunto: AW: [castor-dev] Ehcache basic configuration As far as I can tell, the EHCache config file (ehcache.xml) should go into WEB-INF/classes, as EHCache expects its configuration to be on the CLASSPATH. Other than that, everything looks fine to me. The Castor error message you are getting simply indicates that (during an update operation, i.e. a re-attachement) Castor is not able to find an object with the given identity in its cache(s). Werner Guttmann PS You might as well look for log statements that happen during startup of your web application that e.g. indicate that EHCache cannot be initialized properly. ________________________________________ Von: Gonzalo Abollado [mailto:[EMAIL PROTECTED] Gesendet: Sonntag, 15. April 2007 23:50 An: dev@castor.codehaus.org Betreff: [castor-dev] Ehcache basic configuration Hello, I´m trying to add Ehcache (or any distributed cache solution in case you can recommend one) to Castor in a Tomcat environment (J2EE). I´m looking everywhere and I don´t manage to find the right docs and I´m not sure if I have configured correctly and how to find out. Can you please point me to the right docs or give me some clues to configure? I have added the ehcache-1.2.4.jar to the lib directory and the ehcache.xml and ehcache.xsd to the WEB-INF and I have added <cache-type type="ehcache"/> to every xml map file. These are the ehcache.xml properties I have: <diskStore path="java.io.tmpdir"/> <cacheManagerEventListenerFactory class="" properties=""/> <cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory" properties="peerDiscovery=automatic, multicastGroupAddress=230.0.0.1, multicastGroupPort=4446, timeToLive=1"/> <cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"/> <defaultCache maxElementsInMemory="10000" eternal="false" timeToIdleSeconds="120" timeToLiveSeconds="120" overflowToDisk="false" maxElementsOnDisk="10000000" diskPersistent="false" diskExpiryThreadIntervalSeconds="120" memoryStoreEvictionPolicy="LRU" /> I´m running the ehcache debugger and I don´t see any information. java -jar ehcache-1.2.4-remote-debugger.jar ehcache.xml This is the info get, and as you can see there are no caches... 13-abr-2007 11:28:57 net.sf.ehcache.distribution.RemoteDebugger main INFO: Increase the net.sf.ehcache.distribution logging level to debug or trace to see distributed cache operations as they occur. 13-abr-2007 11:29:00 net.sf.ehcache.distribution.RemoteDebugger main INFO: Available caches are: And if I try to update an object I get this exception: org.exolab.castor.jdo.PersistenceException: No timestamp information for object com.mbook.base.UserBase with identity <2(2)> available in cache (anymore). at org.exolab.castor.persist.ClassMolder.update(ClassMolder.java:888) at org.exolab.castor.persist.LockEngine.update(LockEngine.java:685) at org.castor.persist.AbstractTransactionContext.markUpdate(AbstractTransaction Context.java:913) at org.castor.persist.AbstractTransactionContext.update(AbstractTransactionCont ext.java:966) at org.exolab.castor.jdo.engine.AbstractDatabaseImpl.update(AbstractDatabaseImp l.java:337) Do I have to add a cache with a specific name any where? Any specific properties? Do I need to add anything in the castor.properties? Can you please give me a hand? Thanks a lot and best regards, Gonzalo Abollado. --------------------------------------------------------------------- To unsubscribe from this list please visit: http://xircles.codehaus.org/manage_email --------------------------------------------------------------------- To unsubscribe from this list please visit: http://xircles.codehaus.org/manage_email