Struts2: проблема с перенаправлением с другого сайта на myApplication - PullRequest
0 голосов
/ 28 января 2011

Я использую Struts2.0, и приложение развернуто и протестировано на Tomcat 6.0.

В соответствии с требованием, мое приложение ( myApplication ) должно перенаправить с сайта PHP с доменомname http: // abc.com

Когда этот PHP-сайт перенаправляет запрос в мое приложение, он вызывает действие Action1 моего приложения, которое далее перенаправляет на другое действие Action2 .Но при перенаправлении он меняет имя домена на IP-адрес сервера приложения (http://applicationServerIP:8080/myApplication/Action2).Мой ожидаемый результат (http://abc.com/myApplication/Action2).

Конфигурация действия в sturts.xml:

<action name="Action1" class="Action1">
    <result name="success" type="redirectAction">Action2</result>
</action>

<action name="Action2" class="Action2">
    <result name="success">/myJSP.jsp</result>
</action>

Любая помощь для решения этой проблемы будетбыть оцененным.

Ответы [ 2 ]

0 голосов
/ 23 июня 2016

Вы должны обойти Struts-config, потому что это только перенаправление на ваше собственное приложение, попробуйте это:

public ActionForward method(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response){
       response.sendRedirect("http://www.example.com");
       return null;
}
0 голосов
/ 29 января 2011

Размещение следующего тега в /myJSP.jsp

<s:a>here</s:a> //I will write the current url as struts understands it.

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

Таким образом, ваше приложение вызывается с http://applicationServerIP:8080/myApplication/Action2, просто измените вызов на http://abc.com/myApplication/Action2

Если это не то, что вам нужно, вам нужно изменить URL перед этимдостигает стойки2.Некоторые контейнеры имеют встроенную поддержку для этого или надстройки / плагина (я просто использую iptables).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...