Проверка веб-сервисов Spring - PullRequest
0 голосов
/ 04 марта 2012

У меня есть два вида веб-сервисов:

  1. веб-сервисы, для которых требуется проверка запроса
  2. другие, которые не должны проверяться Spring.

Возможно ли это весной?

Я знаю о ValidatingInterceptor, но можем ли мы иметь два из них?

Причина не проверки одного типа веб-службы заключается в том, что запрос не определен: что отправлено в запросе, зависит от многих вещей.

Я использую Spring 3.0 со схемой XSD для своих веб-сервисов.

Есть предложения?Adi

1 Ответ

2 голосов
/ 05 апреля 2012

Вы можете использовать два payloadroot внутри перехватчика для этой цели.

Все, что вам нужно сделать, это установить validateRequest / validateResponse как true или false, как требуется.

Вот пример:

<sws:interceptors>
    <sws:payloadRoot namespaceUri="uri1">
        <bean id="validator1forUri1"
            class="org.springframework.ws.soap.server.endpoint.interceptor.PayloadValidatingInterceptor"
            p:schema="classpath:/WEB-INF/xsds/tovalidate.xsd" p:validateRequest="true"
            p:validateResponse="true" />
    </sws:payloadRoot>

    <sws:payloadRoot namespaceUri="uri2">
        <bean id="validator2forUri2"
            class="org.springframework.ws.soap.server.endpoint.interceptor.PayloadValidatingInterceptor"
            p:schema="classpath:/WEB-INF/xsds/nottovalidate.xsd"
            p:validateRequest="false" p:validateResponse="false" />
    </sws:payloadRoot>
</sws:interceptors>
...