肥皂。 JAX-WS。授权
SOAP. JAX-WS. Authorization
- 所以,我已经通过 -wsimport 将 WSDL 解析到我的项目中。
- 然后,我初始化它们
- 做了一些请求
soapServicePortType = 接口,其中是 WSDL 的方法。
getHouseCall = 获取信息的方法
但是我应该授权
正如我在堆栈跟踪中看到的,HttpTransportPipe 构建消息 class。在这个 class 中,我找到了方法“addBasicAuth”,当我可以插入登录并通过时。
所以,我有 2 个问题:
- 如何让我的请求在构建请求时使用“addBasicAuth”方法
- 如何添加一个 header (cookie) 到它?
我是这样解决的:
((BindingProvider) /*Insert InterfaceClass of port WSDL*/).getRequestContext().put(BindingProvider.USERNAME_PROPERTY, "login");
((BindingProvider) /*Insert InterfaceClass of port WSDL*/).getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, "password");
而且不需要发送 cookies
- 所以,我已经通过 -wsimport 将 WSDL 解析到我的项目中。
- 然后,我初始化它们
- 做了一些请求
soapServicePortType = 接口,其中是 WSDL 的方法。 getHouseCall = 获取信息的方法
但是我应该授权
正如我在堆栈跟踪中看到的,HttpTransportPipe 构建消息 class。在这个 class 中,我找到了方法“addBasicAuth”,当我可以插入登录并通过时。
所以,我有 2 个问题:
- 如何让我的请求在构建请求时使用“addBasicAuth”方法
- 如何添加一个 header (cookie) 到它?
我是这样解决的:
((BindingProvider) /*Insert InterfaceClass of port WSDL*/).getRequestContext().put(BindingProvider.USERNAME_PROPERTY, "login");
((BindingProvider) /*Insert InterfaceClass of port WSDL*/).getRequestContext().put(BindingProvider.PASSWORD_PROPERTY, "password");
而且不需要发送 cookies