我为Rampart创建了一个新的安全策略令牌,比如SignedSupportingToken类型。它在policy.xml
中成功生成了带有自定义标记的请求<sp:SignedSupportingTokens xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
<wsp:Policy>
<sp:CustomToken sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient" />
</wsp:Policy>
</sp:SignedSupportingTokens>
现在我想部署一个从客户端请求自定义令牌的服务。为此,我将自定义jar添加到tomcat / webapps中的axis / lib以及部分上面的服务的services.xml并进行部署。
但它不会为服务生成wsdl并显示消息“Internal Error”。当我检查发现异常后的tomcat堆栈跟踪时。
[INFO] getData request failed for dialect, http://schemas.xmlsoap.org/wsdl/
org.apache.axis2.dataretrieval.DataRetrievalException: javax.xml.stream.XMLStrea
mException: No open start element, when trying to write end element
at org.apache.axis2.dataretrieval.WSDLDataLocator.outputInlineForm(WSDLD
ataLocator.java:135)
at org.apache.axis2.dataretrieval.WSDLDataLocator.getData(WSDLDataLocato
r.java:73)
etc...
可以解决这个问题的方法。 任何建议都是最受欢迎的。
感谢和问候,
shyameniw