hi I get the exact same thing with the same configuration and I have been trawling the news groups and web for answers but to no avail, so I am with you on getting a definitive answer on this log file output.
Matt ----- Original Message ----- From: "Michael Sanders" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Monday, April 19, 2004 10:09 AM Subject: ajp13.service() ajpGetReply recoverable error 3 > I'm using Apache 2.0.49, Tomcat 4.1.29, and mod_jk2 2.04 on Windows > 2000 Server. I'm getting errors in my Apache & Tomcat logs (shown > below), BUT I do not get any errors shown in the browser and my servlet > appears to be functioning correctly. I guess the fact that it says > "recoverable error" means that it recovers which is why users do not > see any errors. However I suspect it does mean that the system is > working sub-optimally. I'd be grateful if someone could give me a clue > as to the meaning of the errors & any pointers on fixing the problem. > > Many thanks, > Michael Sanders > > Apache 2.0.49 error log > ======================= > [Mon Apr 19 15:48:53 2004] [error] ajp13.service() ajpGetReply > recoverable error 3 > [Mon Apr 19 15:48:53 2004] [error] ajp13.service() ajpGetReply > recoverable error 3 > [Mon Apr 19 15:48:53 2004] [error] ajp13.service() Error forwarding > ajp13:localhost:8009 1 0 > [Mon Apr 19 15:48:53 2004] [error] mod_jk2.handler() Error connecting > to tomcat 3, status 200 > > > Tomcat 4.1.29 stderr > ==================== > [ERROR] JkCoyoteHandler - -Error in action code > <java.net.SocketException: Connection aborted by peer: socket write > error>java.net.SocketException: Connection aborted by peer: socket > write error > at java.net.SocketOutputStream.socketWrite(Native Method) > at java.net.SocketOutputStream.write(SocketOutputStream.java:91) > at org.apache.jk.common.ChannelSocket.send(ChannelSocket.java:457) > at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:654) > at > org.apache.jk.server.JkCoyoteHandler.action(JkCoyoteHandler.java:435) > at org.apache.coyote.Response.action(Response.java:222) > at org.apache.coyote.Response.finish(Response.java:343) > at > org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:314) > at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:387) > at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:673) > at > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:615) > at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:786) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav a:666) > at java.lang.Thread.run(Thread.java:479) > > workers2.properties > =================== > #define the shared memory file > [shm] > file=C:/Program Files/Apache Group/Apache2/jk2.shm > > # Define the communication channel > [channel.socket:localhost:8009] > tomcatId=localhost:8009 > > [ajp13:localhost:8009] > channel=channel.socket:localhost:8009 > > [uri:/servlet/*] > worker=ajp13:localhost:8009 > > server.xml > ========== > <Server port="8005" shutdown="SHUTDOWN" debug="0"> > > > <!-- Uncomment these entries to enable JMX MBeans support --> > <Listener > className="org.apache.catalina.mbeans.ServerLifecycleListener" > debug="0"/> > <Listener > className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" > debug="0"/> > > <!-- Global JNDI resources --> > <GlobalNamingResources> > > <!-- Test entry for demonstration purposes --> > <Environment name="simpleValue" type="java.lang.Integer" > value="30"/> > > <!-- Editable user database that can also be used by > UserDatabaseRealm to authenticate users --> > <Resource name="UserDatabase" auth="Container" > type="org.apache.catalina.UserDatabase" > description="User database that can be updated and saved"> > </Resource> > <ResourceParams name="UserDatabase"> > <parameter> > <name>factory</name> > > <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value> > </parameter> > <parameter> > <name>pathname</name> > <value>conf/tomcat-users.xml</value> > </parameter> > </ResourceParams> > > </GlobalNamingResources> > > > <!-- Define the Tomcat Stand-Alone Service --> > <Service name="Tomcat-Standalone"> > > <!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8080 --> > <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" > port="8080" minProcessors="5" maxProcessors="75" > enableLookups="true" redirectPort="8443" > acceptCount="100" debug="0" connectionTimeout="20000" > useURIValidationHack="false" disableUploadTimeout="true" > /> > > <!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 --> > <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" > port="8009" minProcessors="5" maxProcessors="100" > enableLookups="true" redirectPort="8443" > acceptCount="100" debug="0" connectionTimeout="300000" > useURIValidationHack="false" > > protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/> > > <!-- Define the top level container in our container hierarchy --> > <Engine name="Standalone" defaultHost="localhost" debug="0"> > > <Logger className="org.apache.catalina.logger.FileLogger" > directory="D:/logfiles/Tomcat" prefix="tomcat_." > suffix=".log" > timestamp="true"/> > > <Realm className="org.apache.catalina.realm.UserDatabaseRealm" > debug="0" resourceName="UserDatabase"/> > > > <!-- Define the default virtual host --> > <Host name="localhost" debug="0" appBase="webapps" > unpackWARs="true" autoDeploy="true"> > > directory.--> > <Logger className="org.apache.catalina.logger.FileLogger" > directory="D:/logfiles/Tomcat" prefix="tomcat_" > suffix=".log" > timestamp="true"/> > > <!-- Tomcat Root Context --> > <Context path="" docBase="ROOT" debug="0" > swallowOutput="true"/> > > </Host> > > </Engine> > > </Service> > > </Server> > > > jk2.properties > ============== > ## THIS FILE MAY BE OVERRIDEN AT RUNTIME. MAKE SURE TOMCAT IS STOPED > ## WHEN YOU EDIT THE FILE. > > ## COMMENTS WILL BE _LOST_ > > ## DOCUMENTATION OF THE FORMAT IN JkMain javadoc. > > # Set the desired handler list > # handler.list=apr,request,channelJni > # > # Override the default port for the socketChannel > # channelSocket.port=8019 > # Default: > # channelUnix.file=${jkHome}/work/jk2.socket > # Just to check if the the config is working > # shm.file=${jkHome}/work/jk2.shm > > # In order to enable jni use any channelJni directive > # channelJni.disabled = 0 > # And one of the following directives: > > # apr.jniModeSo=/opt/apache2/modules/mod_jk2.so > > # If set to inprocess the mod_jk2 will Register natives itself > # This will enable the starting of the Tomcat from mod_jk2 > # apr.jniModeSo=inprocess > > > > > > > Chat instantly with your online friends? Get the > FREE Yahoo! Messenger http://uk.messenger.yahoo.com/ > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]