I have a custom RolerMapper provider that I can successfully add to a
running server through the admin console, but when I try to start the server
via ant (essentially a coldstart with a saved config.xml file,
boot.properties and ldift files), the server throws a NoClassDefFoundError:
[wlserver] <Mar 19, 2004 2:57:08 PM EST> <Info> <Security> <BEA-090075>
<The RoleMapper provider has had its LDIF information loaded from:
C:\bea\user_projects\domains\combinenet\.\DefaultRoleMapperInit.ldift>
[wlserver]
***************************************************************************
[wlserver] The WebLogic Server did not start up properly.
[wlserver] java.lang.NoClassDefFoundError: org/apache/log4j/Logger
[wlserver] at com.combinenet.util.Logger.<init>(Logger.java:113)
[wlserver] at com.combinenet.util.Logger.getLogger(Logger.java:125)
[wlserver] at com.combinenet.util.Logger.getLogger(Logger.java:136)
[wlserver] at
com.combinenet.security.CNRoleMapperProvider.<clinit>(CNRoleMapperProvider.j
ava:65)
I tried adding "Class-Path: log4j.jar" to the manifest of the provider jar
file, and I even stuffed the log4j.jar in there too, but neither worked.
log4j.jar is in the server's common/lib directory, and other parts of our
app use log4j without a problem.
I worked around this by unjarring log4j.jar and updating my provider jar
with all of the classes, but obviously isn't a solution.
Any idea why log4j.jar isn't being loaded by the server's bootstrap
classloader at startup (from common/lib)?
How can I add log4j.jar to the classpath in the wlserver task? (it doesn't
support the classpath attribute).
I've had more problems getting log4j to work properly with WLS...
Thanks for any help,
Miles
-Miles
"Craig" <c...@thefrogpad.net> wrote in message
news:405b7403$1...@newsgroups.bea.com...
"Miles Krivoshia" <mkrivoshia{{remove}}@combinenet.{{rem}}com> wrote in
message news:405c5e16$1...@newsgroups.bea.com...
It worked.
How do you change the manifest? After generating the .jar or did u find a work
around for the webLogicMbeanMaker class?
Having log4j on the sys classpath did not work for me, but I was using
<wlserver> to start the server. I was able to get wlserver to use a
classpath that I specified, but still no luck.
> How do you change the manifest? After generating the .jar or did u find a
work
> around for the webLogicMbeanMaker class?
I was able to use ant's jar task to update the manifest of the jar that
WebLogicMBeanMaker created:
<jar update="true" basedir="${build}"
destfile="${provider.jar}"
manifest="${src}/com/combinenet/security/MANIFEST.MF"
includes="com/combinenet/util/**/*"/>
I checked in a MANIFEST.MF file in my src tree that contains only:
Class-Path: log4j.jar
The resulting manifest is the merge of that plus what WebLogicMBeanMaker
produced.
-Miles