По умолчанию большинство серверов приложений автоматически генерируют WSDL, если клиент обращается к http://somehost.com/someservice?wsdl. Моя цель - отключить эту функцию на JBoss EAP6. Речь идет не о том, почему это должно быть (или не должно) быть сделано, а о том, как это сделать.
Вот то, что я уже пробовал:
Использование urlrewrite, сконфигурированного в JBoss, как описано в https://community.jboss.org/thread/223243. К сожалению, мне не удалось заставить его работать, поскольку предлагаемый шаблон соответствует любому запросу. Я предполагаю, что это ошибка, потому что шаблон выглядит правильно для меня.
Использование веб-приложения urlrewriter (Tuckey urlrewrite) не работает, потому что запрос перехватывается JBoss до его обработки фильтром urlrewriter.
В Weblogic есть явная функция включения или отключения автоматического создания WSDL (см. Docs.oracle.com/cd/E13222_01/wls/docs100/webserv_ref/dd.html), но я не смог найти что-то подобное для JBoss.
Любой вход оценивается.
Я использовал в 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>