Struts 2 Não pega o parametro na url  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
paulofernandesjr
JavaEvangelist
[Avatar]
Membro desde: 04/10/2007 12:36:58
Mensagens: 474
Localização: São Paulo - Capital
Offline

Opa!

Galera, alguém já teve o problema de não conseguir pegar o parametro da URL automaticamente

Tudo funcionava quando era dessa forma


XML

<package name="modulo" extends="struts-default">

<action name="ListaAContratar!*" class="com.action.ListaAContratarAction" method="{1}">
<result>/principal/listaCategAContratar2.jsp</result>
</action>
</package>


Mas agora que está assim, ele não pega o parametro



XML

<package name="modulo" namespace="/modulo" extends="default">

<action name="ListaAContratar!*" class="com.action.ListaAContratarAction" method="{1}">
<result>/principal/listaCategAContratar2.jsp</result>
</action>
</package>



O package default não mudou nada de um para outro
XML

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>

<constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="true" />

<include file="modulo.xml"/>

<package name="default" extends="struts-default">
<interceptors>
<interceptor name="minhaAutenticacao" class="com.LoginInterceptor"/>
<interceptor-stack name="defaultAuthStack">
<interceptor-ref name="exception"/>
<interceptor-ref name="alias"/>
<interceptor-ref name="minhaAutenticacao"/> <!-- verificacao do login -->
<interceptor-ref name="prepare"/>
<interceptor-ref name="i18n"/>
<interceptor-ref name="chain"/>
<interceptor-ref name="fileUpload"/>
<interceptor-ref name="conversionError"/>
<interceptor-ref name="validation"/>
<interceptor-ref name="workflow"/>
</interceptor-stack>
</interceptors>
<default-interceptor-ref name="defaultAuthStack" />
<global-results>
<result name="error">/principal/erro.jsp</result>
<result name="input">/principal/erro.jsp</result>
</global-results>
<action name="Principal" class="com.PrincipalAction">
<result>/principal/listaTurmasOrcamentos2.jsp</result>
</action>
</package>

</struts>



Alguem poderia me ajudar

abraço

Paulo Fernandes
Desenvolvedor Java

Aprenda CSS
Twitter
[Email] [WWW] [MSN]
jyoshiriro
Virtual Machine Man
[Avatar]

Membro desde: 17/06/2009 14:14:39
Mensagens: 587
Offline

Ao que parece sua pilha de interceptors "defaultAuthStack" está mau configurada.

Tente fazer apenas:


E outra: não precisa fazer



Sempre que você usa "!" colado ao mapeamento, método da action após "!" é executado. Não precisa ter esse retrabalho. Logo, bastaria deixar:



E, uma dica: não conheçe as configurações por anotação do Struts2? Deixam as configurações de mapeamento bem mais fáceis e produtivas de fazer.

José Yoshiriro Ajisaka Ramos

OCUP Fundamental / SCJP 6 / SCWCD 5 / SCBCD 5
[Email] [WWW]
paulofernandesjr
JavaEvangelist
[Avatar]
Membro desde: 04/10/2007 12:36:58
Mensagens: 474
Localização: São Paulo - Capital
Offline

Alterei o meu interceptor e ficou assim



mas os actions eu preciso do jeito que está mesmo, porque eu uso mais de um método da mesma action


O Binding não é feito e dá esse erro ainda

=============================
03/12/2009 12:26:42 org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet default threw exception
java.lang.IllegalStateException
at org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:407)
at org.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:770)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:505)
at org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:12
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
=============================



This message was edited 1 time. Last update was at 03/12/2009 12:31:32


Paulo Fernandes
Desenvolvedor Java

Aprenda CSS
Twitter
[Email] [WWW] [MSN]
 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team