[
https://issues.jboss.org/browse/AS7-6086?page=com.atlassian.jira.plugin.s...
]
RH Bugzilla Integration commented on AS7-6086:
----------------------------------------------
Jimmy Wilson <jawilson(a)redhat.com> made a comment on [bug
922340|https://bugzilla.redhat.com/show_bug.cgi?id=922340]
It's not supposed to be in the patch overlay zip, but we do sometimes attach the
sources to the BZ/JIRA in case there are customer questions later. Certainly we can
deliver the source JAR to customers as needed via the case, but we don't generally do
that on the portal.
Deadlock in
org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler
---------------------------------------------------------------------------------------
Key: AS7-6086
URL:
https://issues.jboss.org/browse/AS7-6086
Project: Application Server 7
Issue Type: Bug
Components: EJB, Remoting
Affects Versions: 7.1.3.Final (EAP)
Environment: Doesn't matter.
Reporter: Krzysztof Noceń
Assignee: Eduardo Martins
Fix For: EAP 6.1.0.Alpha (7.2.0.Final), 7.1.4.Final (EAP)
Class:
{code}
org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler
{code}
Method:
{code}
public void processMessage(ChannelAssociation, MessageInputStream) throws IOException;
{code}
This code fragment:
{code}
try {
methodParams[i] = unmarshaller.readObject();
} catch (ClassNotFoundException cnfe) {
/.../
return;
}
{code}
doesn't catch *java.lang.IllegalArgumentException*.
This causes the server hangs.
Example stacktrace:
{code}
java.lang.IllegalArgumentException: No enum const org.example.ExampleEnum.ENUM_VALUE
at java.lang.Enum.valueOf(Enum.java:196)
at
org.jboss.marshalling.river.RiverUnmarshaller.resolveEnumConstant(RiverUnmarshaller.java:1549)
at
org.jboss.marshalling.river.RiverUnmarshaller.doReadNewObject(RiverUnmarshaller.java:1293)
at
org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:272)
at
org.jboss.marshalling.river.RiverUnmarshaller.doReadObject(RiverUnmarshaller.java:209)
at org.jboss.marshalling.AbstractObjectInput.readObject(AbstractObjectInput.java:37)
at
org.jboss.as.ejb3.remote.protocol.versionone.MethodInvocationMessageHandler.processMessage(MethodInvocationMessageHandler.java:164)
at
org.jboss.as.ejb3.remote.protocol.versionone.VersionOneProtocolChannelReceiver.handleMessage(VersionOneProtocolChannelReceiver.java:182)
at
org.jboss.remoting3.remote.RemoteConnectionChannel$5.run(RemoteConnectionChannel.java:429)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
{code}
I caught *java.lang.Exception*. It helps.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira