2015-01-20 2 views
0

Я создал веб-сервис Jax-WS в своем проекте mvc Spring в Spring. Все методы веб-службы работали нормально, как и ожидалось, когда я тестировал операции wsdl с использованием SOAP-UI.Jax-WS и конфликт Spring-безопасности

Я включил фильтр пружинной защиты для аутентификации и авторизации. Теперь я мог получить доступ к wsdl, но не смог выполнить какую-либо операцию. Я получаю следующее сообщение об ошибке в SOAP UI:

HTTP Status 405 - метод запроса & # 39; POST & # 39; не поддерживается

Ниже фильтр весна-безопасности, что я добавил в web.xml:

<filter> 
    <filter-name>springSecurityFilterChain</filter-name> 
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> 
</filter>  
<filter-mapping> 
    <filter-name>springSecurityFilterChain</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 

И мой WSDL есть по адресу: http://localhost:8080/MyProject/MyService?wsdl

Пожалуйста, дайте мне знать, как преодолеть Эта проблема.

+0

Вы обрабатываете метод POST в своем контроллере? Вы определили какие-либо ограничения безопасности в вашем web.xml? – ingenious

+0

@ingenious, большое спасибо за информацию. Нет, я не справляюсь с этим в своем контроллере. Я создал класс java и выставил его как web-сервис jax-ws. Согласно вашему предложению, я добавил в MyService в web.xml, пропуская все ограничения. Но все-таки проблема есть. –

+0

Чтобы включить ограничение безопасности, я следил за этим сообщением: http://stackoverflow.com/questions/15024235/how-to-exclude-one-url-from-authorization –

ответ

1

Получил это! Включен следующий элемент в spring-security.xml:

<http pattern="/MyService**" security="none"/>