Hi All, Well after going back to Yahoo! I found a page that at least got Tomcat 4.1.29 talking to Apache 2 though mod_jk2 YES!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! :))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) )))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
http://www.kawao.com/java/docs/mod_jk.html (note the mod_jk2 is further down the page) Its not all in English but the critical parts are - look at the section titled httpd.conf file and the way they set-up the context mapping to /examples (It would be great if someone would translate as I couldn't find a link for an English version) Still getting the jk2_init() error but I can now move on. I will post a complete HOWTO in the next week Cheers, George ----- Original Message ----- From: "George Shafik" <[EMAIL PROTECTED]> To: "Nikola Milutinovic" <[EMAIL PROTECTED]>; "Peter O'Reilly" <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>; "Mark Eggers" <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]> Cc: "Tomcat Users List" <[EMAIL PROTECTED]> Sent: Saturday, January 10, 2004 2:03 PM Subject: Re: jk2_init() Can't find child xxxx in none of the 1024 scoreboard slots > Hi Nikola and any one else that can help, > > I'm still stuck on jk2_init() error - > even though many developers out there reckon this is not an issue I still > find it concerning that Apache2 is trying to find a Child process and > reports it as an [error]. > > [Sat Jan 10 13:15:08 2004] [notice] mod_jk.post_config() first invocation > [Sat Jan 10 13:15:08 2004] [notice] mod_jk.post_config() second invocation > [Sat Jan 10 13:15:08 2004] [error] jk2_init() Can't find child 2089 in none > of the 256 scoreboard slots > [Sat Jan 10 13:15:08 2004] [error] jk2_init() Can't find child 2090 in none > of the 256 scoreboard slots > [Sat Jan 10 13:15:08 2004] [error] jk2_init() Can't find child 2091 in none > of the 256 scoreboard slots > [Sat Jan 10 13:15:08 2004] [error] jk2_init() Can't find child 2092 in none > of the 256 scoreboard slots > [Sat Jan 10 13:15:08 2004] [error] jk2_init() Can't find child 2093 in none > of the 256 scoreboard slots > [Sat Jan 10 13:15:08 2004] [notice] Apache/2.0.48 (Unix) mod_jk2/2.0.3-dev > configured -- resuming normal operations > [Sat Jan 10 13:15:24 2004] [error] [client 192.168.0.100] File does not > exist: /usr/local/apache2/htdocs/examples > [Sat Jan 10 13:15:24 2004] [error] jk2_init() Can't find child 2095 in none > of the 256 scoreboard slots > [Sat Jan 10 13:15:30 2004] [error] [client 192.168.0.100] File does not > exist: /usr/local/apache2/htdocs/examples > [Sat Jan 10 13:15:33 2004] [error] [client 192.168.0.100] File does not > exist: /usr/local/apache2/htdocs/examples > [Sat Jan 10 13:15:37 2004] [error] [client 192.168.0.100] File does not > exist: /usr/local/apache2/htdocs/examples > [Sat Jan 10 13:15:44 2004] [error] [client 192.168.0.100] File does not > exist: /usr/local/apache2/htdocs/examples, referer: > http://sslaptop.gsss.net/examples/ > [Sat Jan 10 13:15:48 2004] [error] [client 192.168.0.100] File does not > exist: /usr/local/apache2/htdocs/examples, referer: > http://sslaptop.gsss.net/examples/ > [Sat Jan 10 13:16:03 2004] [error] [client 192.168.0.100] File does not > exist: /usr/local/apache2/htdocs/jkstatus > [Sat Jan 10 13:15:08 2004] ( info ) [jk_logger_file.c (224)] Level WARN 0 > [Sat Jan 10 13:15:08 2004] ( info ) [jk_logger_file.c (224)] Level WARN 0 > [Sat Jan 10 13:15:08 2004] ( info ) [jk_logger_file.c (224)] Level WARN 0 > [Sat Jan 10 13:15:08 2004] ( info ) [jk_logger_file.c (224)] Level WARN 0 > [Sat Jan 10 13:15:08 2004] ( info ) [jk_logger_file.c (224)] Level WARN 0 > [Sat Jan 10 13:15:08 2004] ( info ) [jk_logger_file.c (224)] Level WARN 0 > [Sat Jan 10 13:22:47 2004] [notice] caught SIGTERM, shutting down > [Sat Jan 10 13:15:08 2004] ( info ) [jk_logger_file.c (224)] Level WARN 0 > > Anyway I've managed to rebuild all mod_jk2.so and all relative jar files > with no issues with the org.apache.coyote.tomcat4.CoyoteConnector. > Unfortunately I still can't talk to Tomcat directly from Apache via the > standard socket method. > > Following are: > snippet httpd.con > snippet server.xml > workers2.properties > jk2.properties > > Any help would be greatly appreciated as I've spent far too much time on > this with no real results is very frustrating. > Apologies for any previous stupid questions as I'm now unfortunately up to > speed with using mod_jk2, Apache2 and Tomcat 4.1.29 - just an aside this is > far too hard it should be made simpler as many of us out here don't want to > become C and Web Servlet Container Gurus. Also any reference to binaries is > really bytecode that's the price you pay when your developing across > various platforms and languages. > > If I'm able to get things working I will publish a HOWTO Apache2.0.48 > Tomcat4.1.29 jakarta-tomcat-connectors-4.1.29 for Linux Red Hat 9. This is > my way of saying thank you to all concerned. > > ********* snippet httpd.con ******** > LoadModule jk2_module modules/mod_jk2.so > > <IfModule mod_jk2.c> > JkSet config:file > "/usr/local/jakarta-tomcat-4.1.29/conf/workers2.properties" > </IfModule> > <Location "/examples/*"> > JkUriSet worker ajp13:sslaptop.gsss.net:8001 > </Location> > <Location "/jkstatus/*"> > JkUriSet worker ajp13:sslaptop.gsss.net:8001 > </Location> > ********* snippet httpd.con ******** > > > > ******** snippet server.xml ********* > <!-- 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" /> > <!-- Note : To disable connection timeouts, set connectionTimeout value > to -1 --> > > <!-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 --> > <!-- > <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" > port="8443" minProcessors="5" maxProcessors="75" > enableLookups="true" > acceptCount="100" debug="0" scheme="https" secure="true" > useURIValidationHack="false" disableUploadTimeout="true"> > <Factory > className="org.apache.coyote.tomcat4.CoyoteServerSocketFactory" > clientAuth="false" protocol="TLS" /> > </Connector> > --> > > <!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8001 --> > <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" > port="8001" minProcessors="5" maxProcessors="75" > enableLookups="true" redirectPort="8443" > acceptCount="10" debug="0" connectionTimeout="20000" > useURIValidationHack="false" > > protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/> > > <!-- Define an AJP 1.3 Connector on port 8009 --> > <!-- > <Connector className="org.apache.ajp.tomcat4.Ajp13Connector" > port="8009" minProcessors="5" maxProcessors="75" > acceptCount="10" debug="0"/> > --> > > <!-- Define a Proxied HTTP/1.1 Connector on port 8082 --> > <!-- See proxy documentation for more information about using this. --> > <!-- > <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" > port="8082" minProcessors="5" maxProcessors="75" > enableLookups="true" > acceptCount="100" debug="0" connectionTimeout="20000" > proxyPort="80" useURIValidationHack="false" > disableUploadTimeout="true" /> > --> > > <!-- Define a non-SSL legacy HTTP/1.1 Test Connector on port 8083 --> > <!-- > <Connector className="org.apache.catalina.connector.http.HttpConnector" > port="8083" minProcessors="5" maxProcessors="75" > enableLookups="true" redirectPort="8443" > acceptCount="10" debug="0" /> > --> > > <!-- Define a non-SSL HTTP/1.0 Test Connector on port 8084 --> > <!-- > <Connector > className="org.apache.catalina.connector.http10.HttpConnector" > port="8084" minProcessors="5" maxProcessors="75" > enableLookups="true" redirectPort="8443" > acceptCount="10" debug="0" /> > --> > ******** snippet server.xml ********* > > ******** workers2.properties ********* > [logger] > level=WARN > #INFO > > #/web_ci/ > [config:] > file=/usr/local/jakarta-tomcat-4.1.29/conf/workers2.properties > debug=0 > debugEnv=0 > > [uriMap:] > info=Maps the requests. Options: debug > debug=0 > > # Alternate file logger > [logger.file:0] > level=WARN > file=/usr/local/jakarta-tomcat-4.1.29/logs/jk2.log > > # Cache for activity > # Must point to a writeable path > [shm:] > info=Scoreboard. Required for reconfiguration and status with multiprocess > servers > file=/usr/local/jakarta-tomcat-4.1.29/logs/jk2.shm > size=1000000 > debug=0 > disabled=0 > > [workerEnv:] > info=Global server options > timing=1 > debug=99 > # Default Native Logger (apache2 or win32 ) > # can be overriden to a file logger, useful > # when tracing win32 related issues > logger=logger.file:0 > > # Communication channel to use > [channel.socket:sslaptop.gsss.net:8001] > info=Ajp13 forwarding over socket > debug=0 > tomcatId=sslaptop.gsss.net:8001 > > # Connector as in conf/server.xml > [ajp13:sslaptop.gsss.net:8001] > channel=channel.socket:sslaptop.gsss.net:8001 > > # Tomcat load balancing > [lb:lb] > info=Default load balancer. > debug=0 > > [status:status] > info=Status worker, displays runtime informations > > # Monitor for requests and config http://sslaptop.gsss.net:8057/jkstatus > [uri:/jkstatus/*] > info=Display status information and checks the config file for changes. > worker=ajp13:sslaptop.gsss.net:8001 > context=/jkstatus > group=status:status > tomcatId=sslaptop.gsss.net:8001 > > [uri:/examples/*] > info=Display status information and checks the config file for changes. > worker=ajp13:sslaptop.gsss.net:8001 > context=/examples > group=status:status > tomcatId=sslaptop.gsss.net:8001 > ******** workers2.properties ********* > > > ********* jk2.properties ************ > # list of needed handlers. > handler.list=apr,request,channelJni > > # Dynamic library needs to be defined only if Tomcat is used > # out of process > # apr.NativeSo=/usr/local/apache2/modules/libjkjni.so > # Or you can use the mod_jk2 directly > apr.jniModeSo=/usr/local/apache2/modules/mod_jk2.so > > # If you wish to start the Tomcat from inside web server then > # you don't need any above directive. Here is shown the default > # value for the apr that you can ommit > # apr.jniModeSo=inprocess > ********* jk2.properties ************ > > Kind Regards, > George Shafik > > > In completing one discovery we never fail to get an imperfect knowledge of > others of which we could have no idea before, so that we cannot solve one > doubt without creating several new ones. > -Joseph Priestly, 1786 > > > > > > > > > > > > > > > > ----- Original Message ----- > From: "Nikola Milutinovic" <[EMAIL PROTECTED]> > To: "Tomcat Users List" <[EMAIL PROTECTED]> > Sent: Sunday, January 04, 2004 11:01 PM > Subject: Re: jk2_init() Can't find child xxxx in none of the 1024 scoreboard > slots > > > > Subject: Fw: jk2_init() Can't find child xxxx in none of the 1024 > scoreboard > > slots > > > > > > > Hi Peter, > > > > > > I'm using Apache 2.0.48, Tomcat 4.1.29, Jakarta-Tomcat-Connectors > 4.1.29. > > > I'm hoping the problem it is not the mod_jk2.so module as I went to > great > > > trouble in order to generate it on my RH9 Linux Kernal Version 2.4.20-8 > > > platform. I had to recompile apr, apr-util code and only "ant native" > > > managed to build mod_jk2.so > > > > > ### error.log file in Apache2.0.48 log > > > ########################################### > > > [Sat Jan 03 23:01:48 2004] [error] jk2_init() Can't find child 7398 in > > none > > > of the 256 scoreboard slots > > > [Sat Jan 03 23:01:48 2004] [error] jk2_init() Can't find child 7399 in > > none > > > of the 256 scoreboard slots > > > [Sat Jan 03 23:01:48 2004] [error] jk2_init() Can't find child 7400 in > > none > > > of the 256 scoreboard slots > > > [Sat Jan 03 23:01:48 2004] [error] jk2_init() Can't find child 7402 in > > none > > > of the 256 scoreboard slots > > > [Sat Jan 03 23:01:48 2004] [notice] Apache/2.0.48 (Unix) > mod_jk2/2.0.3-dev > > > configured -- resuming normal operations > > > > These are mostly harmless messages. The only way I found to avoid them was > a > > rather long one. > > > > In order for Apache + mod_jk2 to find neighbour children is to configure > > shared memory for mod_jk2. And it must be configured on both Apache and > > Tomcat side. If you drop Tomcat side, then it will complain. :-) > > > > For shared memory in Coyote-jk2 handler, you need to build jkjni.so (you > may > > screem in agony :-)). JK-JNI gives you "Java Native Interface" > > functionality, which includes UNIX SHM and UNIX file sockets. > > > > In order for jkjni.so to function correctly, it must have an environment > > variable "serverRoot" defined on the process level, or it will not be able > > to locate workers2.properties (it is in Apache's config dir). To be > honest, > > jkjni.so was designed for another purpose - running Tomcat from within > > Apache process (in-process). This environment variable is provided by > > Apache. All of us who wish to run a standalone Tomcat and still use > jkjni.so > > must emulate this. The only way I found to do that was to place > > > > export serverRoot=/etc/httpd/2.0 > > > > in Tomcat's config/startup scripts. Like I said - it is long one. > > > > > [Sun Jan 04 12:08:37 2004] [notice] caught SIGTERM, shutting down > > > > Normal shutdown, I'd say. > > > > > ####################### jk2.prorperties ########################### > > > ## 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 > > > > Why are you using "channelJni"? > > > > You could use "apr,request,channelSocket" and drop JNI completely. Take > look > > at Tomcats docs and JK2 section. > > > > > ########################## workers.properties #################### > > > worker.list=ajp13 > > > worker.ajp13.port=8009 > > > worker.ajp13.host=localhost > > > worker.ajp13.type=ajp13 > > > ############################################################ > > > > Why are you using "workers.properties"? It is for mod_jk. For mod_jk2 you > > must use "worker2.properties". > > > > Consult docs at http://jakarta.apache.org -> Tomcat -> Documentation. > > > > Nix. > > > > > > --------------------------------------------------------------------- > > 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] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]