There's a known bug in the parsing of the struts.xml file, which I believe has been fixed in the 2.0.2 version of the xwork library, that prevents it from finding the packages that you define in struts.xml and later extend. However, I was able to work around this problem by putting my own default package into its own file and including it *last* in the struts.xml. So, in your case, use the following:
<struts> ... <include file="home.xml"/> <include file="activites.xml"/> <include file="default.xml"/> </struts> where default.xml contains your default pacakge definition below. I don't like the ordering dependency of the includes, but I like how it makes my struts.xml file cleaner. -- David -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Wednesday, May 16, 2007 4:03 AM To: user@struts.apache.org Subject: [s2] break up a large struts.xml file into smaller pieces : extends problem Hi all, I try to separate the modules of my app in differents xml files, but the extends seems to have problems. Struts.xml : <struts> <constant name="struts.enable.DynamicMethodInvocation" value="false" /> <constant name="struts.objectFactory" value="spring" /> <constant name="struts.devMode" value="true" /> <constant name="struts.custom.i18n.resources" value="package" /> <include file="struts-default.xml"/> <package name="default" extends="struts-default"> <interceptors> <interceptor name="login" class= "com.abw.util.LoginInterceptor" /> <interceptor-stack name="crmStack"> <interceptor-ref name="servletConfig"/> <interceptor-ref name="i18n"/> <interceptor-ref name="login"/> <interceptor-ref name="modelDriven"/> <interceptor-ref name="fileUpload"/> <interceptor-ref name="checkbox"/> <interceptor-ref name="staticParams"/> <interceptor-ref name="params"> <param name="excludeParams">dojo\..*</param> </interceptor-ref> <interceptor-ref name="validation"> <param name="excludeMethods">input,back,cancel,browse </param> </interceptor-ref> <interceptor-ref name="workflow"> <param name="excludeMethods">input,back,cancel,browse </param> </interceptor-ref> </interceptor-stack> </interceptors> <default-interceptor-ref name="crmStack"/> <global-results> <result name="notLogged">/loginV2.jsp</result> <result name="globalError">/error.jsp</result> </global-results> </package> <include file="home.xml"/> <include file="activites.xml"/> </struts> home.xml : <struts> <package name="home" extends="default"> <action name="enter" class="com.abw.coordination.EnterAction"> <result>/loginV2.jsp</result> </action> <action name="login" class="com.abw.coordination.LoginAction"> <result>/frame.jsp</result> <result name="error">/error.jsp</result> </action> <action name="bandeau" class="com.abw.coordination.BandeauAction"> </action> <action name="titre" class="com.abw.coordination.TitreAction"> </action> <action name="home" class="com.abw.coordination.HomeAction"> <result type="redirectAction"> <param name="actionName">activites</param> </result> </action> </package> </struts> The error : 2007-05-16 10:45:18,374 [main] ERROR com.opensymphony.xwork2.config.ConfigurationUtil - Unable to find parent package default 2007-05-16 10:45:18,374 [main] ERROR com.opensymphony.xwork2.config.providers.XmlConfigurationProvider - Unable to find parent packages default 2007-05-16 10:45:18,390 [main] ERROR org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/crm] - Exception au démarrage du filtre struts Error building results for action enter in namespace - action - file:/C:/_applis/eclipse/workspace/CRMV2/crm-webapp/WebContent/WEB-INF/class es/home.xml:7:71 at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addAction( XmlConfigurationProvider.java:299) at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage ( XmlConfigurationProvider.java:384) at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackag es( XmlConfigurationProvider.java:239) I would like to have the default-interceptor to be "crmStack" in each "sub-xml", so I would like to extends package "default" of struts.xml, not "struts-default"; Is that possible ? I'm in v2.1.0-SNAPSHOT-20070425 Thanks, Michaël. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]