禁用JBoss上的自动wsdl发布(EAP6)

时间:2014-07-31 13:01:39

标签: java web-services jboss wsdl

默认情况下,如果客户端访问http://somehost.com/someservice?wsdl,大多数应用程序服务器会自动生成WSDL。我的目标是在JBoss EAP6上禁用此功能。这不是为什么应该(或不应该)这样做,而是关于如何做。

这是我已经尝试过的事情:

  • 使用JBoss中配置的urlrewrite,如https://community.jboss.org/thread/223243中所述。不幸的是,我无法使其工作,因为建议的模式似乎符合任何要求。我的猜测是这是一个错误,因为模式对我来说是正确的。

  • 使用网络应用程序urlrewriter(Tuckey urlrewrite)不起作用,因为请求在被urlrewriter过滤器处理之前被JBoss截获。

  • 在Weblogic中有一个明确的功能来启用或禁用自动WSDL生成(请参阅docs.oracle.com/cd/E13222_01/wls/docs100/webserv_ref/dd.html)但我无法找到类似的东西对于JBoss。

赞赏任何意见。

1 个答案:

答案 0 :(得分:0)

我在standalone.xml中使用:

<virtual-server name="default-host" enable-welcome-root="true">
  <alias name="localhost"/>
  <rewrite pattern="(.*)" substitution="-" flags="F">
    <condition test="%{QUERY_STRING}" pattern="wsdl"  flags="OR,NC"/>
  </rewrite>
</virtual-server>