Folks,
I have been playing with Vinay's 'Sevak' Catalina wrapper. I have done some work to try to move it from Catalina 4.0.3 to 4.1.3beta to try to overcome a bug, but am seeing the same thing. Basically it looks like any attempt to mount servlets causes an NPE during initialization :
rethrown from
java.lang.NullPointerException
at java.util.Hashtable.put(Hashtable.java:385)
at org.apache.naming.ContextBindings.bindClassLoader(ContextBindings.java:312)
at org.apache.catalina.core.StandardContext.createNamingContext(StandardContext.java:3782)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3360)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:785)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:454)
at org.apache.avalon.apps.sevak.blocks.CatalinaSevakImpl.deploy(CatalinaSevakImpl.java:227)
at java.lang.reflect.Method.invoke(Native Method)
at org.apache.avalon.phoenix.components.application.BlockInvocationHandler.invoke(BlockInvocationHandler.java:91)
at $Proxy0.deploy(Unknown Source)
at org.apache.avalon.apps.sevak.demo.SevakTest.initialize(SevakTest.java:80)
at org.apache.avalon.framework.container.ContainerUtil.initialize(ContainerUtil.java:235)
I'll try to debug Catalina and work out what is happening. That is, unless someone else has experience of embedding Catalina. My complete guess is that it is to do with Class.forName(..) which is notorius for causing problems for 'advanced' classloader trees.
Also I made a couple of changes from Vinay's initial version (excellent work). The bundled webapps are taken from the downloaded catalina, rather than the webapps/ that were previously in Sevak's CVS. This was a fork of the root page anyway. Now it mounts ROOT and tomcat-docs, but does not do management, examples or webdav. Catalina barfs if you uncoment the sections in 'sevak-demo-config.xml'
Next on our list is to get Jo! and Jetty working from the same service abstractions.
Regards,
- Paul
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
