[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: