The answer is in the error message .... > The content of element type "struts-config" must match > "(display-name?,description?,data-sources?,form-beans?, > global-exceptions?,global-forwards?,action-mappings?,controller?, > message-resources*,plug-in*)".
The order of the struts-config elements is important so put the controller entry after action-mappings and before message-resources e.g. <action-mappings> .... </action-mappings> <controller processorClass="app.MyRequestProcessor""/> <message-resources parameter="...." null="...."/> Oh, and remove the trailing ";" from the controller element. -----Original Message----- From: Brij Naald [mailto:[EMAIL PROTECTED] Sent: 30 November 2004 12:55 To: [EMAIL PROTECTED] Subject: Subclassing RequestProcessor Hi, I'm trying to work with a subclass of requestprocessor. Therefore I add <controller processorClass="app.MyRequestProcessor""/> in the struts-config.xml. How simple this looks, it doesn't work. When I add this line to the struts-blank config-file, the end of the file looks like this: ........ <plug-in className="org.apache.struts.validator.ValidatorPlugIn"> <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/> </plug-in> <controller processorClass="app.MyRequestProcessor""/>; </struts-config> But when I start tomcat, it gives an exception (see ERROR 1). Note that line 203 column 17 isn't the controller-tag, but the </struts-config> tag. When I try to put it in another application I also get ERROR2. What am i doing wrong? thanks! ********** * ERROR 1 * ********** SEVERE: Parse Error at line 203 column 17: The content of element type "struts-config" must match "(display-name?,descri ption?,data-sources?,form-beans?,global-exceptions?,global-forwards?,act ion-mappings?,controller?,message-resources*,plu g-in*)". org.xml.sax.SAXParseException: The content of element type "struts-config" must match "(display-name?,description?,data- sources?,form-beans?,global-exceptions?,global-forwards?,action-mappings ?,controller?,message-resources*,plug-in*)". at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXPar seException(ErrorHandlerWrapper.java: 236) at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorH andlerWrapper.java:172) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XML ErrorReporter.java:382) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XML ErrorReporter.java:316) at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleEndEle ment(XMLDTDValidator.java:2048) at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.endElement(X MLDTDValidator.java:932) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanEnd Element(XMLNSDocumentScannerImpl.java :713) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$F ragmentContentDispatcher.dispatch(XML DocumentFragmentScannerImpl.java:1685) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.s canDocument(XMLDocumentFragmentScanne rImpl.java:368) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML1 1Configuration.java:834) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML1 1Configuration.java:764) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.jav a:148) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Abstr actSAXParser.java:1242) at org.apache.commons.digester.Digester.parse(Digester.java:1548) at org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServl et.java:708) at org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.ja va:670) at org.apache.struts.action.ActionServlet.init(ActionServlet.java:329) at javax.servlet.GenericServlet.init(GenericServlet.java:211) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.jav a:1053) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:886) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.j ava:3817) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4079 ) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.ja va:755) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525) at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:777) at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:672) at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:472) at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1079) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:31 0) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSu pport.java:119) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1011) at org.apache.catalina.core.StandardHost.start(StandardHost.java:718) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1003) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:437) at org.apache.catalina.core.StandardService.start(StandardService.java:450) at org.apache.catalina.core.StandardServer.start(StandardServer.java:2010) at org.apache.catalina.startup.Catalina.start(Catalina.java:537) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav a:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor Impl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409) ********** * ERROR 2 * ********** SEVERE: Parse Error at line 83 column 33: Element type "controller" must be declared. org.xml.sax.SAXParseException: Element type "controller" must be declared. at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXPar seException(ErrorHandlerWrapper.java:236) at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorH andlerWrapper.java:172) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XML ErrorReporter.java:382) at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XML ErrorReporter.java:316) at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleStartE lement(XMLDTDValidator.java:1960) at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.emptyElement (XMLDTDValidator.java:816) at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanSta rtElement(XMLNSDocumentScannerImpl.java:316) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$F ragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:16 93) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.s canDocument(XMLDocumentFragmentScannerImpl.java:368) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML1 1Configuration.java:834) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML1 1Configuration.java:764) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.jav a:148) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Abstr actSAXParser.java:1242) at org.apache.commons.digester.Digester.parse(Digester.java:1548) at org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServl et.java:708) at org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.ja va:670) at org.apache.struts.action.ActionServlet.init(ActionServlet.java:329) at ctcEngine.MyActionServlet.init(MyActionServlet.java:40) at javax.servlet.GenericServlet.init(GenericServlet.java:211) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.jav a:1053) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:886) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.j ava:3817) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4079 ) _________________________________________________________________ Volg Expeditie Robinson op de voet! http://www.expeditierobinson.vt4.be/ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -------------------------------------------------------- If you are not an intended recipient of this e-mail, please notify the sender, delete it and do not read, act upon, print, disclose, copy, retain or redistribute it. Click here for important additional terms relating to this e-mail. http://www.ml.com/email_terms/ -------------------------------------------------------- --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]