2015-11-09 2 views
0

J'essaye de faire une action dans les entretoises 1 (application du travail). Je suis en train de traduire à partir d'un ancien framework à struts 1 (la moitié de l'application est dans ce framework et l'autre dans struts 1), mais je ne trouve pas la bonne façon de faire cette traduction. Mon idée est que ne pas toucher le code et le faire que par « fichiers » conf-, dans ce cas « struts-config.xml »Struts 1 chemin d'accès avec les paramètres

Je le cas suivant que je dois traduire, dire:

Action class: com.MyApp.TestClass 
Action name: Consulta parameter: dispath 
Forward 1: /login.do 
Forward 2: /signup.do?dispath=register 
Forward 3: /signup.do?dispath=register&addReferal=true 

Avec ce cas et le cas d'inscription:

<action path="/signup" type="com.MyApp.Signup" 
      name="SignupForm" scope="request" validate="false" 
      parameter="dispatch" /> 

en avant 1 Je n'ai pas de problème, il n'y a pas un paramètre. Dans l'avant 2 je n'ai aucun problème, il y a 1 paramètre, dispatch (déclaré dans l'action/singup) Dans l'avant 3 j'ai des problèmes, il y a 2 paramètres, dispath et autres dont j'ai besoin.

Le problème ne se produit que si je le fais avec conf-file, si je fais avec java, le chemin défini directement comme

ActionForward a = new ActionForward(); 
a.setPath("/signup.do?dispath=register&addReferal=true"); 
action.addForward(a); 

Cela fonctionne sans erreurs et comme je veux, mais avec conf-file cette jette:

15:38:56,742 ERROR [Digester] Parse Fatal Error at line 1067 column 94: La referencia a la entidad "addReferal" debe terminar con el delimitador ';'. 
org.xml.sax.SAXParseException: La referencia a la entidad "addReferal" debe terminar con el delimitador ';'. 
     at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source) 
     at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown Source) 
     at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) 
     at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) 
     at org.apache.xerces.impl.XMLScanner.reportFatalError(Unknown Source) 
     at org.apache.xerces.impl.XMLScanner.scanAttributeValue(Unknown Source) 
     at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanAttribute(Unknown Source) 
     at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source) 
     at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) 
     at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 
     at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) 
     at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) 
     at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) 
     at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) 
     at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) 
     at org.apache.commons.digester.Digester.parse(Digester.java:1572) 
     at org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServlet.java:1006) 
     at org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:955) 
     at org.apache.struts.action.ActionServlet.init(ActionServlet.java:470) 
     at javax.servlet.GenericServlet.init(GenericServlet.java:212) 
     at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161) 
     at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981) 
     at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4069) 
     at org.apache.catalina.core.StandardContext.start(StandardContext.java:4362) 
     at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752) 
     at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:732) 
     at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:553) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) 
     at java.lang.reflect.Method.invoke(Method.java:599) 
     at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297) 
     at org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:164) 
     at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) 
     at org.apache.catalina.core.StandardContext.init(StandardContext.java:5263) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37) 
     at java.lang.reflect.Method.invoke(Method.java:599) 
     at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297) 
     at org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:164) 
     at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) 
     at org.jboss.web.tomcat.service.TomcatDeployer.performDeployInternal(TomcatDeployer.java:295) 
     at org.jboss.web.tomcat.service.TomcatDeployer.performDeploy(TomcatDeployer.java:108) 
     at org.jboss.web.AbstractWebDeployer.start(AbstractWebDeployer.java:375) 
     at org.jboss.web.WebModule.startModule(WebModule.java:83) 
     at org.jboss.web.WebModule.startService(WebModule.java:61) 

Et bien plus encore.

Désolé pour mon mauvais anglais, et merci pour toute idée!

PD: Ceci était un exemple qui représente exactement le problème.

Répondre

0

Remplacer un & avec un ; dans:

a.setPath("/signup.do?dispath=register**&**addReferal=true"); 
+0

Merci beaucoup de vous. Cela fonctionne très bien. Merci! –