I am trying to connect Tomcat 7.0 and Apache Server 2.2 using Windows 7.0. I 
created a .jsp file to test if my setup was correct under "C:\Program Files 
(x86)\Apache Software Foundation\Tomcat 7.0\webapps\sitepoint\count.jsp". I can 
successfully load the count.jsp file by entering 
http://localhost:8080/sitepoint/count.jsp into Google Chrome, however when I 
enter http://localhost/sitepoint/count.jsp into Chrome I get an "Opps! This 
link appears to be broken." message. Therefore it appears to be an error in my 
configurations. Unfortunately I'm puzzled as to the problem and have been 
trying to look for a solution for the past 2 days without any luck. Here are 
the details:
Platform: Windows 7.0Tomcat: 7.0Apache Server: 2.2JDK: C:\Program Files 
(x86)\Java\jdk1.6.0_17Tomcat: C:\Program Files (x86)\Apache Software 
Foundation\Tomcat 7.0Apache: C:\Program Files (x86)\Apache Software 
Foundation\Apache2.2
This is the process I went through.1. Installed Apache Server and Tomcat2. 
Downloaded the Apache Connector binaries: mod_jk-1.2.31-httpd-2.2.3.so. Renamed 
this to mod_jk.so and put it in the modules directory of Apache2.2.3. 
Downloaded the source files for the same connector and extracted the 
workers.properties file and placed that into the conf directory of Apache2.2. I 
left this file unchanged, not sure if I am meant to alter it.4. I then altered 
the httpd.conf configurations file inside the conf directory of Apache2.2 and 
added the following lines (not sure if /easywayserver/ should be used for my 
example I described earlier) :
        LoadModule jk_module modules/mod_jk.so

        JkWorkersFile conf/workers.properties

        JkLogFile "logs/mod_jk.log"

        JkLogLevel error

        JkMount /easywayserver loadbalancer

        JkMount /easywayserver/* loadbalancer
5. Restarted Apache server.
Here is a snipper of my log modjk.log
[Fri Mar 04
02:19:51.436 2011] [2276:6344] [info] jk_handler::mod_jk.c (2635): Could not
find a worker for worker name=loadbalancer

[Fri Mar 04
02:19:55.658 2011] [2368:3752] [info] init_jk::mod_jk.c (3198): mod_jk/1.2.31
(1026297) initialized

[Fri Mar 04
02:19:55.658 2011] [2368:3752] [error] uri_worker_map_ext::jk_uri_worker_map.c
(506): Could not find worker with name 'loadbalancer' in uri map post
processing.

[Fri Mar 04
02:19:55.658 2011] [2368:3752] [error] uri_worker_map_ext::jk_uri_worker_map.c
(506): Could not find worker with name 'loadbalancer' in uri map post
processing.

[Fri Mar 04
02:19:55.737 2011] [5964:6660] [info] init_jk::mod_jk.c (3198): mod_jk/1.2.31
(1026297) initialized

[Fri Mar 04
02:19:55.737 2011] [5964:6660] [error] uri_worker_map_ext::jk_uri_worker_map.c
(506): Could not find worker with name 'loadbalancer' in uri map post
processing.

[Fri Mar 04
02:19:55.737 2011] [5964:6660] [error] uri_worker_map_ext::jk_uri_worker_map.c
(506): Could not find worker with name 'loadbalancer' in uri map post
processing.

[Fri Mar 04
02:19:55.782 2011] [5964:6660] [info] init_jk::mod_jk.c (3198): mod_jk/1.2.31
(1026297) initialized

[Fri Mar 04
02:19:55.782 2011] [5964:6660] [error] uri_worker_map_ext::jk_uri_worker_map.c
(506): Could not find worker with name 'loadbalancer' in uri map post
processing.

[Fri Mar 04
02:19:55.782 2011] [5964:6660] [error] uri_worker_map_ext::jk_uri_worker_map.c
(506): Could not find worker with name 'loadbalancer' in uri map post
processing.
Here is the workers.properties file
===Start of workers.properties==========================
# Licensed to the Apache Software Foundation (ASF) under one or more# 
contributor license agreements.  See the NOTICE file distributed with# this 
work for additional information regarding copyright ownership.# The ASF 
licenses this file to You 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.
# Note that the distributed version of this file requires modification# before 
it is usable.## Reference documentation: 
http://tomcat.apache.org/connectors-doc/reference/workers.html## 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
# Define two status worker:# - jk-status for read-only use# - jk-manager for 
read/write 
useworker.list=jk-statusworker.jk-status.type=statusworker.jk-status.read_only=true
worker.list=jk-managerworker.jk-manager.type=status
# We define a load balancer worker# with name 
"balancer"worker.list=balancerworker.balancer.type=lb# error_escalation_time: 
seconds, default = recover_time/2 (=30)# Determines, how fast a detected error 
should switch from# local error state to global error state# Since: 
1.2.28worker.balancer.error_escalation_time=0
# - max_reply_timeouts: number, default=0#   If there are to many reply 
timeouts, a worker#   is put into the error state, i.e. it will become#   
unavailable for all sessions residing on the respective#   Tomcat. The number 
of tolerated reply timeouts is#   configured with max_reply_timeouts. The 
number of#   timeouts occuring is divided by 2 once a minute and the#   
resulting counter is compared against max_reply_timeouts.#   If you set 
max_reply_timeouts to N and the errors are#   occuring equally distributed over 
time, you will#   tolerate N/2 errors per minute. If they occur in a burst#   
you will tolerate N errors.#   Since: 
1.2.24worker.balancer.max_reply_timeouts=10


# Now we add members to the load balancer# First member is "node1", most# 
attributes are inherited from the# template 
"worker.template".worker.balancer.balance_workers=node1worker.node1.reference=worker.templateworker.node1.host=localhostworker.node1.port=8109#
 Activation allows to configure# whether this node should actually be used# A: 
active (use node fully)# D: disabled (only use, if sticky session needs this 
node)# S: stopped (do not use)#   Since: 1.2.19worker.node1.activation=A
# Second member is "node2", most# attributes are inherited from the# template 
"worker.template".worker.balancer.balance_workers=node2worker.node2.reference=worker.templateworker.node2.host=localhostworker.node2.port=8209#
 Activation allows to configure# whether this node should actually be used# A: 
active (use node fully)# D: disabled (only use, if sticky session needs this 
node)# S: stopped (do not use)#   Since: 1.2.19worker.node2.activation=A
# Finally we put the parameters# which should apply to all our ajp13# workers 
into the referenced template# - Type is ajp13worker.template.type=ajp13
# - socket_connect_timeout: milliseconds, default=0#   Since: 
1.2.27worker.template.socket_connect_timeout=5000
# - socket_keepalive: boolean, default=false#   Should we send TCP keepalive 
packets#   when connection is idle (socket 
option)?worker.template.socket_keepalive=true
# - ping_mode: Character, default=none#   When should we use cping/cpong 
connection probing?#   C = directly after establishing a new connection#   P = 
directly before sending each request#   I = in regular intervals for idle 
connections#       using the watchdog thread#   A = all of the above#   Since: 
1.2.27worker.template.ping_mode=A
# - ping_timeout: milliseconds, default=10000#   Wait timeout for cpong after 
cping#   Can be overwritten for modes C and P#   Using connect_timeout and 
prepost_timeout.#   Since: 1.2.27worker.template.ping_timeout=10000
# - connection_pool_minsize: number, default=connection_pool_size#   Lower pool 
size when shrinking pool due#   to idle connections#   We want all connections 
to be closed when#   idle for a long time in order to prevent#   firewall 
problems.#   Since: 1.2.16worker.template.connection_pool_minsize=0
# - connection_pool_timeout: seconds, default=0#   Idle time, before a 
connection is eligible#   for being closed (pool shrinking).#   This should be 
the same value as connectionTimeout#   in the Tomcat AJP connector, but there 
it is#   milliseconds, here seconds.worker.template.connection_pool_timeout=600
# - reply_timeout: milliseconds, default=0#   Any pause longer than this 
timeout during waiting#   for a part of the reply will abort handling the 
request#   in mod_jk. The request will proceed running in#   Tomcat, but the 
web server resources will be freed#   and an error is send to the client.#   
For individual requests, the timeout can be overwritten#   by the Apache 
environment variable JK_REPLY_TIMEOUT.#   JK_REPLY_TIMEOUT since: 
1.2.27worker.template.reply_timeout=300000
# - recovery_options: number, default=0#   Bit mask to configure, if a request, 
which was send#   to a backend successfully, should be retried on another 
backend#   in case there's a problem with the response.#   Value "3" disables 
retries, whenever a part of the request was#   successfully send to the 
backend.worker.template.recovery_options=3
===End of workers.properties===========================  

                                          

Reply via email to