首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我们从Axis 1.6.2 / Rampart 1.6.2升级到Axis 1.7.2 / Rampart 1.7.0时,不会调用密码处理程序

当我们从Axis 1.6.2 / Rampart 1.6.2升级到Axis 1.7.2 / Rampart 1.7.0时,不会调用密码处理程序
EN

Stack Overflow用户
提问于 2016-10-07 10:57:51
回答 1查看 678关注 0票数 0

我们在/WEB/services中使用axis2 WEB服务打包我们的WAR。

它是使用Axis 1.5.1开发的,几年前升级到Axis 1.6.2/Rampart 1.6.2。现在我们需要升级到Axis 1.7.2 / rampart 1.7.0。

我们将usernameSecurity添加到我们的We服务中。我们还打包了一个webservices客户端应用程序示例。一切都很顺利。但是,一旦我们升级到Axis1.7.2/Rampart1.7.0,PasswordCallBackHandler.handle方法就不会被调用。因此,我们的webservices客户端中断了。这就是我如何添加密码回调client.axis2.xml,以便在请求SOAP中添加用户名/pwd。

代码语言:javascript
复制
<axisconfig name="AxisJava2.0">
  <module ref="rampart"/>
  <parameter name="OutflowSecurity">
  <action>
     <items>UsernameToken</items>
     <user>system</user>

     <passwordCallbackClass>com.web.ws.connector.CSPWCBHandler</passwordCallbackClass>
     <passwordType>PasswordText</passwordType>
  </action>

我的services.xml如下所示:

代码语言:javascript
复制
<service name="labware_weblims_listFunctions" targetNamespace="http://www.labware.com/webservice">
  <description>Service description for labware_weblims_listFunctions</description>
   <schema schemaNamespace="http://www.labware.com/webservice"/>
   <parameter name="ServiceClass">com.web.ws.service.ListService</parameter>
  <parameter name="disasbleREST">true</parameter>
  <operation name="listMethods">
  <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
  </operation>
  <module ref="soapmonitor"/>
  <module ref="rampart"/>
  <parameter name="InflowSecurity">
    <action>
    <items>UsernameToken</items>
     <passwordCallbackClass>com.web.ws.control.PWCBHandler</passwordCallbackClass>
    </action>
  </parameter>
</service>

当我升级到Axis1.7.2时,事情就中断了。PasswordCallBackHandlers不被调用。

我搜索了Services.xml dtd,但没有找到。我猜我将不得不将CallBackHandlers添加为RampartConfig。还有别的办法来解决这个问题吗。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-14 07:41:02

我解决了这个问题。在我的问题中列出的PasswordCallBackHandler和client.axis2.xml中的services.xml条目是ApacheRampart1.0风格的配置。他们使用Axis1.5.1和Axis1.6.2库。在Axis2 1.7.0中,对Rampart 1.0配置的支持已经停止。请参阅以下链接

https://axis.apache.org/axis2/java/rampart/release-notes/1.7.0.html

工作的标准方法是创建策略文件并将PasswordCallBackHandler添加为RampartConfig。如果有人需要的话,我会非常乐意帮忙的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39915584

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档