tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Sanders <michael_sand...@yahoo.com>
Subject ajp13.service() ajpGetReply recoverable error 3
Date Mon, 19 Apr 2004 15:09:31 GMT
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.java: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: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


Mime
View raw message