We have a java application running on a JVM (IBM jdk and not Oracle's) inside of a Tomcat v7 server with the following properties
JVM info
- Java Version: 1.6.0
- Java Vendor: IBM Corporation
- Java Specification Version: 1.6
- Java Specification Vendor: Sun Microsystems Inc.
- Java Specification Name: Java Platform API Specification
- JVM Version: 2.4
- JVM Vendor: IBM Corporation
- JVM Name: IBM J9 VM
- JVM Specification Version: 1.0
- JVM Specification Vendor: Sun Microsystems Inc.
- JVM Specification Name: Java Virtual Machine Specification
- JVM Management Specification Version: 1.0
- Java Compiler: j9jit24
- Java Class Format Version: 50.0
Relevant System properties
- -Dsun.nio.ch.disableSystemWideOverlappingFileLockCheck=true
- -Doracle.net.ssl_version=3
- -Djavax.xml.stream.XMLInputFactory=com.ibm.xml.xlxp.api.stax.XMLInputFactoryImpl
- -Djavax.xml.stream.XMLOutputFactory=com.ibm.xml.xlxp.api.stax.XMLOutputFactoryImpl
- -Djavax.xml.stream.XMLEventFactory=com.ibm.xml.xlxp.api.stax.XMLEventFactoryImpl
- -Djava.awt.headless=true
- -Dfile.encoding=UTF-8
- -Dcom.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace=false
- -Dcom.sun.xml.ws.transport.http.client.HttpTransportPipe.dump=true
Using Metro (with WSIT) version 2.3 to call .Net SOAP services that require WS-Security and Ws-Reliability spec's and getting this error
info about the service's wsdl
The wsdl defines the RM Assertion.
I'm wondering if this sequence number could possibly be an old message that the server already thinks is done, but the client still thinks it needs to be resubmitted and acknowledged. At this point it hangs on this problem trying to complete the message and no other messages can be completed
Exception trace
Caused by: com.sun.xml.ws.rx.rm.runtime.sequence.UnknownSequenceException: WSRM1124: No sequence registered with id [ urn:uuid:7b7df40c-0d0c-49ee-aabd-cd37ec8ce79d ] at com.sun.xml.ws.rx.rm.runtime.sequence.invm.InVmSequenceManager.getSequence(InVmSequenceManager.java:307) at com.sun.xml.ws.rx.rm.runtime.sequence.invm.InVmSequenceManager.getOutboundSequence(InVmSequenceManager.java:339) at com.sun.xml.ws.rx.rm.runtime.SourceMessageHandler.registerMessage(SourceMessageHandler.java:87) at com.sun.xml.ws.rx.rm.runtime.ClientTube.processRequest(ClientTube.java:191) at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:1136) at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:1050) at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:1019) at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:877) at com.sun.xml.ws.client.Stub.process(Stub.java:464) at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:174) at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:108) at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:91) at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:154) at com.sun.proxy.$Proxy85.get(Unknown Source)
Metro logs
Jul-19-2014 15:22:26.581 (ajp-bio-8009-exec-4:28) FINER [com.sun.xml.ws.api.pipe.Fiber___doRun] engine-Metro/2.3 (tags/2.3-7528; 2013-04-29T19:34:10+0000) JAXWS-RI/2.2.8 JAXWS/2.2 svn-revision#unknown: Stub for SomeURL fiber-18 com.sun.xml.ws.handler.ClientLogicalHandlerTube@1dbb1dbb.processException(com.sun.xml.ws.rx.rm.runtime.sequence.UnknownSequenceException: WSRM1124: No sequence registered with id [ urn:uuid:7b7df40c-0d0c-49ee-aabd-cd37ec8ce79d ]) Jul-19-2014 15:22:26.581 (ajp-bio-8009-exec-4:28) FINER [com.sun.xml.ws.api.pipe.Fiber___doRun] engine-Metro/2.3 (tags/2.3-7528; 2013-04-29T19:34:10+0000) JAXWS-RI/2.2.8 JAXWS/2.2 svn-revision#unknown: Stub for SomeURl fiber-18 com.sun.xml.ws.handler.ClientLogicalHandlerTube@1dbb1dbb returned with com.sun.xml.ws.api.pipe.NextAction@78467846 [kind=THROW,next=null,packet=null,throwable=com.sun.xml.ws.rx.rm.runtime.sequence.UnknownSequenceException: WSRM1124: No sequence registered with id [ urn:uuid:7b7df40c-0d0c-49ee-aabd-cd37ec8ce79d ]]
My Questions
- What is the root cause of this, what is Metro trying to do?
- I googled this issue and all I got is that I need to set some system property which I already did (see above). Has anyone seen this to guide me through a workaround? In tracing the InVmSequenceManager it seems that the UUID is not in memory map so the logic is throwing the exception above. Maybe one solution would be to configure my own Sequence Manager however I am not sure how to do that.
Thanks in advance,