Struts 2 - Atributos das Actions

2 respostas
J
Dae galera.. Estou testando o struts 2 e me deparei com a seguinte questão, quando eu crio a minha action sobrescrevendo o método execute e tal... nessa classe eu sou obrigado a declarar os atributos que eu irei utilizar no formulário em questão? Tipo assim.. eu tenho o formulário de login... com os campos login e senha... dae na minha action ficaria assim
public class LoginAction extends ActionSupport {
    private String username;
    private String password;

    // e métodos getters e setters
Tipo.. eu não poderia ter uma instancia de um objeto tipo um bean normal e utiliza-lo dentro da action? Tipo assim..
public class LoginAction extends ActionSupport {
     private Login login = new Login();

     // no método execute eu utilizaria assim
     login.username.. etc...
Porque se não para cada ação que eu executo eu tenho que declarar toda vez essas variáveis e isso ao meu ver é perda de tempo... tentei instanciado um bean dentro da action mas dae ele não reconhece os campos quando utiliza reflection.. alguém sabe como fazer?? Abraço!

2 Respostas

luiz_ross

Use este interceptor

<interceptor-ref name="paramsPrepareParamsStack" />

e na sua Action faça assim:

public class LoginAction extends ActionSupport {  
      private Login login;

      public Login getLogin(){
            return login;
      }

      public void setLogin(Login login){
           this.login = login;
      }
      
      ........restante de código da sua action
}
J

Valeu pela resposta… mas o que esse interceptor ( paramsPrepareParamsStack ) faz a ele serve para mais alguma coisa?
Valeu!!

Criado 12 de janeiro de 2008
Ultima resposta 12 de jan. de 2008
Respostas 2
Participantes 2