[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=excludeParamsdojo\..*/param /interceptor-ref interceptor-ref name=validation param name=excludeMethodsinput,back,cancel,browse /param /interceptor-ref interceptor-ref name=workflow param name=excludeMethodsinput,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=actionNameactivites/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/classes/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.loadPackages( 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.
RE: [s2] break up a large struts.xml file into smaller pieces : extends problem
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=excludeParamsdojo\..*/param /interceptor-ref interceptor-ref name=validation param name=excludeMethodsinput,back,cancel,browse /param /interceptor-ref interceptor-ref name=workflow param name=excludeMethodsinput,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=actionNameactivites/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]
RE: [s2] break up a large struts.xml file into smaller pieces : extends problem
One more thing - once I upgraded to xwork 2.0.2, I was able to include my default/base package include file first. -- David -Original Message- From: David Chisholm [mailto:[EMAIL PROTECTED] Sent: Wednesday, May 16, 2007 4:29 AM To: 'Struts Users Mailing List' Subject: RE: [s2] break up a large struts.xml file into smaller pieces : extends problem 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=excludeParamsdojo\..*/param /interceptor-ref interceptor-ref name=validation param name=excludeMethodsinput,back,cancel,browse /param /interceptor-ref interceptor-ref name=workflow param name=excludeMethodsinput,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=actionNameactivites/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