2016-05-03 2 views
0

Мы можем иметь как Struts1, так и 2 в одном приложении. У меня более 100 URL-адресов, определенных в struts1, и я переношу эти URL-адреса в Struts2.Может ли Struts1 и Struts2 иметь одно и то же расширение url (* .do) в одном приложении?

Предположим, что сказать, что мой URL, как быть,

1. something1.do 
2. something2.do 
.... 
100. something100.do 

И из сказанного выше URL, я хочу, чтобы настроить некоторые URL, в Struts2.

Поэтому мой вопрос мы можем настроить некоторый набор, имеющее расширение URL о (.do в struts1 и некотором наборе URL, в Struts2.

ответ

1

Да, вы можете, но это будет осложнять, если необходимо сохранить существующие адреса .

Если вы не можете изменить шаблон URL Struts 1 и не можете префикс либо с уникальным пространством имен, вам нужно будет использовать статические ресурсы Struts 2 из файловой системы, а не позволить S2 обрабатывать его. вы может изменить S1 URL-адреса, тогда это прямолинейно, изменив отображение сервлетов S1.

Другой вариант - использовать фильтр или перехватчик S2 для сопоставления известных S1-сопоставлений с другим пространством имен в приложении S1. Это требует некоторых незначительных модификаций web.xml, если вы хотите отобразить старый URL S1.

Было бы проще и проще использовать разные расширения. Нет фундаментальных проблем при смешивании двух фреймворков в одном приложении. Когда вы связываете страницу S1 с действием S2, вам нужно будет создать URL-адрес вручную, так как taglib не знают друг о друге.

+0

у меня есть пример :) –

+0

@JeyGanesh Я бы просто искал веб-специфику, будет зависеть от ваших конечных требований, существующей структуры приложения и т. Д. –

Смежные вопросы