Struts 1 mix URL pattern *.do с обычными URL web.xml

У меня следующая ситуация в стойке 1 приложения.

Старая функциональность приложения работает со стояками 1 и имеет следующее отображение сервлетов (я думаю, что это стандартный способ работы).

<servlet-mapping>
        <servlet-name>action</servlet-name>
        <url-pattern>*.do</url-pattern>
 </servlet-mapping>

Я написал некоторые новые функции (json webservices) также в стойках 1 со стойками Actions.

Я хотел бы, чтобы эти URL-адреса были доступны без расширения.do, но старые URL-адреса должны работать с расширением *.do.

Я пробовал несколько вещей, таких как шаблон / url, но это нарушает загрузку статических ресурсов.

Кто-нибудь знает как это сделать?

1 ответ

Решение

Я решил эту проблему по-другому. Я использовал переписчик URL Tuckey, чтобы достичь своей цели.

http://www.tuckey.org/urlrewrite/

Я сделал перенаправитель переписывателя

services/someService?parma1=value1¶m2=value2 to severices.someService.do?parma1=value1¶m2=value2

Конфигурация в urlrewrite.xml для этого выглядит следующим образом

<urlrewrite use-context="true">
    <rule>
        <from>^/services/someService$</from>
        <to last="true">/someService.do?%{QUERY_STRING}</to>
    </rule>
</urlrewrite>

Остальную информацию можно найти в руководстве.

Другие вопросы по тегам