客户端与axis2 1.6.1建立连接时出现未知错误

时间:2012-01-09 09:27:59

标签: java eclipse weblogic axis2

我开发了一个连接web服务和axis2 1.6.1的客户端。但是,我遇到了以下错误,而一切都适用于axis2 1.5.2

错误在线 _operationClient.execute(true); //inside TestServiceStub

  

[WARN]无法在jar上确定StAX实现的方言:file:/ D:/Test/TestClient/TestClient.jar!/   org.apache.axis2.AxisFault:com.ctc.wstx.exc.WstxUnexpectedCharException:意外字符':'(代码58)除了空格或'>'或“/>”    在[row,col {unknown-source}]:[1,199]           在org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)           at my.dev.TestServiceStub.fromOM(TestServiceStub.java:2864)           at my.dev.TestServiceStub.test(TestServiceStub.java:192)           at my.dev.TestClient.main(TestClient.java:252)   引起:org.apache.axiom.om.OMException:com.ctc.wstx.exc.WstxUnexpectedCharException:意外字符':'(代码58)除了空格或'>'要么    “/>” 中    在[row,col {unknown-source}]:[1,199]           在org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:293)           在org.apache.axiom.om.impl.SwitchingWrapper.updateNextNode(SwitchingWrapper.java:1099)           在org.apache.axiom.om.impl.SwitchingWrapper。(SwitchingWrapper.java:234)           在org.apache.axiom.om.impl.OMStAXWrapper。(OMStAXWrapper.java:73)           在org.apache.axiom.om.impl.llom.OMStAXWrapper。(OMStAXWrapper.java:52)           在org.apache.axiom.om.impl.llom.OMElementImpl.getXMLStreamReader(OMElementImpl.java:795)           at org.apache.axiom.om.impl.llom.OMElementImpl.getXMLStreamReaderWithoutCaching(OMElementImpl.java:765)           at my.dev.TestServiceStub.fromOM(TestServiceStub.java:2858)           ......还有2个   引起:com.ctc.wstx.exc.WstxUnexpectedCharException:意外字符':'(代码58)除了空格或'>'或“/>”    在[row,col {unknown-source}]:[1,199]           在com.ctc.wstx.sr.StreamScanner.throwUnexpectedChar(StreamScanner.java:648)           在com.ctc.wstx.sr.BasicStreamReader.handleNsAttrs(BasicStreamReader.java:2965)           在com.ctc.wstx.sr.BasicStreamReader.handleStartElem(BasicStreamReader.java:2936)           在com.ctc.wstx.sr.BasicStreamReader.nextFromTree(BasicStreamReader.java:2848)           在com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1019)           at org.apache.axiom.util.stax.wrapper.XMLStreamReaderWrapper.next(XMLStreamReaderWrapper.java:225)           at org.apache.axiom.util.stax.dialect.DisallowDoctypeDeclStreamReaderWrapper.next(DisallowDoctypeDeclStreamReaderWrapper.java:34)           在org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext(StAXOMBuilder.java:672)           在org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:214)           ... 9更多

在下面添加了代码并且警告已经解决。

System.setProperty(“javax.xml.stream.XMLInputFactory”,“com.ctc.wstx.stax.WstxInputFactory”); System.setProperty(“javax.xml.stream.XMLOutputFactory”,“com.ctc.wstx.stax.WstxOutputFactory”); System.setProperty(“javax.xml.stream.XMLEventFactory”,“com.ctc.wstx.stax.WstxEventFactory”);

然而,我遇到了另一个问题 org.apache.axis2.AxisFault:com.ctc.wstx.exc.WstxUnexpectedCharException:意外字符':'(代码58)除了空格或'>'或“/>” at [row,col {unknown-source}]:[1,199] at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)

2 个答案:

答案 0 :(得分:1)

堆栈跟踪表明XML格式错误(在开始标记中某处存在':'字符,这是不期望的)或XML解析器存在问题。您使用的是什么版本的Woodstox?警告“无法确定StAX实现的方言”可能表示不支持您使用的版本。我强烈建议您尝试摆脱该警告(我实际上是编写生成该警告的代码的人)。否则,您可能会遇到Axis2中的细微问题。

答案 1 :(得分:0)

如果您使用的是SOAP WS,请在Web方法调用中检查XML请求参数。 XML解析级别可能存在一些问题。