2009-02-09 5 views
1

Я работаю над webapp, который использует struts 2, spring, URL Rewrite Filter и пару других зависимостей, которые я не уверен, имеют отношение к этому , Один из Строят URL, строятся следующим образом:Получение struts s: url includeseparams для работы на jboss при развертывании как ROOT.war

<s:url id="blah" includeParams="get"> 

Это прекрасно работает при развертывании в JBoss, как обычный веб-приложение заглядывало развертывание /. Итак, все URL-адреса имеют форму http://localhost:8080/mywebapp/ ... и при использовании этого тега все параметры get будут включены, как и ожидалось.

Однако мы хотим развернуть этот код в корневом контексте (поэтому все заканчивается под http://localhost:8080/...), Поэтому мы развернули его как ROOT.war. Внезапно все параметры получения больше не отображаются в URL-адресе. Я искал какое-то время и не могу понять, что может вызвать это. Сначала я думал, что это связано с переписыванием URL-адресов, но, похоже, он работает нормально. Любые советы, указатели, дополнительные вопросы для разъяснения приветствуются. Чтобы добавить к путанице, все это также отлично работает при развертывании в jetty (где корневой контекст является значением по умолчанию).

Редактирование: Я также попытался удалить ROOT.war и использовать jboss-web.xml для развертывания в корневом контексте, однако это показывает ту же проблему.

ответ

1

Я отследил это частично до неправильной настройки URL-адреса, параметры получения не добавлялись к URL-адресам, которые должны быть переписаны, потому что «include-query-string» не была установлена ​​на true на urlrewrite. это означало, что «blah? querystring» не перенаправлялся на «blah.action? querystring». По-видимому, сейчас это не работает из-за взаимосвязанных проблем, но я отделяю их от другого вопроса.

+0

Спасибо - этот совет помог мне включить параметры в URL-адрес перенаправления. Однако было бы неплохо, если бы вы упоминали, что атрибут use-query-string должен быть добавлен в элемент urlrewrite файла конфигурации. :) –

+0

@RolandSchneider моя ошибка. Угадайте, что вы это исправили. :-) – wds