Problème de chargement des div dans le sx:tabbedpanel avec Struts2
Bonjour,
J'ai un écran sous Struts 2 dans lequel je souhaite avoir des onglets. J'utilise pour cela le composant sx:tabbedpanel de dojo qui me permet de charger l'onglet sélectionné en Ajax. Lorsque je clique sur Ecran 1 ou Ecran 2 les actions Struts ne sont pas declenchées. Mais lorsque j'affiche la JSP coorespondant à ecranPrincipal.jsp, chacune des actions Struts sont executées les unes après les autres.
mapping Struts :
Code:
1 2 3 4 5 6 7 8 9
| <filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping> |
struts.xml :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
|
<?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.devMode" value="false" />
<constant name="struts.action.extension" value="do" />
<constant name="struts.custom.i18n.resources"
value="com.omb.i18n.StrutsResourceBundle" />
<constant name="struts.objectFactory" value="spring" />
<constant name="struts.objectFactory.spring.autoWire" value="name" />
<constant name="struts.i18n.encoding" value="ISO-8859-1" />
<constant name="struts.i18n.reload" value="false" />
<constant name="struts.configuration.xml.reload" value="false" />
<constant name="struts.locale" value="fr" />
<constant name="struts.multipart.maxSize" value="100000000000" />
<constant name="struts.enable.SlashesInActionNames" value="true" />
<constant name="struts.mapper.alwaysSelectFullNamespace" value="false"/>
<constant name="struts.codebehind.classSuffix" value="Controller"/>
<constant name="struts.codebehind.action.checkImplementsAction" value="false"/>
<constant name="struts.codebehind.action.checkAnnotation" value="false"/>
<constant name="struts.codebehind.action.defaultMethodName" value="index"/>
<constant name="struts.configuration.classpath.defaultParentPackage" value="rest-default" />
<package name="default" extends="tiles-default" namespace="/">
<interceptors>
<interceptor name="userAware"
class="com.omb.interceptor.UserInterceptor" />
<interceptor name="params-filter"
class="com.opensymphony.xwork2.interceptor.ParameterFilterInterceptor" />
<interceptor-stack name="defaultStack">
<interceptor-ref name="exception" />
<interceptor-ref name="alias" />
<interceptor-ref name="servletConfig" />
<interceptor-ref name="i18n" />
<interceptor-ref name="chain" />
<interceptor-ref name="modelDriven" />
<interceptor-ref name="fileUpload">
<param name="maximumSize">11204928</param>
</interceptor-ref>
<interceptor-ref name="staticParams" />
<interceptor-ref name="conversionError" />
<interceptor-ref name="params" />
<interceptor-ref name="prepare" />
<interceptor-ref name="validation" />
<interceptor-ref name="workflow" />
<interceptor-ref name="userAware" />
</interceptor-stack>
</interceptors>
<default-interceptor-ref name="defaultStack" />
<global-results>
<result name="technicalError" type="chain">
errorAction
</result>
<result name="sessionInvalidError" type="tiles">
sessionInvalid
</result>
<result name="blank" type="tiles">blank</result>
</global-results>
<global-exception-mappings>
<exception-mapping exception="java.lang.Exception"
result="technicalError" />
</global-exception-mappings>
<action name="errorAction"
class="com.omb.ErrorAction">
<result name="success" type="tiles">errorTile</result>
</action>
<action name="*Cache"
class="com.omb.CacheAction" method="{1}">
<result name="success" type="tiles">resultCache</result>
<result name="input" type="tiles">inputCache</result>
</action>
</package>
<package name="omb" extends="default" namespace="/omb">
<action name="*Action"
class="com.omb.MyAction"
method="{1}">
<result name="ecran1">/jsp/omb/ecran1.jsp</result>
<result name="ecran2">/jsp/omb/ecran2.jsp</result>
</action>
</package>
</struts> |
ecranPrincipal.jsp :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="sx" uri="/struts-dojo-tags"%>
<s:url id="urlAccueil" value="/jsp/omb/ecranAccueil.jsp"/>
<s:url id="urlEcran1" namespace="/omb"
action="ecran1Action.do" includeParams="false" />
<s:url id="urlEcran2" namespace="/omb"
action="ecran2Action.do" includeParams="false" />
<div class="content">
<sx:tabbedpanel id="tabContainer">
<sx:div id="ongletWelcome" label="Accueil" href="%{urlAccueil}"/>
<sx:div id="ongletDelegation" label="Ecran 1" href="%{urlEcran1}" />
<sx:div id="ongletValidation" label="Ecran 2" href="%{urlEcran2}" />
</sx:tabbedpanel>
</div> |