After upgrading from SOA 10.1.3.1 to 10.1.4.1 , I cant run any
Struts 1 pages from my web application.
I used to have "commons-logging-1.0.4.jar" under j2ee\<INSTANCE_NAME>\applib, and it worked fine before the upgrade, but after I upgraded I get this exception in the application log
11/02/20 18:50:17.31 ClientWeb: Error initializing
servlet
java.lang.ExceptionInInitializerError
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:242)
at com.evermind.server.http.HttpApplication.loadServlet(HttpApplication.java:2315)
at com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4830)
at com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4754)
at com.evermind.server.http.HttpApplication.initPreloadServlets(HttpApplication.java:4942)
at com.evermind.server.http.HttpApplication.initDynamic(HttpApplication.java:1144)
at com.evermind.server.http.HttpApplication.<init>(HttpApplication.java:741)
at com.evermind.server.ApplicationStateRunning.getHttpApplication(ApplicationStateRunning.java:431)
at com.evermind.server.Application.getHttpApplication(Application.java:586)
at com.evermind.server.http.HttpSite$HttpApplicationRunTimeReference.createHttpApplicationFromReference(HttpSite.java:1987)
at com.evermind.server.http.HttpSite$HttpApplicationRunTimeReference.<init>(HttpSite.java:1906)
at com.evermind.server.http.HttpSite.initApplications(HttpSite.java:643)
at com.evermind.server.http.HttpSite.setConfig(HttpSite.java:290)
at com.evermind.server.http.HttpServer.setSites(HttpServer.java:270)
at com.evermind.server.http.HttpServer.setConfig(HttpServer.java:177)
at com.evermind.server.ApplicationServer.initializeHttp(ApplicationServer.java:2493)
at com.evermind.server.ApplicationServer.setConfig(ApplicationServer.java:1042)
at com.evermind.server.ApplicationServerLauncher.run(ApplicationServerLauncher.java:131)
at java.lang.Thread.run(Thread.java:595)
Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: No suitable
Log constructor [Ljava.lang.Class;@1c06a6d for org.apache.commons.logging.impl.Log4JLogger (Caused by java.lang.NoClassDefFoundError
: org/apache/log4j/Category) (Caused by org.apache.commons.logging.LogConfigurationException: No suitable Log constructor [Ljava.lang
.Class;@1c06a6d for org.apache.commons.logging.impl.Log4JLogger (Caused by java.lang.NoClassDefFoundError: org/apache/log4j/Category
))
at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:543)
at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
at org.apache.struts.action.ActionServlet.<clinit>(ActionServlet.java:209)
... 20 more
Caused by: org.apache.commons.logging.LogConfigurationException: No suitable Log constructor [Ljava.lang.Class;@1c06a6d for org.apache
.commons.logging.impl.Log4JLogger (Caused by java.lang.NoClassDefFoundError: org/apache/log4j/Category)
at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:413)
at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
... 24 more
Caused by: java.lang.NoClassDefFoundError: org/apache/log4j/Category
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2328)
at java.lang.Class.getConstructor0(Class.java:2640)
at java.lang.Class.getConstructor(Class.java:1629)
at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:410)
... 25 more
11/02/20 18:50:17.31 ClientWeb: Error preloading servlet
javax.servlet.ServletException: Error initializing servlet
at com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4857)
at com.evermind.server.http.HttpApplication.findServlet(HttpApplication.java:4754)
at com.evermind.server.http.HttpApplication.initPreloadServlets(HttpApplication.java:4942)
at com.evermind.server.http.HttpApplication.initDynamic(HttpApplication.java:1144)
at com.evermind.server.http.HttpApplication.<init>(HttpApplication.java:741)
at com.evermind.server.ApplicationStateRunning.getHttpApplication(ApplicationStateRunning.java:431)
at com.evermind.server.Application.getHttpApplication(Application.java:586)
at com.evermind.server.http.HttpSite$HttpApplicationRunTimeReference.createHttpApplicationFromReference(HttpSite.java:1987)
at com.evermind.server.http.HttpSite$HttpApplicationRunTimeReference.<init>(HttpSite.java:1906)
at com.evermind.server.http.HttpSite.initApplications(HttpSite.java:643)
at com.evermind.server.http.HttpSite.setConfig(HttpSite.java:290)
at com.evermind.server.http.HttpServer.setSites(HttpServer.java:270)
at com.evermind.server.http.HttpServer.setConfig(HttpServer.java:177)
at com.evermind.server.ApplicationServer.initializeHttp(ApplicationServer.java:2493)
at com.evermind.server.ApplicationServer.setConfig(ApplicationServer.java:1042)
at com.evermind.server.ApplicationServerLauncher.run(ApplicationServerLauncher.java:131)
at java.lang.Thread.run(Thread.java:595)
11/02/20 18:50:17.31 ClientWeb: 10.1.3.4.0 Started
11/02/20 18:51:35.906 ClientWeb: Servlet error
javax.servlet.ServletException: Error instantiating servlet 'action'. Servlet class org.apache.struts.action.ActionServlet not found
in web-application ClientWeb
at com.evermind[Oracle Containers for
J2EE 10g (10.1.3.4.0) ].server.http.HttpApplication.servletClassNotFound(HttpApplication
.java:4886)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpApplication.findServlet(HttpApplication.java:4852
)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpApplication.findServlet(HttpApplication.java:4754
)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpApplication.getRequestDispatcher(HttpApplication
.java:2978)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler
.java:738)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler
.java:453)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler
.java:221)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor
.java:303)
at java.lang.Thread.run(Thread.java:595)
I tried moving this jar inside my war module, but problem still occures.
However, if I removed the jar "commons-loging.jar" from "OracleAS_1\webservices\lib", everything works fine!
Any ideas how to solve this problem??