WSO2上的自定义Uri或端点

时间:2013-05-09 14:53:20

标签: web-services uri wso2 endpoint

我们刚刚安装了WSO2 ESB,我们正在尝试使用海关端点创建一些代理服务。

默认的端点格式为:

  • http:// {host}:{port} / services / {代理服务名称}

我希望有类似的东西:

  • http:// {host}:{port} / services / utilities / {Proxy Service Name}
  • http:// {host}:{port} / services / public / {代理服务名称}

我遵循了本教程:

但是我们遇到了问题,当我向自定义端点发送请求时,我没有回答。

建议?

2 个答案:

答案 0 :(得分:1)

我认为您能够正确创建自定义端点并且“我没有回答”意味着您没有得到任何回复。如果是以下情况可能的原因,

  1. 代理服务端点未收到请求
  2. 代理服务未正确配置以回复
  3. 因此,测试1是否是您可以简单地在inSequence中放置具有以下配置的日志中介的原因,

    < log level =“full”/>

    然后,如果代理服务收到一条消息,它将在控制台中记录它。如果可行,请发布您的代理服务配置以检查它是否已正确定义。

答案 1 :(得分:0)

好吧,似乎我们找到了解决方案,我将恢复完整的解决方案。

如教程所示,要使代理服务端点成本化,您必须在axis2.xml配置上添加以下处理程序:

<handler name="CustomURIBasedDispatcher" class="org.apache.synapse.core.axis2.CustomURIBasedDispatcher"/>

然后,您可以在设计视图或源视图上自定义端点,我选择了源视图,添加了此参数:

<parameter name="ServiceURI">/services/intern</parameter>

自定义端点自动生成为:

http://{host}:{port}/services/intern.myWebservice

但我没有为我工作过。如果我向自定义端点发送请求,我没有回应。

我已经解决了问题,在“ServiceURI”参数中添加了服务名称:

<parameter name="ServiceURI">/services/intern/myWebService</parameter>

然后您必须将请求发送到以下端点:

http://{host}:{port}/services/intern/myWebService

所以现在每个代理服务都有一个自定义端点。

感谢Malith的帮助。