Problemas com o método execute (ActionForward) do Struts

9 respostas
gugaa_df
Pessoal estou aprendendo Struts, mas sou mto leigo ainda nao Struts.

Gostaria que se possível me ajudasem.

meu problema é o seguinte, vou descrever o cenário que eu fiz.

Criei um formulário qualquer e setei o action do formulário para /teste.do

Criei um servlet (/teste.do) e fiz o seguinte:

public ActionForward execute(ActionMapping map, ActionForm form, HttpServletRequest request, HttpServletResponse response)throws Exception {

System.out.println(“Excecutando o código da lógica de negócios”);

return map.findForward(“ok”);

Criei outro JSP apelidado de ok, para ser exibido.
Porém quando eu coloco pra rodar aparece a mensagem.
HTTP Status 405 - HTTP method GET is not supported by this URL

o que eu devo fazer, ou oq estou fazendo de errado?

9 Respostas

R

Amigo, quando vc define mapping.findForward(“ok”) nao significa que vc deve ter uma jsp com o nome de ok.jsp, e que sua requisicao sera redirecionada a essa pagina, mas sim que vc deve ter um mapeamento no seu struts-config.xml para o parametro “ok”. e la vc deve definir o forward para alguma pagina, no seu caso. ok.jsp.

Espero ter ajudado.

gugaa_df

Rafael_:
Amigo, quando vc define mapping.findForward(“ok”) nao significa que vc deve ter uma jsp com o nome de ok.jsp, e que sua requisicao sera redirecionada a essa pagina, mas sim que vc deve ter um mapeamento no seu struts-config.xml para o parametro “ok”. e la vc deve definir o forward para alguma pagina, no seu caso. ok.jsp.

Espero ter ajudado.


Sim eu sei, exatamente por causa disso que eu escrevi “Criei outro JSP apelidado de ok, para ser exibido.”
Estou travado nessa parte para aprender Struts. nao to conseguindo meu Hello Word que eu gostaria…

gugaa_df

Galera, por favor me ajudem…
Meus estudos em relação a Struts está travado, por causa disso.

falvesti

Você precisa criar um mapeamento no seu struts-config.xml indicando que quando o retorno da sua Action for “ok” irá direcionar para a página desejada.

Por exemplo:

<action path="/teste" type="Teste">
          <forward name="ok" path="paginadesejada.jsp"></forward>
</action>

Algo desse tipo deveria estar no seu struts-config.xml.

path="/teste" - indica que “/teste” é a url que você irá por no browser.
type=“Teste” - Indica que quando isso for feito a classe Teste.java será chamada
name=“ok” - indica oque sera feito caso a action rode com sucesso. Poderia ser usada qualquer palavra: “Sucesso”, “Sucess” e etc…
path=“paginadesejada.jsp” - Indica que quando sua classe retornar “ok” a paginadesejada.jsp será chamada.

De qualquer modom indico você aprender usando o struts-blank…

abraço

gugaa_df

falvesti:
Você precisa criar um mapeamento no seu struts-config.xml indicando que quando o retorno da sua Action for “ok” irá direcionar para a página desejada.

Por exemplo:

<action path="/teste" type="Teste">
          <forward name="ok" path="paginadesejada.jsp"></forward>
</action>

Algo desse tipo deveria estar no seu struts-config.xml.

path="/teste" - indica que “/teste” é a url que você irá por no browser.
type=“Teste” - Indica que quando isso for feito a classe Teste.java será chamada
name=“ok” - indica oque sera feito caso a action rode com sucesso. Poderia ser usada qualquer palavra: “Sucesso”, “Sucess” e etc…
path=“paginadesejada.jsp” - Indica que quando sua classe retornar “ok” a paginadesejada.jsp será chamada.

De qualquer modom indico você aprender usando o struts-blank…

abraço

Mas eu tb fiz isso…
=(
axo Struts nao parece tão difícil, mas to preso nessa parte.

falvesti

Cara você ta usando o struts-blank? O struts-blank é um projeto exemplo que vem com o próprio struts com um Hello World funcionando…
Ai vc consegue ir montando sua aplicação a partir dele… ai vc não precisa se preocupar com a estrutura pois já está tudo montado…

Abraço

gugaa_df

bom agora consegui!
é pq eu ainda estava com a idéia de servlets web.xml, essas coisas na cabeça.
Fiz agora aqui e parou de dar o erro. só que a segunda página, a chamada pela action esta vindo em branco… nao entendi o pq

falvesti

Coloca o sua classe, sua jsp e seu struts-config aki pra gente tenta ajuda.

gugaa_df

Valeu pela ajuda!
Mas eu descobri o erro!
é pq quando o findForward nao acha a página ele retorna null, e aparece uma página em branco…
Ja consegui arrumar tudo certinho aqui!
Agora vou para os próximos passos no Struts, to engatinhando ainda hehehe

Criado 25 de novembro de 2007
Ultima resposta 26 de nov. de 2007
Respostas 9
Participantes 3