Java,使用用户名和密码访问安全的WSO2 Web服务

时间:2015-07-10 02:53:47

标签: java web-services wso2 wso2esb

我有一个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);

1 个答案:

答案 0 :(得分:1)

不确定这是否涵盖您的方案,但this博客文章详细说明了如何使用Java访问用户名 - 令牌安全服务。您需要在信任库中拥有服务器的证书,并且需要为存根提供用户名和密码。