Brzezinski, Paul J wrote:

> Costin Manolache wrote:
> 
>>A quick test: put commons-logging.jar and log4j.jar in common/lib.
>>
>>Most classloader problems are due to the loader hierarchy.
>>
>>It is possible ( at least with 5.0 - I'm running it this way ) to
>>put all the jars in the same place ( like common/lib or just in CLASSPATH)
>>and run tomcat with delegation and a simple class loader hierarchy.
>>  
>>
> please help me understand if there's anything out-of-the ordinary that I
> need to do to run tomcat with delegation and a simple class loader
> hierarchy.  I quickly reviewed the class loader HOW-TO and nothing
> popped out as how to do this.

There is nothing out-of-the ordinary, just put all the jars in common/lib.

Or you can put all of them in the classpath and call 
o.a.catalina.startup.Catalina instead of bootstrap, but I'm not sure it'll
work ( it does for what I'm using - 5.0 head ). 

> 
> If you mean putting everything -- all the jar files mentioned in that
> document into $CATALINA_HOME/common/lib...

Yes. That would put everything in the 'main' classloader. You loose the 
separation - and it may be slightly more insecure. AFAIK the classloader
separation doesn't add extra protection if the sandbox is disabled - 
and the facades are protecting the internals.

Costin

> 
>>I would bet the same works with 4.1.x - jboss for example is using
>>embeded tocmat with all the jars in the main loader.
>>
>>Regarding the unix channel - you need to be able to load libjkjni.so
>>and libapr.so. It may be a good idea ( at least for testing ) to place
>>them in the JRE_HOME/lib dir - that's a place where java will certainly
>>look for .so files. ( at least with JDK1.4 I had some problems with
>>loading jars, and the LD_LIBRARY_PATH may create some problems ).
>>
>>Costin
>>
>>
>>
>>Brzezinski, Paul J wrote:
>>
>>  
>>
>>>Original post came from Tomcat Users, replying/cross-posting...
>>>
>>>
>>>
>>>: -----Original Message-----
>>>: From: Costin Manolache [mailto:cmanolache@;yahoo.com]
>>>: Sent: Wednesday, November 13, 2002 3:16 PM
>>>: To: Tomcat Developers List
>>>: Subject: RE: JK2 unixsocket: Can't create apr
>>>: 
>>>: 
>>>: Very weird.
>>>: 
>>>: Are you using the latest commons-logging.jar ? JDK1.4 or 1.3
>>>: ? Do you have log4j ?
>>>
>>>Yes -- *I* get this error on 4.1.12/5.0 on Solaris 8, hopefully Robert
>>>Williams can provide details about his specfic config:
>>>
>>>
>>>I have:
>>>
>>>j2sdk1.4.1
>>>commons-logging-1.0.2
>>>jakarta-log4j-1.2.6
>>>
>>>Tried this against:
>>>jakarta-tomcat-4.1.12
>>>jakarta-tomcat-4.1.12-LE-jdk14
>>>jakarta-tomcat-5
>>>
>>>I get the same error -- can't create apr...
>>>
>>>java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
>>>         at org.apache.jk.apr.AprImpl.<clinit>(AprImpl.java:340)
>>>
>>>: The problem seems releated to class loading ( as usual :-).
>>>
>>>Yeah, but how do we work-around it or solve it permanently.  I've tried
>>>massaging the catalina.sh startup script to include commons-logging.jar
>>>in CLASSPATH that gets passed to the JVM at startup.
>>>
>>>I've put commons-logging.jar in $CATALINA_HOME/server/lib even though
>>>commons-logging-api.jar exists there.
>>>
>>>I see in the -LE-jdk14 that there's a log4j.rename-to-jar.  What's the
>>>confidence level that this will resolve this problem?
>>>
>>>Is this a problem on other platforms?
>>>
>>>Is this NOT a problem on Linux?
>>>
>>>: Costin
>>>: 
>>>: 
>>>: Brzezinski, Paul J wrote:
>>>: 
>>>: > I wonder if a better question is:
>>>: > 
>>>: > Is anyone using the ChannelUnix (AF_UNIX socket) connector on any
>>>: > platform?
>>>: > 
>>>: > On what platforms is the ChannelUnix (AF_UNIX socket) connector
>>>: > actually known to function?
>>>: > 
>>>: > 
>>>: > 
>>>: > : -----Original Message-----
>>>: > : From: Robert Williams [mailto:rcw1@;pacbell.net]
>>>: > : Sent: Wednesday, November 13, 2002 1:05 PM
>>>: > : To: Tomcat User
>>>: > : Subject: JK2 unixsocket: Can't create apr
>>>: > :
>>>: > : 
>>>: > : Hi all,
>>>: > : I am trying to implement the unixsocket on JK2. While the
>>>: > : channelSocket
>>>: > : works fine I was hoping to get the speed benefits of a
>>>: > : unixsocket. I am
>>>: > : using the example setups in the JK2 documentation. And since
>>>: > : it seems to
>>>: > : be looking for  the LogFactory I have made sure that
>>>: > : commons-logging-api.jar  was in the Tomcat common/lib and I
>>>: > : also put it
>>>: > : in java/jre/lib/ext as well. All to no avail. I am
>>>: stumped. I haven't
>>>: > : been able to find anything in the list or on google
>>>: addressing this
>>>: > : problem. Some docs regarding channelSocket say disable
>>>: apr for this
>>>: > : error but apparently unixsocket won't work without apr
>>>: > : enabled. Any help
>>>: > : would be appreciated.
>>>: > : Thanks Robert
>>>: > : 
>>>: > : jakarta-tomcat-4.1.12
>>>: > : jakarta-tomcat-connectors-4.1.12
>>>: > : Apache/2.0.43
>>>: > : Solaris 9
>>>: > : 
>>>: > : Nov 13, 2002 9:29:04 AM org.apache.jk.server.JkMain newHandler
>>>: > : SEVERE: Can't create apr
>>>: > : java.lang.NoClassDefFoundError:
>>>: org/apache/commons/logging/LogFactory
>>>: > :         at org.apache.jk.apr.AprImpl.<clinit>(AprImpl.java:340)
>>>: > :         at java.lang.Class.forName0(Native Method)
>>>: > :         at java.lang.Class.forName(Class.java:130)
>>>: > :         at org.apache.jk.server.JkMain.newHandler(JkMain.java:494)
>>>: > :         at org.apache.jk.server.JkMain.start(JkMain.java:316)
>>>: > :         at
>>>: > : org.apache.jk.server.JkCoyoteHandler.start(JkCoyoteHandler.jav
>>>: > : 
>>>: > : workers2.properties
>>>: > : 
>>>: > : [shm]
>>>: > : file=${serverRoot}/logs/shm.file
>>>: > : size=1048576
>>>: > : 
>>>: > : # Example unixsocket channel.
>>>: > : [channel.un:unixsocket]
>>>: > : file=/usr/local/tomcat/work/jk2.socket
>>>: > : 
>>>: > : # define the worker
>>>: > : [ajp13:unixsocket]
>>>: > : channel=channel.un:unixsocket
>>>: > : 
>>>: > : # Uri mapping
>>>: > : [uri:/examples/*]
>>>: > : worker=ajp13:unixsocket
>>>: > : 
>>>: > : jk2.properties
>>>: > : # list of needed handlers.
>>>: > : handler.list=apr,channelUnix,request
>>>: > : 
>>>: > : # Location of the socket.
>>>: > : channelUnix.file=${jkHome}/work/jk2.socket
>>>: > : 
>>>: > : # Dynamic library
>>>: > : apr.NativeSo=${jkHome}/lib/jkjni.so
>>>: > : 
>>>: > : jk2.properties.save
>>>: > : #AUTOMATICALLY GENERATED
>>>: > : #Wed Nov 13 09:38:33 PST 2002
>>>: > : handler.list=apr,channelUnix,request
>>>: > : secure=false
>>>: > : soTimeout=20000
>>>: > : port=8009
>>>: > : jkHome=/usr/local/jakarta-tomcat-4.1.12
>>>: > : maxThreads=75
>>>: > : backlog=10
>>>: > : apr.NativeSo=${jkHome}/lib/jkjni.so
>>>: > : timeout=20000
>>>: > : channelUnix.file=${jkHome}/work/jk2.socket
>>>: > : tcpNoDelay=true
>>>: > : 
>>>: > : 
>>>: > : Build Apache
>>>: > : ./configure --with-mpm=worker --enable-so --enable-layout=Apache
>>>: > : --enable-module=most --enable-mods-shared=most
>>>: > : make
>>>: > : make install
>>>: > : 
>>>: > : Build jk2 Conector
>>>: > : cd ${conector.home}/jk/native2
>>>: > : sh ./buildconf.sh
>>>: > : 
>>>: > : cp  /usr/java/include/solaris to /usr/java/include/
>>>: > : 
>>>: > : CPPFLAGS=-DBSD_COMP  ./configure \
>>>: > : --with-apxs2=/usr/local/apache2/bin/apxs \
>>>: > : --with-tomcat41=/usr/local/tomcat \
>>>: > : --with-java-home=${JAVA_HOME} \
>>>: > : --with-java-platform=2 \
>>>: > : --with-jni
>>>: > : 
>>>: > : make CPPFLAGS=-DBSD_COMP
>>>: > : 
>>>: > : cd ${conector.home}/jk/build/jk2/apache2
>>>: > : mkdir /usr/local/tomcat/lib/
>>>: > : cp * /usr/local/tomcat/lib/
>>>: > : cp mod_jk2.so /usr/local/apache2/modules/
>>>: > : 
>>>: > : installed GNU Tools
>>>: > : autoconf-2.54-sol9-sparc-local.gz
>>>: > : tar-1.13.19-sol9-sparc-local.gz
>>>: > : m4-1.4-sol9-sparc-local
>>>: > : automake-1.7.1-sol9-sparc-local
>>>: > : make-3.80-sol9-sparc-local.gz
>>>: > : libtool-1.4
>>>: > :  
>>>: > : 
>>>: > : 
>>>: > : 
>>>: > : --
>>>: > : To unsubscribe, e-mail:
>>>: > : <mailto:tomcat-user-: [EMAIL PROTECTED]>
>>>: > : For
>>>: > : additional commands,
>>>: > : e-mail: <mailto:tomcat-user-help@;jakarta.apache.org>
>>>: > :
>>>: 
>>>: 
>>>: --
>>>: To unsubscribe, e-mail:
>>>: <mailto:tomcat-dev-: [EMAIL PROTECTED]>
>>>: For
>>>: additional commands,
>>>: e-mail: <mailto:tomcat-dev-help@;jakarta.apache.org>
>>>:
>>>    
>>>
>>
>>
>>--
>>To unsubscribe, e-mail:  
>><mailto:tomcat-dev-unsubscribe@;jakarta.apache.org> For additional
>>commands, e-mail: <mailto:tomcat-dev-help@;jakarta.apache.org>
>>  
>>




--
To unsubscribe, e-mail:   <mailto:tomcat-dev-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail: <mailto:tomcat-dev-help@;jakarta.apache.org>

Reply via email to