[
https://issues.jboss.org/browse/AS7-2388?page=com.atlassian.jira.plugin.s...
]
Sebastian Jancke commented on AS7-2388:
---------------------------------------
1) The JaxrsScanningProcessor is active, because there is also the HornetQ-Rest-API in the
same WAR
2) After removing that from the WAR, there is still the same error because of a defect
modules/org/jboss/netty/main/module.xml
My WAR contains only this:
/META-INF/MANIFEST.MF
---------------------
{code:none}
Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Built-By: Dummy
Build-Jdk: 1.6.0_24
Dependencies: org.jboss.netty
{code}
/WEB-INF/web.xml
----------------
{code:xml}
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<display-name>Message Tunnel</display-name>
<servlet>
<servlet-name>NettyTunnelingServlet</servlet-name>
<servlet-class>org.jboss.netty.channel.socket.http.HttpTunnelingServlet</servlet-class>
<init-param>
<param-name>endpoint</param-name>
<param-value>local:org.hornetq</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>NettyTunnelingServlet</servlet-name>
<url-pattern>/netty-tunnel</url-pattern>
</servlet-mapping>
</web-app>
{code}
The exception + stacktrace is (now without JaxrsScanningProcessor):
{code:xml}
09:59:15,909 WARN [org.jboss.modules] (MSC service thread 1-4) Failed to define class
org.jboss.netty.channel.socket.http.HttpTunnelingServlet in Mod
ule "org.jboss.netty:main" from local module loader @2aca0115 (roots:
jboss-as-7.0.2.Final\modules): java.lang.LinkageError: Failed to link o
rg/jboss/netty/channel/socket/http/HttpTunnelingServlet (Module
"org.jboss.netty:main" from local module loader @2aca0115 (roots:
jboss-as-7.0.2.Final\modules))
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:401)
at org.jboss.modules.ModuleClassLoader.loadClassLocal(ModuleClassLoader.java:261)
at
org.jboss.modules.ModuleClassLoader$1.loadClassLocal(ModuleClassLoader.java:76)
at org.jboss.modules.Module.loadModuleClass(Module.java:590)
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:183)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:361)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:333)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:310)
at
org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:103)
at java.lang.Class.forName0(Native Method) [:1.6.0_24]
at java.lang.Class.forName(Class.java:247) [:1.6.0_24]
at
org.jboss.as.ee.component.deployers.EEClassConfigurationProcessor$1.compute(EEClassConfigurationProcessor.java:139)
at
org.jboss.as.ee.component.deployers.EEClassConfigurationProcessor$1.compute(EEClassConfigurationProcessor.java:122)
at org.jboss.as.ee.component.LazyValue.get(LazyValue.java:40)
at
org.jboss.as.ee.component.EEApplicationDescription.getClassConfiguration(EEApplicationDescription.java:183)
at
org.jboss.as.ee.component.ComponentDescription.createConfiguration(ComponentDescription.java:153)
at
org.jboss.as.ee.component.deployers.EEModuleConfigurationProcessor.deploy(EEModuleConfigurationProcessor.java:70)
at
org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:115)
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1824)
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1759)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
[:1.6.0_24]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
[:1.6.0_24]
at java.lang.Thread.run(Thread.java:662) [:1.6.0_24]
Caused by: java.lang.NoClassDefFoundError: javax/servlet/http/HttpServlet
at java.lang.ClassLoader.defineClass1(Native Method) [:1.6.0_24]
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632) [:1.6.0_24]
at java.lang.ClassLoader.defineClass(ClassLoader.java:616) [:1.6.0_24]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
[:1.6.0_24]
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:397)
... 22 more
Caused by: java.lang.ClassNotFoundException: javax.servlet.http.HttpServlet from [Module
"org.jboss.netty:main" from local module loader @2aca0115 (ro
ots: jboss-as-7.0.2.Final\modules)]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:191)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:361)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:333)
at
org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:310)
at
org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:103)
... 27 more
{code}
HttpTunnelingServlet / Netty cannot classload HttpServlet (main.xml
in module is wrong)
---------------------------------------------------------------------------------------
Key: AS7-2388
URL:
https://issues.jboss.org/browse/AS7-2388
Project: Application Server 7
Issue Type: Bug
Components: Modules
Affects Versions: 7.0.1.Final, 7.0.2.Final
Reporter: Sebastian Jancke
Assignee: David Lloyd
Labels: classloading, hornetq, module, netty
Using the HttpTunnelingServlet inside a WAR's web.xml is not possible (e.g. to tunnel
HornetQ), because the module 'netty' cannot access the module 'servlet-api /
javaee'
Fix is simple. Adjust modules/org/jboss/netty/main/module.xml with the following
dependency:
<dependencies>
..
<module name="javax.servlet.api" />
</dependencies>
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see:
http://www.atlassian.com/software/jira