Hi, I just got pinged by Reinwald (we're already on contact via email) regarding this issue. I created the memcached-session-manager ( http://code.google.com/p/memcached-session-manager/ ) for which Reinwald is trying to create a custom serializer/transcoder (memcached-session-manager, msm, basically additionally uses memcached as additional session backup store where session can be loaded from in the case of a tomcat/hardware crash).
I just signed up here on nabble to be able to get into the thread, therefore quoting is not that good / I'm top posting. Now let me try to clarify how msm works regarding serialization/classloading. It is a Manager which is configured as usual via context.xml/server.xml. It supports standard java serialization but also other pluggable serializers like e.g. kryo (faster than java serialization). For kryo the manager configuration accepts custom serializer class names. The basic kryo serializer and the specified custom serializers are loaded during Manager.init like this: ClassLoader cl = manager.getContainer().getLoader().getClassLoader() Class.forName( customSerializerClassName, true, cl ) The msm jar is placed in tomcat's lib dir, the kryo serializer jar, required kryo jar (and friends) and all application related jars are living in the webapps WEB-INF/lib directory. This works, there's also a sample app on github ( https://github.com/magro/msm-sample-webapp ) with a runtime directory containing a tomcat installation and a sample webapp (linked in webapps, available after building the war). @Reinwald: I assume you're trying to get kryo custom serializers up and running, right? Have you placed kryo jars, msm-kryo-serializer jar and your custom serializer jar / classes in your WEB-INF/lib directory? Cheers, Martin Christopher Schultz-2 wrote: > > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Mark, > > On 1/19/2011 2:27 PM, Reinwald Warapen wrote: >> On 1/20/2011 12:47 AM, Mark Thomas wrote: >>> On 19/01/2011 19:17, Reinwald Warapen wrote: >>>> I am writing a serializer/deserializer functionality (used in my custom >>>> session manager that extends ManagerBase). When deserializing I get >>>> loads of java.lang.ClassNotFoundException: exceptions. All the classes >>>> for which the exceptions are thrown can be found in my >>>> webapp/WEB-INF/classes. How do I configure it such that the >>>> webapp/WEB-INF/classes are visible to the libs placed in Tomcat/lib.? >>> http://tomcat.apache.org/tomcat-6.0-doc/class-loader-howto.html >> I did go through this before posting here. Its mentioned "All unpacked >> classes and resources in |$CATALINA_HOME/lib|, as well as classes and >> resources in JAR files are made visible through this class loader". But >> theres no mention about the visibility of the webapp/WEB-INF/classes to >> the classes in |$CATALINA_HOME/lib.So is there no way to configure the >> same? > > Pretty much no. > > Tomcat can deserialize your webapp's sessions after a redeploy because > it uses the webapp's ClassLoader to resolve everything. In your case, > you have no way to get to the webapp's ClassLoader so you are pretty > much stuck. > > What kind of serialization/deserialization are you writing? Why is this > running at the Tomcat level instead of within your webapp? > > - -chris > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.10 (MingW32) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ > > iEYEARECAAYFAk03a0wACgkQ9CaO5/Lv0PBikgCfYuyPaY/XyqkiPJP7MtqVsSCW > PkYAmgP7lRbxvV7ilDeKTV4BJwQKEmui > =dkUe > -----END PGP SIGNATURE----- > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > > > -- View this message in context: http://old.nabble.com/Why-cant-the-the-classes-%28in-the-jars%29-places-in-Tomcat-lib--see-the-classes-from-the-webapp-WEB-INF-lib.-tp30713002p30717468.html Sent from the Tomcat - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org