У нас есть java-приложение, работающее на JVM (IBM jdk, а не Oracle) внутри сервера Tomcat v7 со следующими свойствами
Информация JVM
- Java-версия: 1.6.0
- Поставщик Java: корпорация IBM
- Версия спецификации Java: 1.6
- Поставщик спецификации Java: Sun Microsystems Inc.
- Название спецификации Java: Спецификация API платформы Java
- Версия JVM: 2.4
- Поставщик JVM: корпорация IBM
- Имя JVM: ВМ IBM J9
- Версия спецификации JVM: 1.0
- Поставщик спецификации JVM: Sun Microsystems Inc.
- Название спецификации JVM: Спецификация виртуальной машины Java
- Версия спецификации управления JVM: 1.0
- Компилятор Java: j9jit24
- Версия формата класса Java: 50.0
Соответствующие свойства системы
- -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=истина
- -Dfile.encoding=UTF-8
- -Dcom.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace=false
- -Dcom.sun.xml.ws.transport.http.client.HttpTransportPipe.dump=true
Использование Metro (с WSIT) версии 2.3 для вызова служб .Net SOAP, для которых требуются спецификации WS-Security и Ws-Reliability, и получение этой ошибки
информация о сервисе wsdl
wsdl определяет утверждение RM.
Мне интересно, может ли этот порядковый номер быть старым сообщением, которое сервер уже считает выполненным, но клиент все еще считает, что его необходимо повторно отправить и подтвердить. В этот момент он зависает на этой проблеме, пытаясь завершить сообщение, и никакие другие сообщения не могут быть завершены.
Трассировка исключений
Причина: com.sun.xml.ws.rx.rm.runtime.sequence.UnknownSequenceException: WSRM1124: последовательность не зарегистрирована с идентификатором [ urn:uuid:7b7df40c-0d0c-49ee-aabd-cd37ec8ce79d ] в com.sun.xml. ws.rx.rm.runtime.sequence.invm.InVmSequenceManager.getSequence(InVmSequenceManager.java:307) в com.sun.xml.ws.rx.rm.runtime.sequence.invm.InVmSequenceManager.getOutboundSequence(InVmSequenceManager.java:339) ) в com.sun.xml.ws.rx.rm.runtime.SourceMessageHandler.registerMessage(SourceMessageHandler.java:87) в com.sun.xml.ws.rx.rm.runtime.ClientTube.processRequest(ClientTube.java:191 ) по адресу com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:1136) по адресу com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:1050) по адресу com. sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:1019) в com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:877) в com.sun.xml. ws.client.Stub.process(Stub.java:464) в com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:174) в com.sun.xml.ws.cl ient.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:108) на com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:91) на com.sun.xml.ws.client.sei. SEIStub.invoke(SEIStub.java:154) на com.sun.proxy.$Proxy85.get(неизвестный источник)
Журналы метро
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 (теги/2.3-7528 ; 2013-04-29T19:34:10+0000) JAXWS-RI/2.2.8 JAXWS/2.2 svn-revision#unknown: Заглушка для SomeURL fiber-18 com.sun.xml.ws.handler.ClientLogicalHandlerTube@1dbb1dbb.processException (com.sun.xml.ws.rx.rm.runtime.sequence.UnknownSequenceException: WSRM1124: последовательность не зарегистрирована с идентификатором [urn:uuid:7b7df40c-0d0c-49ee-aabd-cd37ec8ce79d]) 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: заглушка для SomeURl fiber-18 com.sun.xml.ws.handler.ClientLogicalHandlerTube@1dbb1dbb возвращена с com.sun.xml.ws. api.pipe.NextAction@78467846 [вид=THROW,next=null,packet=null,throwable=com.sun.xml.ws.rx.rm.runtime.sequence.UnknownSequenceException: WSRM1124: последовательность не зарегистрирована с идентификатором [ urn: UUID: 7b7df40c-0d0c-49ee-aabd-cd37ec8ce79 г ]]
Мои вопросы
- В чем основная причина этого, что пытается сделать Metro?
- Я погуглил эту проблему, и все, что я получил, это то, что мне нужно установить какое-то системное свойство, которое я уже сделал (см. Выше). Кто-нибудь видел это, чтобы помочь мне найти обходной путь? При отслеживании InVmSequenceManager кажется, что UUID отсутствует в карте памяти, поэтому логика выдает исключение, описанное выше. Возможно, одним из решений было бы настроить мой собственный диспетчер последовательностей, однако я не уверен, как это сделать.
Заранее спасибо,