【发布时间】:2014-10-21 09:32:14
【问题描述】:
我正在尝试从 Java 客户端(AXIS 1.6.2 和 Rampart)访问通过 WS-Security 保护的 .NET Web 服务。
客户端部分:
ConfigurationContext ctx = ConfigurationContextFactory.createConfigurationContextFromFileSystem("client-repo", null);
AdminServiceStub stub = new AdminServiceStub(null,url);
WSDL (.NET WebService) 使用“sp:SecureConversationToken sp:IncludeToken”
<sp:SecureConversationToken sp:IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/AlwaysToRecipient">
调用 wsdl2java 生成的 AdminServiceStub 失败并出现 IllegalArgumentException
生成的存根:
(__operation).getMessage(org.apache.axis2.wsdl.WSDLConstants.MESSAGE_LABEL_OUT_VALUE).getPolicySubject().attachPolicy(getPolicy("<wsp:Policy xmlns:wsp=\"http://schemas.xmlsoap.org/..."));
此生成的代码行失败:
java.lang.IllegalArgumentException: SecurityContextToken 不包含任何 sp:IncludeToken 属性
有人知道如何处理这个 sp:IncludeToken 吗?
【问题讨论】:
-
您如何生成客户端代码。 Eclipse 还是通过命令行?
标签: java .net web-services ws-security rampart