我正在尝试使用 jax-ws 为 WSO2 Identity Server 管理服务生成存根https://xx.xx.xx.xx:9447/services/RemoteUserStoreManagerService?wsdl https://xx.xx.xx.xx:9447/services/RemoteUserStoreManagerService?wsdl.
我已经下载了 wsdl,但是当我运行时:
wsimport -p org.wso2 RemoteUserStoreManagerService.xml
我收到以下错误
[ERROR] operation "updateCredential" has an invalid style
line 679 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "setUserClaimValue" has an invalid style
line 683 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "deleteUserClaimValues" has an invalid style
line 692 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "deleteUserClaimValue" has an invalid style
line 696 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateCredentialByAdmin" has an invalid style
line 705 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "deleteRole" has an invalid style
line 739 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "deleteUser" has an invalid style
line 748 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateRoleName" has an invalid style
line 762 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateRoleListOfUser" has an invalid style
line 766 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "addUser" has an invalid style
line 780 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "addRole" has an invalid style
line 784 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateUserListOfRole" has an invalid style
line 788 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "setUserClaimValues" has an invalid style
line 797 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateCredential" has an invalid style
line 857 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "setUserClaimValue" has an invalid style
line 878 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "deleteUserClaimValues" has an invalid style
line 887 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "deleteUserClaimValue" has an invalid style
line 908 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateCredentialByAdmin" has an invalid style
line 917 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "deleteRole" has an invalid style
line 1010 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "deleteUser" has an invalid style
line 1019 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateRoleName" has an invalid style
line 1040 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateRoleListOfUser" has an invalid style
line 1061 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "addUser" has an invalid style
line 1094 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "addRole" has an invalid style
line 1103 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateUserListOfRole" has an invalid style
line 1112 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "setUserClaimValues" has an invalid style
line 1121 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateCredential" has an invalid style
line 1205 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "setUserClaimValue" has an invalid style
line 1226 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "deleteUserClaimValues" has an invalid style
line 1235 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "deleteUserClaimValue" has an invalid style
line 1256 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateCredentialByAdmin" has an invalid style
line 1265 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "deleteRole" has an invalid style
line 1358 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "deleteUser" has an invalid style
line 1367 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateRoleName" has an invalid style
line 1388 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateRoleListOfUser" has an invalid style
line 1409 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "addUser" has an invalid style
line 1442 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "addRole" has an invalid style
line 1451 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "updateUserListOfRole" has an invalid style
line 1460 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] operation "setUserClaimValues" has an invalid style
line 1469 of file:/C:/tmp/RemoteUserStoreManagerService.xml
[ERROR] missing required property "style" of element "operation"
Failed to parse the WSDL.
以下是出现第一个错误的文件第 679 行附近的 wsdl 架构(未发布整个架构,因为它相当大):
<wsdl:operation name="updateCredential">
<wsdl:input message="ns:updateCredentialRequest" wsaw:Action="urn:updateCredential"/>
<wsdl:fault message="ns:RemoteUserStoreManagerServiceUserStoreException" name="RemoteUserStoreManagerServiceUserStoreException" wsaw:Action="urn:updateCredentialRemoteUserStoreManagerServiceUserStoreException"/>
</wsdl:operation>
<wsdl:operation name="setUserClaimValue">
<wsdl:input message="ns:setUserClaimValueRequest" wsaw:Action="urn:setUserClaimValue"/>
<wsdl:fault message="ns:RemoteUserStoreManagerServiceUserStoreException" name="RemoteUserStoreManagerServiceUserStoreException" wsaw:Action="urn:setUserClaimValueRemoteUserStoreManagerServiceUserStoreException"/>
</wsdl:operation>
<wsdl:operation name="getUserClaimValuesForClaims">
<wsdl:input message="ns:getUserClaimValuesForClaimsRequest" wsaw:Action="urn:getUserClaimValuesForClaims"/>
<wsdl:output message="ns:getUserClaimValuesForClaimsResponse" wsaw:Action="urn:getUserClaimValuesForClaimsResponse"/>
<wsdl:fault message="ns:RemoteUserStoreManagerServiceUserStoreException" name="RemoteUserStoreManagerServiceUserStoreException" wsaw:Action="urn:getUserClaimValuesForClaimsRemoteUserStoreManagerServiceUserStoreException"/>
</wsdl:operation>
尝试在所有 wsdl 操作中添加输出消息。有趣的是注意到wsimport
不抱怨getUserClaimValuesForClaims
操作,并且该方法已定义输出消息。
EDIT:您可以毫无恐惧地编辑 wsdl,因为这些有问题的方法具有 void 返回类型,因此您可以将任何您想要的内容作为返回类型并忽略它。换句话说,当调用 Web 服务时,您只对输入参数感兴趣,因为这些方法实际上不返回任何内容。因此,请执行以下操作:
- 复制 wsdl,例如命名它
client.wsdl
- 将输出消息添加到所有没有输出消息的操作
- 生成 Web 服务客户端
client.wsdl
(don't改变服务!)
- 调用 Web 服务方法并忽略这些“有问题”的方法的返回类型
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)