Struts 2 Como recupero dados vindo de um request

6 respostas
gustavomagni

Caros amigos!!

Estou com uma dúvida básica de Struts 2.Como faço para recuperar dados de um request usando Struts2?Há alguma interface ou classe para isso?

Um abraço

6 Respostas

rodrigo_corinthians

Olá, o pessoal do Struts recomenda criar métodos get e set para das propriedades na Action mas caso queira pegar uma informação no request use o seguinte código:

HttpServletRequest request = ServletActionContext.getRequest(); Long countPage = (Long) request.getParameter("countPage");

gustavomagni

Se eu usar set/get nas Actions,deveria ter outro tratamento para setar as informações do request no set/get?Já utilizo isso nas minhas actions,mas estou conseguindo setar os valores!!!Se puder em ajudar agradeço!!!

Um abraço

muldon

Amigo, vamos la entao.

Voce tem um formulario com os campos e um botao submit que submete para uma action ok ?
Na action, para receber os dados, a lógica é parecida com JSF, ou seja, algo do tipo:

public class TesteAction extends ActionSupport implements ModelDriven, Preparable, ServletRequestAware{
        public Long idPessoa;
        public String nomePessoa;
        ...
        
        ( gets e sets desses dois atributos )

        ... outros metodos...


       //voce submeteu para o metodo save()
       public String save() {
             System.out.println("id: "+idPessoa+ " --- Nome: "+nomePessoa);
             return SUCCESS;
       }

}
Claro que seu formulario deve ter campos com os nomes idPessoa e nomePessoa, e o submit para o metodo save deve ser acionado. 
    Veja que a classe implementa algumas interfaces, que disponibilizam os servicos de captura dos dados e outras funcionalidades. Faca o teste ! 
     Espero ter ajudado, abraco !
gustavomagni

Obrigado me ajudou e muito,agora preciso ver como setarei esses atributos em outro objeto,para enviar para o metodo Save do Hibernate!!!Haveria alguma interface para passar esses atributos para outro objeto?

Um abraço

rodrigo_corinthians

Na Action vc declara seu objeto assim:

public class MinhaAction { private MeuObjeto meuObjeto; // get e set do "MeuObjeto" } Na jsp coloca assim:

<s:textfield key="meuObjeto.minhaPropriedade"/> Pronto o Struts 2 instância o objeto pra vc automaticamente.

gustavomagni

Agora matou muitissimo Obrigado!!!Somos loucos por série B com muito orgulho!!!

Meu msn é [email removido],se quiser me add sinta-se a vontade!!!

Um abraço

Criado 11 de dezembro de 2007
Ultima resposta 11 de dez. de 2007
Respostas 6
Participantes 3