Yep, that's the solution.  If you have any more problems, post back to the
list.

John


> -----Original Message-----
> From: Ben Jessel [mailto:[EMAIL PROTECTED]]
> Sent: Friday, January 03, 2003 7:35 AM
> To: Tomcat Users List; Ben Jessel
> Subject: Re: ManagedBean is not found with Ajp13Connector
> 
> 
> It's o.k I found the solution. Don't use AJP and JMX 
> together. I guess they
> put in JMX support and didn't want to support the old 
> Ajp13Connector. Use
> coyote instead. Having said that, that's as far as i've got...
> 
> ----- Original Message -----
> From: "Ben Jessel" <[EMAIL PROTECTED]>
> To: "Tomcat Users List" <[EMAIL PROTECTED]>
> Sent: Friday, January 03, 2003 11:43 AM
> Subject: ManagedBean is not found with Ajp13Connector
> 
> 
> Hi, I've been suffering with trying to configure mod_jk + apache 1.3 +
> tomcat 1.4.18 for a while.
> I've managed to get to a stage where I have a 
> workers.properties, and an
> auto-created configuration for apache. However, I'm getting 
> an error with
> this line of my server.xml
> 
>     <Connector className="org.apache.ajp.tomcat3.AjpConnector"
>     port="8009" minProcessors="5" maxProcessors="75"
>     acceptCount="10" debug="99"/>
> 
>         ServerLifecycleListener: Creating MBean for Service
> StandardService[Tomcat-Standalone]
>         ServerLifecycleListener: Creating MBean for Connector
> org.apache.coyote.tomcat4.CoyoteConnector@19ce060
>         ServerLifecycleListener: Creating MBean for Connector
> org.apache.ajp.tomcat4.Ajp13Connector@13d28e3
>         java.lang.Exception: ManagedBean is not found with 
> Ajp13Connector
>                 at
> org.apache.catalina.mbeans.MBeanUtils.createMean(MBeanUtils.java:234)
>                 ......
>                 ...........
> 
> 
> Is tomcat4.1.18 not compatible with mod_jk?
> 
> 
> Here's the server.xml
> 
> <snip>
> 
> <!-- Example Server Configuration File -->
> <!-- Note that component elements are nested corresponding to their
>      parent-child relationships with each other -->
> 
> <!-- A "Server" is a singleton element that represents the entire JVM,
>      which may contain one or more "Service" instances.  The Server
>      listens for a shutdown command on the indicated port.
> 
>      Note:  A "Server" is not itself a "Container", so you may not
>      define subcomponents such as "Valves" or "Loggers" at this level.
>  -->
> 
> <Server port="8005" shutdown="SHUTDOWN" debug="99">
> 
>  <Listener className="org.apache.ajp.tomcat4.config.ApacheConfig"
>  modJk="/etc/httpd/modules/mod_jk.so"
>  jkDebug="info"
> workersConfig="/usr/jakarta-tomcat-4.1.18/conf/workers.properties"
>  jkLog="/usr/jakarta-tomcat-4.1.18/logs/mod_jk.log" />
> 
>   <!-- Comment these entries out to disable JMX MBeans support -->
>   <!-- You may also configure custom components (e.g. 
> Valves/Realms) by
>        including your own mbean-descriptor file(s), and setting the
>        "descriptors" attribute to point to a ';' seperated 
> list of paths
>        (in the ClassLoader sense) of files to add to the default list.
>        e.g. descriptors="/com/myfirm/mypackage/mbean-descriptor.xml"
>   -->
> 
>   <Listener 
> className="org.apache.catalina.mbeans.ServerLifecycleListener"
>             debug="99"/>
>   <Listener
> className="org.apache.catalina.mbeans.GlobalResourcesLifecycle
> Listener"
>             debug="99"/>
> 
>   <!-- 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>
> 
>   <!-- A "Service" is a collection of one or more 
> "Connectors" that share
>        a single "Container" (and therefore the web 
> applications visible
>        within that Container).  Normally, that Container is 
> an "Engine",
>        but this is not required.
> 
>        Note:  A "Service" is not itself a "Container", so you may not
>        define subcomponents such as "Valves" or "Loggers" at 
> this level.
>    -->
> 
>   <!-- Define the Tomcat Stand-Alone Service -->
>   <Service name="Tomcat-Standalone">
> 
>     <!-- A "Connector" represents an endpoint by which 
> requests are received
>          and responses are returned.  Each Connector passes 
> requests on to
> the
>          associated "Container" (normally an Engine) for processing.
> 
>          By default, a non-SSL HTTP/1.1 Connector is 
> established on port
> 8080.
>          You can also enable an SSL HTTP/1.1 Connector on port 8443 by
>          following the instructions below and uncommenting the second
> Connector
>          entry.  SSL support requires the following steps (see the SSL
> Config
>          HOWTO in the Tomcat 4.0 documentation bundle for 
> more detailed
>          instructions):
>          * Download and install JSSE 1.0.2 or later, and put 
> the JAR files
>            into "$JAVA_HOME/jre/lib/ext".
>          * Execute:
>              %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA
> (Windows)
>              $JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA
> (Unix)
>            with a password value of "changeit" for both the 
> certificate and
>            the keystore itself.
> 
>          By default, DNS lookups are enabled when a web 
> application calls
>          request.getRemoteHost().  This can have an adverse impact on
>          performance, so you can disable it by setting the
>          "enableLookups" attribute to "false".  When DNS lookups are
> disabled,
>          request.getRemoteHost() will return the String version of the
>          IP address of the remote client.
>     -->
> 
>     <!-- 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="99" 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="99" 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 8009 -->
>     <!-- <Connector 
> className="org.apache.coyote.tomcat4.CoyoteConnector"
>                port="8009" minProcessors="5" maxProcessors="75"
>                enableLookups="true" redirectPort="8443"
>                acceptCount="10" debug="99" connectionTimeout="0"
>                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="99"/>
> 
>     <!-- 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="99" 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="99" />
>     -->
> 
>     <!-- 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="99" />
>     -->
> 
>     <!-- An Engine represents the entry point (within Catalina) that
> processes
>          every request.  The Engine implementation for Tomcat 
> stand alone
>          analyzes the HTTP headers included with the request, 
> and passes
> them
>          on to the appropriate Host (virtual host). -->
> 
>     <!-- You should set jvmRoute to support load-balancing 
> via JK/JK2 ie :
>     <Engine name="Standalone" defaultHost="localhost" debug="99"
> jmvRoute="jvm1">
>     -->
> 
>     <!-- Define the top level container in our container hierarchy -->
>     <Engine name="Standalone" defaultHost="localhost" debug="99">
> 
>       <!-- The request dumper valve dumps useful debugging 
> information about
>            the request headers and cookies that were received, and the
> response
>            headers and cookies that were sent, for all 
> requests received by
>            this instance of Tomcat.  If you care only about 
> requests to a
>            particular virtual host, or a particular 
> application, nest this
>            element inside the corresponding <Host> or <Context> entry
> instead.
> 
>            For a similar mechanism that is portable to all Servlet 2.3
>            containers, check out the "RequestDumperFilter" 
> Filter in the
>            example application (the source for this filter 
> may be found in
>            "$CATALINA_HOME/webapps/examples/WEB-INF/classes/filters").
> 
>            Request dumping is disabled by default.  Uncomment 
> the following
>            element to enable it. -->
>       <!--
>       <Valve 
> className="org.apache.catalina.valves.RequestDumperValve"/>
>       -->
> 
>       <!-- Global logger unless overridden at lower levels -->
>       <Logger className="org.apache.catalina.logger.FileLogger"
>               prefix="catalina_log." suffix=".txt"
>               timestamp="true"/>
> 
>       <!-- Because this Realm is here, an instance will be shared
> globally -->
> 
>       <!-- This Realm uses the UserDatabase configured in the 
> global JNDI
>            resources under the key "UserDatabase".  Any edits
>            that are performed against this UserDatabase are 
> immediately
>            available for use by the Realm.  -->
>       <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
>                  debug="99" resourceName="UserDatabase"/>
> 
>       <!-- Comment out the old realm but leave here for now in case we
>            need to go back quickly -->
>       <!--
>       <Realm className="org.apache.catalina.realm.MemoryRealm" />
>       -->
> 
>       <!-- Replace the above Realm with one of the following 
> to get a Realm
>            stored in a database and accessed via JDBC -->
> 
>       <!--
>       <Realm  className="org.apache.catalina.realm.JDBCRealm" 
> debug="99"
>              driverName="org.gjt.mm.mysql.Driver"
>           connectionURL="jdbc:mysql://localhost/authority"
>          connectionName="test" connectionPassword="test"
>               userTable="users" userNameCol="user_name"
> userCredCol="user_pass"
>           userRoleTable="user_roles" roleNameCol="role_name" />
>       -->
> 
>       <!--
>       <Realm  className="org.apache.catalina.realm.JDBCRealm" 
> debug="99"
>              driverName="oracle.jdbc.driver.OracleDriver"
>           connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL"
>          connectionName="scott" connectionPassword="tiger"
>               userTable="users" userNameCol="user_name"
> userCredCol="user_pass"
>           userRoleTable="user_roles" roleNameCol="role_name" />
>       -->
> 
>       <!--
>       <Realm  className="org.apache.catalina.realm.JDBCRealm" 
> debug="99"
>              driverName="sun.jdbc.odbc.JdbcOdbcDriver"
>           connectionURL="jdbc:odbc:CATALINA"
>               userTable="users" userNameCol="user_name"
> userCredCol="user_pass"
>           userRoleTable="user_roles" roleNameCol="role_name" />
>       -->
> 
>       <!-- Define the default virtual host -->
>       <Host name="intranet" debug="99" appBase="webapps"
>        unpackWARs="true" autoDeploy="true">
> 
>        <Listener 
> className="org.apache.ajp.tomcat4.config.ApacheConfig"
> accept="true"/>
> 
>         <!-- Normally, users must authenticate themselves to 
> each web app
>              individually.  Uncomment the following entry if 
> you would like
>              a user to be authenticated the first time they 
> encounter a
>              resource protected by a security constraint, and 
> then have that
>              user identity maintained across *all* web applications
> contained
>              in this virtual host. -->
>         <!--
>         <Valve 
> className="org.apache.catalina.authenticator.SingleSignOn"
>                    debug="99"/>
>         -->
> 
>         <!-- Access log processes all requests for this 
> virtual host.  By
>              default, log files are created in the "logs" 
> directory relative
> to
>              $CATALINA_HOME.  If you wish, you can specify a different
>              directory with the "directory" attribute.  
> Specify either a
> relative
>              (to $CATALINA_HOME) or absolute path to the 
> desired directory.
>         -->
>         <!--
>         <Valve className="org.apache.catalina.valves.AccessLogValve"
>                  directory="logs"  prefix="localhost_access_log."
> suffix=".txt"
>                  pattern="common" resolveHosts="false"/>
>         -->
> 
>         <!-- Logger shared by all Contexts related to this 
> virtual host.  By
>              default (when using FileLogger), log files are 
> created in the
> "logs"
>              directory relative to $CATALINA_HOME.  If you 
> wish, you can
> specify
>              a different directory with the "directory" 
> attribute.  Specify
> either a
>              relative (to $CATALINA_HOME) or absolute path to 
> the desired
>              directory.-->
>         <Logger className="org.apache.catalina.logger.FileLogger"
>                  directory="logs"  prefix="localhost_log." 
> suffix=".txt"
>          timestamp="true"/>
> 
>         <!-- Define properties for each web application.  This is only
> needed
>              if you want to set non-default properties, or have web
> application
>              document roots in places other than the virtual 
> host's appBase
>              directory.  -->
> 
> 
>         <!-- Tomcat Root Context -->
>         <!--
>           <Context path="" docBase="ROOT" debug="99"/>
>         -->
>  <Context path="/bugsquash" docBase="bugsquash" debug="99"
>    reloadable="true" crossContext="false" >
>         <Logger className="org.apache.catalina.logger.FileLogger"
>          prefix="localhost_bugsquash_log." suffix=".txt"
>          timestamp="true" />
>         <Realm  
> className="org.apache.catalina.realm.JDBCRealm" debug="99"
>                 driverName="org.gjt.mm.mysql.Driver"
>                 connectionURL="jdbc:mysql://megatron:3306/bugsquash"
>                 connectionName="bugsquash"
>                 connectionPassword="bugsquash"
>                 userTable="users" userNameCol="username"
> userCredCol="password"
>                 userRoleTable="user_role" roleNameCol="role_name" />
>        </Context>
>         <!-- Tomcat Examples Context -->
>         <Context path="/examples" docBase="examples" debug="99"
>                  reloadable="true" crossContext="true">
>           <Logger className="org.apache.catalina.logger.FileLogger"
>                      prefix="localhost_examples_log." suffix=".txt"
>            timestamp="true"/>
>           <Ejb   name="ejb/EmplRecord" type="Entity"
>                  home="com.wombat.empl.EmployeeRecordHome"
>                remote="com.wombat.empl.EmployeeRecord"/>
> 
>           <!-- If you wanted the examples app to be able to edit the
>                user database, you would uncomment the following entry.
>                Of course, you would want to enable security on the
>                application as well, so this is not done by default!
>                The database object could be accessed like this:
> 
>                Context initCtx = new InitialContext();
>                Context envCtx = (Context) 
> initCtx.lookup("java:comp/env");
>                UserDatabase database =
>                     (UserDatabase) envCtx.lookup("userDatabase");
>           -->
> <!--
>           <ResourceLink name="userDatabase" global="UserDatabase"
>                         type="org.apache.catalina.UserDatabase"/>
> -->
> 
> 
>           <!-- PersistentManager: Uncomment the section below to test
> Persistent
>          Sessions.
> 
>                saveOnRestart: If true, all active sessions 
> will be saved
>                  to the Store when Catalina is shutdown, regardless of
>                  other settings. All Sessions found in the 
> Store will be
>                  loaded on startup. Sessions past their expiration are
>                  ignored in both cases.
>                maxActiveSessions: If 0 or greater, having too 
> many active
>                  sessions will result in some being swapped 
> out. minIdleSwap
>                  limits this. -1 or 0 means unlimited 
> sessions are allowed.
>                  If it is not possible to swap sessions new 
> sessions will
>                  be rejected.
>                  This avoids thrashing when the site is highly active.
>                minIdleSwap: Sessions must be idle for at 
> least this long
>                  (in seconds) before they will be swapped out due to
>                  activity.
>                  0 means sessions will almost always be 
> swapped out after
>                  use - this will be noticeably slow for your users.
>                maxIdleSwap: Sessions will be swapped out if 
> idle for this
>                  long (in seconds). If minIdleSwap is higher, 
> then it will
>                  override this. This isn't exact: it is checked
> periodically.
>                  -1 means sessions won't be swapped out for 
> this reason,
>                  although they may be swapped out for 
> maxActiveSessions.
>                  If set to >= 0, guarantees that all sessions 
> found in the
>                  Store will be loaded on startup.
>                maxIdleBackup: Sessions will be backed up (saved to the
> Store,
>                  but left in active memory) if idle for this long (in
> seconds),
>                  and all sessions found in the Store will be loaded on
> startup.
>                  If set to -1 sessions will not be backed up, 
> 0 means they
>                  should be backed up shortly after being used.
> 
>                To clear sessions from the Store, set 
> maxActiveSessions,
> maxIdleSwap,
>                and minIdleBackup all to -1, saveOnRestart to 
> false, then
> restart
>                Catalina.
>           -->
>     <!--
>           <Manager 
> className="org.apache.catalina.session.PersistentManager"
>               debug="99"
>               saveOnRestart="true"
>               maxActiveSessions="-1"
>               minIdleSwap="-1"
>               maxIdleSwap="-1"
>               maxIdleBackup="-1">
>                 <Store 
> className="org.apache.catalina.session.FileStore"/>
>           </Manager>
>     -->
>           <Environment name="maxExemptions" type="java.lang.Integer"
>                       value="15"/>
>           <Parameter name="context.param.name" 
> value="context.param.value"
>                      override="false"/>
>           <Resource name="jdbc/EmployeeAppDb" auth="SERVLET"
>                     type="javax.sql.DataSource"/>
>           <ResourceParams name="jdbc/EmployeeAppDb">
>             
> <parameter><name>username</name><value>sa</value></parameter>
>             
> <parameter><name>password</name><value></value></parameter>
>             <parameter><name>driverClassName</name>
>               <value>org.hsql.jdbcDriver</value></parameter>
>             <parameter><name>url</name>
>               <value>jdbc:HypersonicSQL:database</value></parameter>
>           </ResourceParams>
>           <Resource name="mail/Session" auth="Container"
>                     type="javax.mail.Session"/>
>           <ResourceParams name="mail/Session">
>             <parameter>
>               <name>mail.smtp.host</name>
>               <value>localhost</value>
>             </parameter>
>           </ResourceParams>
>           <ResourceLink name="linkToGlobalResource"
>                     global="simpleValue"
>                     type="java.lang.Integer"/>
>         </Context>
> 
>       </Host>
> 
>     </Engine>
> 
>   </Service>
> 
>   <!-- The MOD_WEBAPP connector is used to connect Apache 1.3 
> with Tomcat
> 4.0
>        as its servlet container. Please read the README.txt 
> file coming with
>        the WebApp Module distribution on how to build it.
>        (Or check out the "jakarta-tomcat-connectors/webapp" 
> CVS repository)
> 
>        To configure the Apache side, you must ensure that you have the
>        "ServerName" and "Port" directives defined in 
> "httpd.conf".  Then,
>        lines like these to the bottom of your "httpd.conf" file:
> 
>          LoadModule webapp_module libexec/mod_webapp.so
>          WebAppConnection warpConnection warp localhost:8008
>          WebAppDeploy examples warpConnection /examples/
> 
>        The next time you restart Apache (after restarting 
> Tomcat, if needed)
>        the connection will be established, and all 
> applications you make
>        visible via "WebAppDeploy" directives can be accessed 
> through Apache.
>   -->
> 
>   <!-- Define an Apache-Connector Service -->
> <!--
>   <Service name="Tomcat-Apache">
> 
>     <Connector 
> className="org.apache.catalina.connector.warp.WarpConnector"
>      port="8008" minProcessors="5" maxProcessors="75"
>      enableLookups="true" appBase="webapps"
>      acceptCount="10" debug="99"/>
> 
>     <Engine className="org.apache.catalina.connector.warp.WarpEngine"
>      name="Apache" debug="99">
> 
>       <Logger className="org.apache.catalina.logger.FileLogger"
>               prefix="apache_log." suffix=".txt"
>               timestamp="true"/>
> 
>       <Realm className="org.apache.catalina.realm.MemoryRealm" />
> 
>     </Engine>
> 
>   </Service>
> -->
> 
> </Server>
> 
> </snip>
> 
> 
> 
> --
> To unsubscribe, e-mail:   
> <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: 
> <mailto:[EMAIL PROTECTED]>
> 

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to