Hello Werner, I have created a Jira, this is the link:
http://jira.codehaus.org/browse/CASTOR-1947 Did you find it? By the way, what about the cache name for castor in the ehcache.xml. Do I need to add a cache name? If not, how can I debug with the ehcache-1.2.4-remote-debugger.jar??? Thanks a lot and best regards, Gonzalo Abollado. -----Mensaje original----- De: Werner Guttmann [mailto:[EMAIL PROTECTED] Enviado el: lunes, 16 de abril de 2007 11:08 Para: dev@castor.codehaus.org Asunto: AW: [castor-dev] Ehcache basic configuration Can I please ask you to create a new Jira issue and attach all relevant files to it (JDO configuration, mapping, domain classes, ...). Having said that, can I please ask you to not ship a web application, but to create a JUnit test that basically mimics a very basic test scenario of your real application. Werner > -----Ursprüngliche Nachricht----- > Von: Gonzalo Abollado [mailto:[EMAIL PROTECTED] > Gesendet: Montag, 16. April 2007 10:45 > An: dev@castor.codehaus.org > Betreff: RE: [castor-dev] Ehcache basic configuration > > 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(AbstractTransacti > on > 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(AbstractTransacti > on > Context.java:913) > at > org.castor.persist.AbstractTransactionContext.update(AbstractTransactionCo > nt > ext.java:966) > at > org.exolab.castor.jdo.engine.AbstractDatabaseImpl.update(AbstractDatabaseI > mp > 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 --------------------------------------------------------------------- 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