Dave,I spent some time reading the source code of commons-discovery version 0.2 which I believe matches the version you are testing with. Reading the javadocs for o.a.c.discovery.tools.DiscoverClass and your previous messages, I added
the file "org.apache.commons.logging.LogFactory" under META-INF/services.
You can find the modified jar file including the fix as an attachment to this message. Can you please give it a try?
Thanks in advance, At 07:01 PM 3/21/2006, Dave Wallace wrote:
I had not modifed jcl104-over-slf4j.jar other than to add /META-INF/services by unpacking the jar (from the 1.0 release), adding the file and repacking. The original, unmodified 1.0 release of jcl104-over-slf4j.jar and the one you sent me both fail like so: java.lang.ExceptionInInitializerError at org.apache.axis.message.NodeImpl.<clinit>(NodeImpl.java:48) .... [Elided] .... Caused by: org.apache.commons.discovery.DiscoveryException: No implementation defined for org.apache.commons.logging.LogFactory at org.apache.commons.discovery.tools.ClassUtils.verifyAncestory(ClassUtils.java:176) at org.apache.commons.discovery.tools.SPInterface.verifyAncestory(SPInterface.java:201) at org.apache.commons.discovery.tools.SPInterface.newInstance(SPInterface.java:195) at org.apache.commons.discovery.tools.DiscoverClass.newInstance(DiscoverClass.java:579) at org.apache.commons.discovery.tools.DiscoverSingleton.find(DiscoverSingleton.java:418) at org.apache.commons.discovery.tools.DiscoverSingleton.find(DiscoverSingleton.java:378) at org.apache.axis.components.logger.LogFactory$1.run(LogFactory.java:45) at java.security.AccessController.doPrivileged(Native Method) at org.apache.axis.components.logger.LogFactory.getLogFactory(LogFactory.java:41) at org.apache.axis.components.logger.LogFactory.<clinit>(LogFactory.java:33) ... 37 more I believe that the vm is able to load org.apache.axis.components.logger.LogFactory because javac tends to fold public static final variables into generated code, therefore there are no references to FACTORY_PROPERTIES and FACTORY_DEFAULT in the axis LogFactory, just the values are stored. So I don't think they can be overridden without recompiling axis.jar.
-- Ceki Gülcü http://ceki.blogspot.com/
jcl104-over-slf4j.jar
Description: Binary data
_______________________________________________ dev mailing list dev@slf4j.org http://slf4j.org/mailman/listinfo/dev