在axis2中调用与特定Web服务调用相关的处理程序

时间:2010-11-23 16:01:49

标签: soap axis2

我正在使用Axis2来创建Web服务。我需要验证收到的soap请求(是否使用定义的xsd架构进行了抱怨)。

为此我在axis2中使用Handlers。

现在我的问题是我如何指定不同的处理程序,这些处理程序对于不同的webservice调用是非常有用的(在services.xml中)。

例如,对于创建用户,我将使用enp作为http://localhost:8080/axis2/services/createUser

并且对于updateUser,我将调用http://localhost:8080/axis2/services/updateUser

对于每个invokatioon,hadlers必须是不同的。

任何人都可以对此提出任何建议。

谢谢,
纳伦德拉

1 个答案:

答案 0 :(得分:0)

执行您所描述的操作的常用方法是实现模块,然后在services.xml中使用此模块。你可以在这里看到一个详细的例子:http://axis.apache.org/axis2/java/core/docs/modules.html简而言之就是:

  
      
  1. 创建模块实施
  2.   
  3. 创建处理程序
  4.   
  5. 创建module.xml
  6.   
  7. 修改“axis2.xml”(如果需要自定义阶段)
  8.   
  9. 修改“services.xml”以在部署时参与模块。
  10.   
  11. 打包在“.mar”(模块存档)
  12.   
  13. 在Axis2中部署模块
  14.   

使用services.xml中的模块非常简单:

  

< module ref =“logging”/>

请注意,每个操作可能会使用一个模块。另请注意此主题:http://www.mail-archive.com/axis-user@ws.apache.org/msg06058.html

  

所以建议的方法是制作一个   模块与必要的处理程序和   添加处理程序的功能   服务将被完全删除   下一个版本。

我希望这可以解决问题。

干杯!