java-使用Apache Axis2和Rampart创建WebService客户端

我们要求在IBM Websphere Integration Developer 6.1中创建具有用户名令牌安全性的Web服务.现在,为了测试这一点,我们必须用Java开发Web服务客户端.要求是使用Apache Axis2完成此任务.经过大量阅读之后,我能够使用Axis2为不需要身份验证的简单Web Service生成客户端,并且能够正确地对其进行测试.但是我知道,为了在axis2中使用UserName令牌安全性,需要使用ramart.

现在我需要知道如何在eclipse中将Rampart与Axis2一起使用.我们的系统中未安装apache服务器,但我们将其部署在eclipse中.
即使在阅读了许多相同的文章之后,我仍然无法让Rampart上班.

有人可以指导我完成在Eclipse中配置Rampart的步骤,以及如何使用UserName令牌将其用于WebService客户端生成吗?

到目前为止,我使用Axis2进行以下步骤.
1.创建一个Java项目并将所需的WSDL导入其中.
2.使用WSDL创建WebServiceClient,并生成以下类型的文件
       一种.一个Java接口文件
       b.一个Java代理文件,该文件实现a中提到的接口.
       C.一个Java存根文件,用于扩展org.apache.axis.client.Stub并实现a中提到的接口.
       d.一个Java服务文件,它又是一个接口
       e.一个实现以上接口的java ServiceLocator文件.

因此,我还需要知道如何使用这些文件来测试用户名令牌Web服务.

当我使用动态Web项目执行上述操作时,右键单击WSDL,然后单击生成客户端,将创建ServiceCallBackHandler.java和HttpSrviceStub文件.我如何使用这些来完成测试?

谢谢.

解决方法:

我没有使用ramart作为用户名令牌,但是对于我的服务(签名和加密),IBM文档确实很有帮助.看看:http://www.ibm.com/developerworks/java/library/j-jws4/ Java Web服务:Axis2 WS-Security基础知识;了解如何将Rampart安装到Axis2中并实现UsernameToken处理

对于我的项目,当我使用WS-Security(工作环境)而没有WS-Security(测试环境)时,Java源代码是相同的.我要在客户端执行的所有操作,才能从my_client / axis-repo / conf / axis2.xml启用/禁用Ramart配置.看一下:http://wso2.org/library/240,您将在其中找到可能对您有用的示例配置:

<parameter name="OutflowSecurity">
        <action>
                <items>UsernameToken</items>
                <user>bob</user>
                <passwordCallbackClass>org.apache.rampart.
                samples.sample02.PWCBHandler</passwordCallbackClass>
        </action>
</parameter>
上一篇:org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:467)的快速修复


下一篇:小白学webservice