You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Martin White <ma...@equinox.co.nz> on 2007/09/03 05:53:07 UTC

Re: jk 1.2.14 connector connection problem

Just in case any other poor soul is trying to sort out such an error, thought
I'd post my discovery after 6 hours of hair pulling...!

The documentation I was following to set up the ISAPI redirector stated that
I should create the ISAPI filter on the Web Sites folder in IIS. I did this,
and all was well until I created a second website on my IIS server. I had
the Default Web Site set up already, and decided to create a temporary
'SiteDown' website to serve up an information page while the main site was
down and Tomcat being upgraded.

Once I restarted IIS, it seems that either IIS or the ISAPI filter, I'm not
sure which, decided that incoming requests picked up by the filter should be
forwarded to my SiteDown web site instead of (or possibly as well as) my
Default Web Site. Since I hadn't created the jakarta virtual directory in my
SiteDown website, this didn't work! My solution was to create the filter on
the Default Web Site and remove it from the Web Sites folder.

The key error message in the ISAPI redirect log file that indicates that
this is your problem is:
[/jakarta/isapi_redirect.dll] is not a servlet url.

Martin



Derrick Koes wrote:
> 
> I've run with this configuration elsewhere without error.  I'm not certain
> what the issue is.  I have this same problem without using the
> loadbalancer worker.  I can't even get to jkstatus.  Any help is greatly
> appreciated.
> 
> server.xml
> 
> <?xml version='1.0' encoding='utf-8'?>
> <Server>
>   <Listener
> className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
>   <Listener
> className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
>   <GlobalNamingResources>
>     <Environment name="simpleValue" type="java.lang.Integer" value="30"/>
>     <Resource auth="Container" description="User database that can be
> updated and saved" name="UserDatabase"
> type="org.apache.catalina.UserDatabase"/>
>     <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>
>   <Service name="Catalina">
>     <Connector URIEncoding="UTF-8" acceptCount="100"
> connectionTimeout="20000" disableUploadTimeout="true" port="8080"
> redirectPort="8443">
>     </Connector>
>     <Connector URIEncoding="UTF-8" port="8009" protocol="AJP/1.3"
> protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"
> disableUploadTimeout="true" maxProcessors="0" redirectPort="8443"
> debug="9">
>     </Connector>
>     <Engine defaultHost="localhost" jvmRoute="djk" name="Catalina">
>       <Host appBase="webapps" name="localhost">
>         <Logger className="org.apache.catalina.logger.FileLogger"
> prefix="localhost_log." suffix=".txt" timestamp="true"/>
>       </Host>
>       <Logger className="org.apache.catalina.logger.FileLogger"
> prefix="catalina_log." suffix=".txt" timestamp="true"/>
>       <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
>     </Engine>
>   </Service>
> </Server>
> 
> workers.properties
> 
> # +++++++++++++++++++++++++++ BEGIN CONFIGURATION
> ++++++++++++++++++++++++++
> # 
> # http://jakarta.apache.org/tomcat/connectors-doc/config/workers.html
> #
> # The following configuration file describes a JK installation
> # which does round-robin, session-aware load balancing across all
> # defined workers.  Having a single worker will balance the load on
> # that worker.  This is the default, even if you don't spell it out,
> # but it is spelled out here for clarity.  @TODO indicates a 
> # configuration must be made here.  @OPTIONAL indicates an optional
> # customization may be made.
> #
> # workers.properties -
> #
> #   Copyright 1999-2004 The Apache Software Foundation
> # 
> #   Licensed under the Apache License, Version 2.0 (the "License");
> #   you may not use this file except in compliance with the License.
> #   You may obtain a copy of the License at
> # 
> #       http://www.apache.org/licenses/LICENSE-2.0
> # 
> #   Unless required by applicable law or agreed to in writing, software
> #   distributed under the License is distributed on an "AS IS" BASIS,
> #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> #   See the License for the specific language governing permissions and
> #   limitations under the License.
> #
> #
> # This file provides jk derived plugins with the needed information to
> # connect to the different tomcat workers.  Note that the distributed
> # version of this file requires modification before it is usable by a
> # plugin.
> #
> # As a general note, the characters $( and ) are used internally to define
> # macros. Do not use them in your own configuration!!!
> #
> # Whenever you see a set of lines such as:
> # x=value
> # y=$(x)\something
> #
> # the final value for y will be value\something
> #
> # Normaly all you will need to do is un-comment and modify the first three
> # properties, i.e. workers.tomcat_home, workers.java_home and ps.
> # Most of the configuration is derived from these.
> #
> # When you are done updating workers.tomcat_home, workers.java_home and ps
> # you should have 3 workers configured:
> #
> # - An ajp12 worker that connects to localhost:8007
> # - An ajp13 worker that connects to localhost:8009
> # - A jni inprocess worker.
> # - A load balancer worker
> #
> # However by default the plugins will only use the ajp12 worker. To have
> # the plugins use other workers you should modify the worker.list
> property.
> #
> 
> #
> # You should configure your environment slash... ps=\ on NT and / on UNIX
> # and maybe something different elsewhere.
> #
> ps=\
> 
> #
> #------ ADVANCED MODE ------------------------------------------------
> #---------------------------------------------------------------------
> #
> 
> #
> #------ DEFAULT worket list ------------------------------------------
> #---------------------------------------------------------------------
> #
> #
> # The workers that your plugins should create and work with
> # The name of the worker can contain only the alphanumeric characters
> # [a-z][A-Z][0-9] and is case insensitive.
> #
> # Add 'inprocess' if you want JNI connector 
> worker.list=loadbalancer,jkstatus
> 
> #
> #------ DEFAULT ajp13 WORKER DEFINITION ------------------------------
> #---------------------------------------------------------------------
> #
> 
> #
> # Defining a worker named ajp13 and of type ajp13
> # Note that the name and the type do not have to match.
> #
> worker.djk.port=8009
> worker.djk.host=sccp1
> worker.djk.type=ajp13
> #
> # Specifies the load balance factor when used with
> # a load balancing worker.
> # Note:
> #  ----> lbfactor must be > 0
> #  ----> Low lbfactor means less work done by the worker.
> worker.djk.lbfactor=1
> 
> #
> # Specify the size of the open connection cache.
> # Cachesize property is useful when you're using JK in multi threaded
> # web servers such as Apache 2.0 (worker), IIS and Netscape.
> # The cachesize property should reflect the number of threads per
> # child process.
> # 20 is a guess for IIS 6.0
> # Load testing should be done to determine what this number should be.
> worker.djk.cachesize=100
> worker.djk.cache_timeout=600
> 
> #
> #------ DEFAULT LOAD BALANCER WORKER DEFINITION ----------------------
> #---------------------------------------------------------------------
> #
> 
> #
> # The loadbalancer (type lb) workers perform wighted round-robin
> # load balancing with sticky sessions.
> # Note:
> #  ----> If a worker dies, the load balancer will check its state
> #        once in a while. Until then all work is redirected to peer
> #        workers.
> # These workers should not appear in the worker.list property!
> worker.loadbalancer.type=lb
> worker.loadbalancer.balance_workers=djk
> worker.loadbalancer.sticky_session=1
> worker.loadbalancer.method=T
> 
> worker.jkstatus.type=status
> 
> uriworkermap.properties
> 
> #
> #   Copyright 1999-2004 The Apache Software Foundation
> # 
> #   Licensed under the Apache License, Version 2.0 (the "License");
> #   you may not use this file except in compliance with the License.
> #   You may obtain a copy of the License at
> # 
> #       http://www.apache.org/licenses/LICENSE-2.0
> # 
> #   Unless required by applicable law or agreed to in writing, software
> #   distributed under the License is distributed on an "AS IS" BASIS,
> #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> #   See the License for the specific language governing permissions and
> #   limitations under the License.
> #
> 
> /customer=loadbalancer
> /customer/*=loadbalancer
> /jkstatus=jkstatus
> /jkstatus/*=jkstatus
> /admin=loadbalancer
> /admin/*=loadbalancer
> 
> 
> 
> jk 1.2.14 log
> 
> 
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_shm.c (91): Initialized
> shared memory size=66560 free=65536 addr=0x14e9e18
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (1133):
> Using registry.
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (1136):
> Using log file E:\files\jk-logs\isapi_filter.log.
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (1137):
> Using log level 1.
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (1138):
> Using extension uri /jakarta/isapi_redirect.dll.
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (1139):
> Using worker file C:\jk-connector\conf\workers.properties.
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (1140):
> Using worker mount file C:\jk-connector\conf\uriworkermap.properties.
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (1142):
> Using uri select 0.
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (268):
> exact rule /customer=loadbalancer was added
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (260):
> wildchar rule /customer/*=loadbalancer was added
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (268):
> exact rule /jkstatus=jkstatus was added
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (260):
> wildchar rule /jkstatus/*=jkstatus was added
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (268):
> exact rule /admin=loadbalancer was added
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (260):
> wildchar rule /admin/*=loadbalancer was added
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_worker.c (229): creating
> worker loadbalancer
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_worker.c (135): about to
> create instance loadbalancer of lb
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_worker.c (148): about to
> validate and init loadbalancer
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_worker.c (135): about to
> create instance djk of ajp13
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_worker.c (148): about to
> validate and init djk
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_ajp_common.c (1801):
> worker djk contact is 'sccp1:8009'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_ajp_common.c (1890):
> setting socket keepalive to 0
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_ajp_common.c (1929):
> setting socket timeout to -1
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_ajp_common.c (1933):
> setting socket buffer size to 0
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_ajp_common.c (1937):
> setting connection recycle timeout to 0
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_ajp_common.c (1941):
> setting cache timeout to 600
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_ajp_common.c (1945):
> setting connect timeout to 0
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_ajp_common.c (1949):
> setting reply timeout to 0
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_ajp_common.c (1953):
> setting prepost timeout to 0
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_ajp_common.c (1957):
> setting recovery opts to 0
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_ajp_common.c (1961):
> setting number of retries to 3
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_ajp_common.c (1838):
> setting connection cache size to 100
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_lb_worker.c (804):
> Balanced worker 0 has name djk in domain 
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_worker.c (241): removing
> old loadbalancer worker
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_worker.c (229): creating
> worker jkstatus
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_worker.c (135): about to
> create instance jkstatus of status
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_worker.c (148): about to
> validate and init jkstatus
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_worker.c (241): removing
> old jkstatus worker
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (696):
> Detected IIS >= 5.0
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (747):
> Filter started
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (813):
> Virtual Host redirection of /sccp1/customer
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (442):
> Attempting to map URI '/sccp1/customer' from 6 maps
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/jkstatus/*'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/customer/*'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/customer'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/jkstatus'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/admin/*'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/admin'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (820):
> Default redirection of /customer
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (442):
> Attempting to map URI '/customer' from 6 maps
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/jkstatus/*'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/customer/*'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/customer'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (479):
> Found an exact match loadbalancer -> /customer
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (830):
> check if [/customer] is points to the web-inf directory
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (848):
> [/customer] is a servlet url - should redirect to loadbalancer
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (747):
> Filter started
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (813):
> Virtual Host redirection of /sccp1/jakarta/isapi_redirect.dll
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (442):
> Attempting to map URI '/sccp1/jakarta/isapi_redirect.dll' from 6 maps
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/jkstatus/*'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/customer/*'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/customer'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/jkstatus'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/admin/*'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/admin'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (820):
> Default redirection of /jakarta/isapi_redirect.dll
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (442):
> Attempting to map URI '/jakarta/isapi_redirect.dll' from 6 maps
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/jkstatus/*'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/customer/*'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/customer'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/jkstatus'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/admin/*'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_uri_worker_map.c (454):
> Attempting to map context URI '/admin'
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (830):
> check if [/jakarta/isapi_redirect.dll] is points to the web-inf directory
> [Thu May 26 13:41:07 2005] [0252:1968] [debug] jk_isapi_plugin.c (927):
> [/jakarta/isapi_redirect.dll] is not a servlet url
> [Thu May 26 13:41:09 2005] [0252:2608] [debug] jk_worker.c (297):
> Maintaining worker loadbalancer
> [Thu May 26 13:41:09 2005] [0252:2608] [debug] jk_ajp_common.c (2186):
> recycled 0 sockets in 0 seconds
> [Thu May 26 13:41:09 2005] [0252:2608] [debug] jk_worker.c (105): did not
> find a worker ajp13
> [Thu May 26 13:41:09 2005] [0252:2608] [debug] jk_isapi_plugin.c (1004):
> could not get a worker for name ajp13
> [Thu May 26 13:41:09 2005] [0252:2608] [error] jk_isapi_plugin.c (1029):
> could not get a worker for name ajp13
> 
> 

-- 
View this message in context: http://www.nabble.com/jk-1.2.14-connector-connection-problem-tf31229.html#a12456036
Sent from the Tomcat - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org