Getting HTTP Status 404 -- Servlet Invoker is not available
Issue
- Is Servlet Invoker available in JBoss EAP 6?
- If there is an application configured with org.apache.catalina.servlets.InvokerServlet in EAP 5.x as below,
<servlet>
<servlet-name>invoker</servlet-name>
<servlet-class>
org.apache.catalina.servlets.InvokerServlet
</servlet-class>
<servlet-mapping>
<servlet-name>invoker</servlet-name>
<url-pattern>/servlet/*</url-pattern>
</servlet-mapping>
and there are 100's of Servlets in the application, Is there an workaround available in EAP 6.x to achieve the same ?
- Getting
WARN
message andClassNotFoundException
like below .
15:54:31,974 WARN [org.jboss.as.ee] (MSC service thread 1-5) JBAS011006: Not installing optional component org.apache.catalina.servlets.InvokerServlet due to an exception (enable DEBUG log level to see the cause)
.
.
.
.
15:54:32,049 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/HelloWar]] (ServerService Thread Pool -- 54) JBWEB000289: Servlet invoker threw load() exception: java.lang.ClassNotFoundException: org.apache.catalina.servlets.InvokerServlet from [Module "deployment.HelloWar.war:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213) [jboss-modules.jar:1.3.3.Final-redhat-1]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459) [jboss-modules.jar:1.3.3.Final-redhat-1]
at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:447) [jboss-modules.jar:1.3.3.Final-redhat-1]
at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389) [jboss-modules.jar:1.3.3.Final-redhat-1]
at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134) [jboss-modules.jar:1.3.3.Final-redhat-1]
at org.jboss.as.web.deployment.WebInjectionContainer.newInstance(WebInjectionContainer.java:74) [jboss-as-web-7.4.0.Final-redhat-19.jar:7.4.0.Final-redhat-19]
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1154) [jbossweb-7.4.8.Final-redhat-4.jar:7.4.8.Final-redhat-4]
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1100) [jbossweb-7.4.8.Final-redhat-4.jar:7.4.8.Final-redhat-4]
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3591) [jbossweb-7.4.8.Final-redhat-4.jar:7.4.8.Final-redhat-4]
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3798) [jbossweb-7.4.8.Final-redhat-4.jar:7.4.8.Final-redhat-4]
at org.jboss.as.web.deployment.WebDeploymentService.doStart(WebDeploymentService.java:161) [jboss-as-web-7.4.0.Final-redhat-19.jar:7.4.0.Final-redhat-19]
at org.jboss.as.web.deployment.WebDeploymentService.access$000(WebDeploymentService.java:59) [jboss-as-web-7.4.0.Final-redhat-19.jar:7.4.0.Final-redhat-19]
at org.jboss.as.web.deployment.WebDeploymentService$1.run(WebDeploymentService.java:94) [jboss-as-web-7.4.0.Final-redhat-19.jar:7.4.0.Final-redhat-19]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) [rt.jar:1.6.0_33]
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) [rt.jar:1.6.0_33]
at java.util.concurrent.FutureTask.run(FutureTask.java:138) [rt.jar:1.6.0_33]
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [rt.jar:1.6.0_33]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [rt.jar:1.6.0_33]
at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_33]
at org.jboss.threads.JBossThread.run(JBossThread.java:122)
- How to get invoker servlet work in Tomcat 7?
- We have an web application working in Tomcat 5 and it's using the Invoker Servlet.
We are trying to migrate to Tomcat 7 and searching for a way to get invoker servlet work.
Environment
- Red Hat JBoss Enterprise Application Platform (EAP)
- 6.x
- Red Hat Enterprise Linux (RHEL) 7.x
- tomcat-7.0.69
- Red Hat JBoss Web Server (JWS) 3.x
- tomcta7
- tomcta8
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.