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.
If you mean putting everything -- all the jar files mentioned in that document into $CATALINA_HOME/common/lib...

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