[prev in list] [next in list] [prev in thread] [next in thread]
List: kandula-dev
Subject: [jira] [Comment Edited] (AXIS-2624) SOAP header element attributes "mustUnderstand" and "actor" adde
From: "Klerisson Paixao (Jira)" <axis-dev () ws ! apache ! org>
Date: 2021-08-26 17:09:00
Message-ID: JIRA.12362022.1170699233000.935535.1629997740209 () Atlassian ! JIRA
[Download RAW message or body]
[ https://issues.apache.org/jira/browse/AXIS-2624?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17405373#comment-17405373 \
]
Klerisson Paixao edited comment on AXIS-2624 at 8/26/21, 5:08 PM:
------------------------------------------------------------------
Just for the record, I found a workaround: \
[http://mathieuhicauber-java.blogspot.com/2013/05/concurrent-calls-in-axis-14-thread.html]
was (Author: klerisson):
Just for the record, I just found a workaround: \
http://mathieuhicauber-java.blogspot.com/2013/05/concurrent-calls-in-axis-14-thread.html
> SOAP header element attributes "mustUnderstand" and "actor" added twice
> -----------------------------------------------------------------------
>
> Key: AXIS-2624
> URL: https://issues.apache.org/jira/browse/AXIS-2624
> Project: Axis
> Issue Type: Bug
> Components: Serialization/Deserialization
> Affects Versions: 1.4
> Environment: OS: Windows XP Professional SP2
> Application Server: Apache Tomcat 5.5.17
> Reporter: Martin Dreier
> Priority: Major
> Attachments: console transcript.txt
>
>
> Hello,
> the described issue occurs in the following environment: web service A is called \
> from a client. During processing, it calls in turn a web service B, running on the \
> same engine. During the call, a handler is used on the client side, which adds a \
> new SOAP header block. The resulting message: <?xml version="1.0" \
> encoding="utf-8"?> <soapenv:Envelope \
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" \
> xmlns:xsd="http://www.w3.org/2001/XMLSchema" \
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header>
> <wssb:wssbUUID mustUnderstand="0" \
> actor="http://schemas.xmlsoap.org/soap/actor/next" mustUnderstand="0" actor="" \
> xmlns:wssb="http://www.sap.com/wssb">0dd3c106-1028-4ef2-b71e-15f6076383b4</wssb:wssbUUID>
> </soapenv:Header>
> <soapenv:Body>
> <ns1:getAllAvailCardiologists \
> soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" \
> xmlns:ns1="HPIndex"/> </soapenv:Body>
> </soapenv:Envelope>
> As you can see, the attributes "mustUnderstand" and "actor" of the "wssb:wssbUUID" \
> header element appear twice. Debugging has led me to the conclusion that these \
> attribute duplicates are added during serialization at the client side. I have \
> confirmed that immediately before serialization both attributes appear only once \
> each. This is the code in the handler to add the header:
> Name uuidNodeName = currentMessage.getSOAPEnvelope().createName("wssbUUID", \
> "wssb", NAMESPACE); uuidNode = \
> currentMessage.getSOAPHeader().addHeaderElement(uuidNodeName); \
> uuidNode.setMustUnderstand(false); \
> uuidNode.setActor(Constants.URI_SOAP11_NEXT_ACTOR); \
> uuidNode.addTextNode(uuid.toString()); All web services run perfectly well if \
> adding the header is omitted (i.e. the above lines are commented out). This issue \
> occurs on Axis, release 1.4 as well as on the current SVN checkout. It also appears \
> on the latest released Xalan and Xerces versions as well as on their latest SVN \
> checkouts. The above issue leads to a SAXParseException on the server. The message \
> text reads "Attribute "mustUnderstand" was already specified for element \
> "wssb:wssbUUID"". The stack trace of this exception: Thread [http-8080-Processor21] \
> (Suspended (exception SAXParseException)) \
> DeserializationContext(DefaultHandler).fatalError(SAXParseException) line: not \
> available ErrorHandlerWrapper.fatalError(String, String, XMLParseException) line: \
> not available XMLErrorReporter.reportError(XMLLocator, String, String, Object[], \
> short) line: not available XMLErrorReporter.reportError(String, String, Object[], \
> short) line: not available XMLNSDocumentScannerImpl.scanStartElement() line: not \
> available XMLNSDocumentScannerImpl$NSContentDispatcher(XMLDocumentFragmentScannerImpl$FragmentContentDispatcher).dispatch(boolean) \
> line: not available \
> XMLNSDocumentScannerImpl(XMLDocumentFragmentScannerImpl).scanDocument(boolean) \
> line: not available \
> XIncludeAwareParserConfiguration(XML11Configuration).parse(boolean) line: not \
> available XIncludeAwareParserConfiguration(XML11Configuration).parse(XMLInputSource) \
> line: not available SAXParserImpl$JAXPSAXParser(XMLParser).parse(XMLInputSource) \
> line: not available \
> SAXParserImpl$JAXPSAXParser(AbstractSAXParser).parse(InputSource) line: not \
> available SAXParserImpl$JAXPSAXParser.parse(InputSource) line: not available
> SAXParserImpl(SAXParser).parse(InputSource, DefaultHandler) line: not available
> DeserializationContext.parse() line: 227
> SOAPPart.getAsSOAPEnvelope() line: 695
> Message.getSOAPEnvelope() line: 435
> MustUnderstandChecker.invoke(MessageContext) line: 62
> InvocationStrategy.visit(Handler, MessageContext) line: 32
> SOAPService(SimpleChain).doVisiting(MessageContext, HandlerIterationStrategy) \
> line: 118 SOAPService(SimpleChain).invoke(MessageContext) line: 83
> SOAPService.invoke(MessageContext) line: 454
> AxisServer.invokeService(MessageContext) line: 234
> AxisServer.invoke(MessageContext) line: 375
> AxisServlet.doPost(HttpServletRequest, HttpServletResponse) line: 689
> AxisServlet(HttpServlet).service(HttpServletRequest, HttpServletResponse) line: \
> 709 AxisServlet(AxisServletBase).service(HttpServletRequest, HttpServletResponse) \
> line: 327 AxisServlet(HttpServlet).service(ServletRequest, ServletResponse) line: \
> 802 ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse) \
> line: 252 ApplicationFilterChain.doFilter(ServletRequest, ServletResponse) line: \
> 173 StandardWrapperValve.invoke(Request, Response) line: 213
> StandardContextValve.invoke(Request, Response) line: 178
> StandardHostValve.invoke(Request, Response) line: 126
> ErrorReportValve.invoke(Request, Response) line: 105
> StandardEngineValve.invoke(Request, Response) line: 107
> CoyoteAdapter.service(Request, Response) line: 148
> Http11Processor.process(InputStream, OutputStream) line: 869
> Http11Protocol$JmxHttp11ConnectionHandler(Http11BaseProtocol$Http11ConnectionHandler).processConnection(TcpConnection, \
> Object[]) line: 664 PoolTcpEndpoint.processSocket(Socket, TcpConnection, \
> Object[]) line: 527 LeaderFollowerWorkerThread.runIt(Object[]) line: 80
> ThreadPool$ControlRunnable.run() line: 684
> ThreadWithAttributes(Thread).run() line: 595
> This exception is also printed out to the console (stdout), however with a \
> different stack trace. The console transcript is attached to this message. I also \
> found a bug report with a similar issue. However, I do not know if the two are \
> related: https://issues.apache.org/jira/browse/AXIS-1466. Best regards,
> Martin Dreier
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic