Jump to content
Excelsior Forums
Sign in to follow this  
foursoftware

No implementation defined for org.apache.commons.logging.LogFactory

Recommended Posts

Our application has been compiling working properly over the years. Recently we decided to include a web service call. The web service client requires Apache AXIS which in turn requires the commons logging library. Now we get a runtime error:

Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerError

at java.lang.Void.<unknown>(Unknown Source)

at java.lang.Void.<unknown>(Unknown Source)

at java.lang.Void.<unknown>(Unknown Source)

at java.lang.Void.<unknown>(Unknown Source)

Caused by: org.apache.commons.discovery.DiscoveryException: No implementation defined for org.apache.commons.logging.LogFactory

... 4 more

We are using J2SE 1.5.0_05 and Excelsior Jet 1.4

Please help!!!

Share this post


Link to post
Share on other sites

Does the problem appear right after compilation or after deployment with JetPackII?

Is it possible to reproduce it with the latest Excelsior JET 6.4?

We are using J2SE 1.5.0_05 and Excelsior Jet 1.4

You must mean Excelsior JET 4.1 released back in 2005.

Note that according to the Support Policy statement Excelsior JET 4.1 has reached Product End Of Life status. We encourage customers of this version to migrate to more recent versions to receive the support services under valid Support Contracts.

If you need help in migrating to a newer version of Excelsior JET, please  contact us.

Share this post


Link to post
Share on other sites

Although I am not the originator of this thread, I am facing the same issue when trying to call a web service with Axis:

Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerError

at org.apache.axis.components.logger.LogFactory.getLog(Unknown Source)

at org.apache.axis.description.OperationDesc.<clinit>(Unknown Source)

at com._4d.www.namespace._default.UMD_WebServiceBindingStub._initOperationDesc1(Unknown Source)

at com._4d.www.namespace._default.UMD_WebServiceBindingStub.<clinit>(Unknown Source)

Here is some background:

I am using the latest Jet 6.5 Professional Edition, when using the 'TEST RUN' facility in the compiler my web service call functions, when I either used the 'packaged' installed version or directly the compiled version, it gives me above error. I am running winXP Pro and writing code with Netbeans6.5.

What else can I do ?

Share this post


Link to post
Share on other sites

David,

our Support Team must be already in touch with you. As soon as the issue is resolved, we will also post the results in this topic.

Share this post


Link to post
Share on other sites

David,

as I promised I post here the resolution found for the problem.

But first comes a short introduction.

After compilation and packaging,  each Java class appears in the installation package in one of the three forms:

  1. compiled (to be directly executed)

  2. included in the original bytecode form (to be JIT?ed on demand)

  3. both compiled into native code and included in bytecode form

You may control these options in the classpath grid on the page Classpath of the JET Control Panel.

Why is the third option needed?

Well, certain Java components/API implementations were written so that they need their class files at run time. The word ?files? is emphasized on purpose. Literally, the files must exist at run time because certain API code uses open/read/close operations, checks the presence and size of the files, etc. In such cases, the class files actually serve as resource files.

That?s why we had to support option 3 in Excelsior JET. For more details, see the JET User?s Guide, chapter ?Application considerations?,  section ?Resource packing?

Back to resolution of the problem. Open your project with the JET Control Panel and go to the page Classpath. In the ?Pack into exe? column, select the ?As a whole? option for the following jars

    axis.jar

    commons-logging-api.jar

Then, compile/package the application and the problem will be out.

P.S. For versions prior to 6.5, the option was named ?original jar/zip? but we had to rename it to support both ordinary classpath entries and OSGi bundles

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×