Struts 2: Как правильно перейти к другим действиям? - PullRequest
1 голос
/ 18 октября 2011

Я разрабатываю проект Struts 2, в котором мне нужно реализовать 2 дружественных URL-адреса.Поскольку мои 2 URL-адреса должны быть чем-то вроде URL / name / id и URL / id / title , единственный способ, который я нашел для менеджера, это использовать действие первого шага для обработкизапрос, который затем перенаправляет на правильный Action1 или Action2, например:

<action name="/*/*" class="web.ProcessRequestAction">
       <param name="firstParam">{1}</param>
       <param name="secondParam">{2}</param>
       <result name="action1" type="chain">Action1</result>
       <result name="action2" type="chain">Action2</result>
</action>

И оба действия определяются так же, как это:

<action name="Action1" class="web.Action1" method="execute">
       <result name="success">/WEB-INF/content/Action1.jsp</result>     
       <result name="input">/WEB-INF/content/Action1.jsp</result>
       <result name="error">/WEB-INF/content/Action1.jsp</result>
</action>

Однако, если я вызываю URLпараметр / параметр, а затем в ProcessRequestAction я возвращаю «Action1», я получу Action1.jsp (как задумано), но все грязно, кажется, что весь CSS отсутствует.Прежде всего, правильный ли мой подход?Если да, то, что я здесь делаю неправильно, что я могу улучшить?

Заранее спасибо!

Ответы [ 2 ]

1 голос
/ 19 октября 2011

Вот несколько ресурсов, которые могут помочь вам получить чистые URL, которые вы ищете:

1 голос
/ 19 октября 2011

Относительно того, почему ваш CSS не работает, у нас нет возможности узнать - JSP - это JSP, и он следует нормальным правилам JSP / HTML.

Что касается первой проблемы: я бырекомендуем против цепочки действий;он активно не поощряется и, как правило, просто мешает.

Не зная больше об архитектуре вашего приложения, трудно дать целевой совет, но вы можете найти параметров в пространствах имен полезными.

Даже если это не сразу применимо, вы можете играть в игры с PatternMatcher или ActionMapper, которые в большей степени соответствуют вашим реальным потребностям - реализация будет зависеть от множества факторов, в частности от формата(ы) компонентов имени, идентификатора и заголовка URL.

...