|
From: Dana C. <dc...@wa...> - 2003-12-05 19:18:31
|
I'm trying to get Jetty running on an IBM iSeries machine, and am having = problems. I'm a senior Java developer, and I've been poking through the = Jetty source to get resolution but am currently stuck. The problem is that the Jetty HTTP Server doesn't seem to be able to inte= rpet the HTTP requests that are coming in. It's not getting as far as th= e application server, so I know it not my webapps that are giving me prob= lems. I am using the IBM 1.3.1 JVM. In Internet Explorer, my requests time out after a few minutes, and in Mo= zilla I get the following message "The connection to <server name>:7080 h= as terminated unexpectedly. Some data may have been transfered." In my stdout, I get this: 18:52:47.767 DEBUG =C3=A2PoolThread-9a(HttpConnection.java:881)05> readR= equest() ... 18:52:47.768 DEBUG =C3=A2PoolThread-9a(HttpConnection.java:807)04> java.= io.IOExcepti on: Bad Request: ?G=E2=98=BA=E2=99=A5 N =E2=96=BA=E2=98=BA ?=E2=99=A5 = ? '=E2=99=A0 @=E2=98=BB ?=E2=99=A6 ? 9 8 5 3 2 =E2=99=A6 =E2=99=A3= / =E2=96=AC =E2=80=BC E=C3=B3 18:52:50.356 DEBUG =C3=A2PoolThread-9a(HttpConnection.java:98)05> new Ht= tpConnection : Socket=C3=A2addr=3D10.200.13.230/10.200.13.230,port=3D2629,localport=3D= 7080a 18:52:50.358 DEBUG =C3=A2PoolThread-9a(HttpConnection.java:881)05> readR= equest() ... 18:52:50.359 DEBUG =C3=A2PoolThread-9a(HttpConnection.java:807)04> java.= io.IOExcepti on: Bad Request: ?G=E2=98=BA=E2=99=A5 N =E2=96=BA=E2=98=BA ?=E2=99=A5 = ? '=E2=99=A0 @=E2=98=BB ?=E2=99=A6 ? 9 8 5 3 2 =E2=99=A6 =E2=99=A3= / =E2=96=AC =E2=80=BC E=C3=B3 18:52:51.951 DEBUG =C3=A2PoolThread-9a(HttpConnection.java:98)05> new Ht= tpConnection : Socket=C3=A2addr=3D10.200.13.230/10.200.13.230,port=3D2630,localport=3D= 7080a 18:52:51.962 DEBUG =C3=A2PoolThread-9a(HttpConnection.java:881)05> readR= equest() ... 18:52:51.962 DEBUG =C3=A2PoolThread-9a(HttpConnection.java:807)04> java.= io.IOExcepti on: Bad Request: ?G=E2=98=BA=E2=99=A5 N =E2=96=BA=E2=98=BA ?=E2=99=A5 = ? '=E2=99=A0 @=E2=98=BB ?=E2=99=A6 ? 9 8 5 3 2 =E2=99=A6 =E2=99=A3= / =E2=96=AC =E2=80=BC E=C3=B3 Stdout on the as400 is written in god forsake EBCDIC, so I converted it s= o ascii via "dd conv=3Dascii". I'm starting Jetty with this startup script: export JAVA_HOME=3D/QIBM/ProdData/Java400/jdk13 export -s JETTY_HOME=3D/www/jetty export -s CLASSPATH=3D$JETTY_HOME/start.jar:$JETTY_HOME/stop.jar:$JETTY_H= OME/extra/lib/org.mortbay.jetty-jdk1.2.jar:$JETTY_HOME/lib/javax.servlet.= jar:$JETTY_HOME/ext/jasper-runtime.jar:$JETTY_HOME/ext/jasper-compiler.ja= r:$JETTY_HOME/ext/xercesImpl.jar:$JETTY_HOME/ext/xml-apis.jar:$JETTY_HOME= /ext/xmlParserAPIs.jar:$JETTY_HOME/extra/ext/log4j.jar: export -s QIBM_MULTI_THREADED=3DY cd /$JETTY_HOME $JAVA_HOME/bin/java -DDEBUG -DDEBUG_VERBOSE -cp $CLASSPATH org.mortbay.st= art.Main $JETTY_HOME/etc/jetty.xml>$JETTY_HOME/stdout.log 2>&1 I've attached my stdout.log file. Here's my jetty.xml: <?xml version=3D"1.0"?> <!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure 1.2//EN= " "http://jetty.mortbay.org/configure_1_2.dtd"> <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --> <!-- Configure the Jetty Server --> <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --> <Configure class=3D"org.mortbay.jetty.Server"> <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --> <!-- Configure the Request Listeners -= -> <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -= -> <!-- Add and configure a HTTP listener to port 7080 = --> <!-- The default port can be changed using: java -Djetty.port=3D80 = --> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -= -> <Call name=3D"addListener"> <Arg> <New class=3D"org.mortbay.http.SocketListener"> <Set name=3D"Port"><SystemProperty name=3D"jetty.port" default=3D= "7080"/></Set> <Set name=3D"MinThreads">10</Set> <Set name=3D"MaxThreads">100</Set> <Set name=3D"MaxIdleTimeMs">30000</Set> <Set name=3D"LowResourcePersistTimeMs">5000</Set> <Set name=3D"ConfidentialPort">8443</Set> <Set name=3D"IntegralPort">8443</Set> </New> </Arg> </Call> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -= -> <!-- Add a AJP13 listener on port 8009 -= -> <!-- This protocol can be used with mod_jk in apache, IIS etc. -= -> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -= -> <Call name=3D"addListener"> <Arg> <New class=3D"org.mortbay.http.ajp.AJP13Listener"> <Set name=3D"Port">8009</Set> <Set name=3D"MinThreads">5</Set> <Set name=3D"MaxThreads">20</Set> <Set name=3D"MaxIdleTimeMs">0</Set> <Set name=3D"confidentialPort">443</Set> </New> </Arg> </Call> <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --> <!-- Configure the Contexts -= -> <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -= -> <!-- Add a all web application within the webapps directory. -= -> <!-- + No virtual host specified -= -> <!-- + Look in the webapps directory relative to jetty.home or . -= -> <!-- + Use the webdefault.xml resource for the defaults descriptor -= -> <!-- + Upack the war file -= -> <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -= -> <Set name=3D"rootWebApp">root</Set> <Call name=3D"addWebApplications"> <Arg></Arg> <Arg><SystemProperty name=3D"jetty.home" default=3D"."/>/webapps/</A= rg> <Arg>org/mortbay/jetty/servlet/webdefault.xml</Arg> <Arg type=3D"boolean">true</Arg> </Call> <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --> <!-- Configure the Request Log -= -> <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --> <Set name=3D"RequestLog"> <New class=3D"org.mortbay.http.NCSARequestLog"> <Arg><SystemProperty name=3D"jetty.home" default=3D"."/>/logs/yyyy= _mm_dd.request.log</Arg> <Set name=3D"retainDays">90</Set> <Set name=3D"append">true</Set> <Set name=3D"extended">false</Set> <Set name=3D"buffered">false</Set> <Set name=3D"LogTimeZone">GMT</Set> </New> </Set> <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --> <!-- Configure the Other Server Options -= -> <!-- =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --> <Set name=3D"requestsPerGC">2000</Set> <Set name=3D"statsOn">false</Set> </Configure> If anyone could help me out I would be so grateful! Thanks guys! -Dana Cordes |