Jetty8 and JSP
Hi,
I've been trying to get JSP working on a Jetty8 installation on Wheezy,
with no luck so far. Is this even possible?
So far I've installed default-jre-headless, jetty8 and
libjetty8-extra-java, then edited /etc/default/jetty8 to set
JETTY_ARGS="OPTIONS=default,jsp". This leads me to a number of
exceptions that stop Jetty from starting up:
2013-06-07 17:31:50.440:WARN:oejd.WebAppDeployer:WebAppDeployer is
deprecated. Use WebAppProvider
2013-06-07 17:31:50.441:INFO:oejs.Server:jetty-8.1.3.v20120416
2013-06-07 17:31:50.579:WARN:oejw.WebAppContext:Failed startup of
context
o.e.j.w.WebAppContext{,file:/var/lib/jetty8/webapps/root/},file:/var/lib/jetty8/webapps/root/
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[...]
Caused by:
java.lang.NoClassDefFoundError: org/apache/tomcat/PeriodicEventListener
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
[...]
at
org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:424)
at
org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:377)
at org.eclipse.jetty.util.Loader.loadClass(Loader.java:92)
at org.eclipse.jetty.util.Loader.loadClass(Loader.java:71)
at
org.eclipse.jetty.webapp.StandardDescriptorProcessor.visitServlet(StandardDescriptorProcessor.java:264)
[...]
Caused by:
java.lang.ClassNotFoundException: org.apache.tomcat.PeriodicEventListener
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
[...]
And so on. Adding some symlinks to /usr/share/jetty8/lib/ext gets me a
little further:
test1 ~ # ls -l /usr/share/jetty8/lib/ext
total 0
lrwxrwxrwx 1 root root 34 Jun 7 17:34 org.apache.el.jar ->
../../../java/tomcat-jasper-el.jar
lrwxrwxrwx 1 root root 29 Jun 7 17:34 org.apache.juli.jar ->
../../../java/tomcat-juli.jar
lrwxrwxrwx 1 root root 28 Jun 7 17:35 org.apache.tomcat.api.jar ->
../../../java/tomcat-api.jar
I can now access Jetty to access plain .html pages, but loading a .jsp
page (just a copy of index.html for now) leads to:
java.lang.IllegalStateException: No org.apache.tomcat.InstanceManager
set in ServletContext
at
org.apache.jasper.runtime.InstanceManagerFactory.getInstanceManager(InstanceManagerFactory.java:35)
at
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:171)
[...]
What am I doing wrong?
Thanks,
Chris
PS: I'm not subscribed to debian-java, so please CC me.
--
Chris Boot
debian@bootc.net
GPG: 1DE8 6AB0 1897 A330 D973 D77C 50DD 5A29 FB09 9999
Reply to: