Struts: "псевдонимы" имен параметров, от "foo.bar" до "b" - PullRequest
0 голосов
/ 04 января 2011

У меня есть действие Struts с DTO в качестве члена:

public class MyAction {
   private MyDTO dto;

   void execute() {
      String bar = dto.getBar() ;  
     //struts has mapped GET parameter dto.bar by calling dto.setBar()
     // do something with bar:
     return bar != null ? SUCCESS : INPUT;
    }
}

Я хочу, чтобы параметр с именем "b" был сопоставлен с dto.bar, просто чтобы очистить мой URL-адрес GET.Вместо: http://myurl? Dto.bar = xxx Я хочу: http://myurl? B = xxx

Я знаю, что могу сделать это, добавив в свойДействие a setB (final String b), но это сделало бы мой код более хрупким и трудным для понимания.

Есть ли способ, которым я могу сказать Struts сделать это отображение, чтобы для URL-адреса http://myurl? B = xxx , MyAction.getDto.setBar () вызывается?

1 Ответ

1 голос
/ 05 января 2011

Вы можете использовать псевдоним перехвата для достижения этой цели.Выезд:

http://www.opensymphony.com/webwork/wikidocs/Alias%20Interceptor.html

...