我有一个Maven项目,并成功连接到使用WSO2创建的不安全的Web服务。启用安全性后,如何传递凭据(即用户名和密码)以连接到服务?
首先,我可以通过在Java代码本身中引入用户名和密码来快速完成吗?
我是否必须生成一份证书,就像我在一些文章中看到的那样,或者还有其他方法可以完成这项工作吗?
我的pom.xml
有以下条目
<execution>
<id>getTestService</id>
<goals>
<goal>wsdl2code</goal>
</goals>
<configuration>
<unpackClasses>true</unpackClasses>
<databindingName>xmlbeans</databindingName>
<packageName>com.test.esb</packageName>
<wsdlFile>http://test:8080/services/getTestService?wsdl</wsdlFile>
<syncMode>sync</syncMode>
</configuration>
</execution>
在我的Java类中,我使用下面的代码调用该服务。
final TestServiceStub testStub = new TestServiceStub();
final TestServiceDocument testDoc =
TestServiceDocument.Factory.newInstance();
final TestService testReq = TestService.Factory.newInstance();
...
testDoc.setTestService(testReq);
testStub.TestService(testDoc);
答案 0 :(得分:1)
不确定这是否涵盖您的方案,但this博客文章详细说明了如何使用Java访问用户名 - 令牌安全服务。您需要在信任库中拥有服务器的证书,并且需要为存根提供用户名和密码。