OK, sounds good -- I've been playing with the Xalan that's bundled with the JDK, and it appears not to escape apostrophies inside double-quoted strings, and it doesn't escape apostrophies or double-quotes inside text content. So I think if we go with this approach, we'll have output that's identical to the default XML transformer in Java, which seems sufficient.
Rich Eddie O'Neil wrote: > > Okay. It's not how it's handled in our HtmlUtils or in > commons-lang, but if you're comfortable with it, then let's go with it. > > I'll spin a distribution. > > Eddie > > > > Rich Feit wrote: > >> I didn't include that, because I think that the apostrophe is valid >> inside a double-quoted string (which is the only kind of quote we use >> for attributes). Can anyone confirm or deny this? >> >> Thanks, >> Rich >> >> Eddie O'Neil wrote: >> >>> Hm. That was supposed to be "apos" entity. :) >>> >>> Code that appears to do this is over here: >>> >>> http://svn.apache.org/viewcvs.cgi/jakarta-commons/lang/src/java/org/apache/commons/lang/Entities.java?root=Apache&view=markup >>> >>> >>> with Javadoc here: >>> >>> http://jakarta.apache.org/commons/lang/apidocs/org/apache/commons/lang/StringEscapeUtils.html#escapeXml(java.lang.String) >>> >>> >>> Eddie >>> >>> >>> >>> On 9/21/05, Eddie O'Neil <[EMAIL PROTECTED]> wrote: >>> >>> >>>> Only question I've got is if we need to handle the "capos" entity? >>>> >>>> Eddie >>>> >>>> >>>> >>>> Rich Feit wrote: >>>> >>>> >>>>> OK, the fix is in, and the patch is in the bug. Thanks for taking >>>>> a look. >>>>> Rich >>>>> >>>>> Eddie O'Neil wrote: >>>>> >>>>> >>>>> >>>>>> Sure; I'm around -- apparently among others as well. :) >>>>>> >>>>>> Thanks for the quick fix. >>>>>> >>>>>> Eddie >>>>>> >>>>>> >>>>>> >>>>>> On 9/21/05, Rich Feit <[EMAIL PROTECTED]> wrote: >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> Yes, it's my XMLBeans-replacement code that's not escaping >>>>>>> properly. We >>>>>>> do need to fix this. Will have a fix in shortly, and would >>>>>>> appreciate a >>>>>>> code review on it from someone. >>>>>>> >>>>>>> Rich >>>>>>> >>>>>>> Daryl Olander wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> This does seem a bit bad....Is this the result of the switch >>>>>>>> off of >>>>>>>> XMLBeans? (I believe that it was doing encoding automatically, >>>>>>>> based upon my >>>>>>>> experience with the test recorder results files.) >>>>>>>> >>>>>>>> On 9/21/05, Eddie O'Neil <[EMAIL PROTECTED]> wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Seems that we've got a new blocker in JIRA. It's not marked as V1 >>>>>>>>> for the Fix Version, but based on the description, it seems >>>>>>>>> like we >>>>>>>>> should fix this before 1.0. >>>>>>>>> >>>>>>>>> Rich, does this sound right to you? >>>>>>>>> >>>>>>>>> Eddie >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> ---------- Forwarded message ---------- >>>>>>>>> From: Jim Cummings (JIRA) <[email protected]> >>>>>>>>> Date: Sep 21, 2005 5:59 PM >>>>>>>>> Subject: [jira] Created: (BEEHIVE-949) netui compiler does not >>>>>>>>> encode >>>>>>>>> strings in validation config files >>>>>>>>> To: [email protected] >>>>>>>>> >>>>>>>>> >>>>>>>>> netui compiler does not encode strings in validation config files >>>>>>>>> ----------------------------------------------------------------- >>>>>>>>> >>>>>>>>> Key: BEEHIVE-949 >>>>>>>>> URL: http://issues.apache.org/jira/browse/BEEHIVE-949 >>>>>>>>> Project: Beehive >>>>>>>>> Type: Bug >>>>>>>>> Components: NetUI >>>>>>>>> Versions: V1 >>>>>>>>> Environment: Windows XP. RC1 distribution from the v1/final >>>>>>>>> branch. >>>>>>>>> Reporter: Jim Cummings >>>>>>>>> Priority: Blocker >>>>>>>>> >>>>>>>>> >>>>>>>>> I am getting a runtime exception that looks like a malformed >>>>>>>>> validation config file is being generated. Here is the snippet >>>>>>>>> of the >>>>>>>>> generated config file that looks problematic. >>>>>>>>> <form-validation> >>>>>>>>> <formset> >>>>>>>>> <form name="listGroupForm"> >>>>>>>>> <field depends="mask,required" property="groupName"> >>>>>>>>> <arg0 key="groupNameRequired.displayName" resource="true"/> >>>>>>>>> <var> >>>>>>>>> <var-name>mask</var-name> >>>>>>>>> <var-value>^[^' "=,\\<>#|&~?(){}%*]*$</var-value> >>>>>>>>> </var> >>>>>>>>> .... >>>>>>>>> >>>>>>>>> A snippet from the matching controller for this is: >>>>>>>>> @Jpf.ValidatableBean >>>>>>>>> .... >>>>>>>>> validateMask = @Jpf.ValidateMask(regex="^[^' >>>>>>>>> \"=,\\\\<>#|&~?(){}%*]*$") >>>>>>>>> >>>>>>>>> And the stack trace(s) I am seeing are: >>>>>>>>> [exec] [ERROR] Digester - Parse Fatal Error at line 11 column 33: >>>>>>>>> The content of elements must consist of well-formed character >>>>>>>>> data or >>>>>>>>> markup. <org.xml.sax.SAXParseException: The content of >>>>>>>>> elements must >>>>>>>>> consist of well-formed character data or >>>>>>>>> markup.>org.xml.sax.SAXParseException: The content of elements >>>>>>>>> must >>>>>>>>> consist of well-formed character data or markup. >>>>>>>>> >>>>>>>>> [exec] at >>>>>>>>> >>>>>>>>> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException >>>>>>>>> >>>>>>>>> (ErrorHandlerWrapper.java:236) >>>>>>>>> [exec] at >>>>>>>>> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError( >>>>>>>>> >>>>>>>>> ErrorHandlerWrapper.java:215) >>>>>>>>> [exec] at >>>>>>>>> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError( >>>>>>>>> >>>>>>>>> XMLErrorReporter.java:386) >>>>>>>>> [exec] at >>>>>>>>> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError( >>>>>>>>> >>>>>>>>> XMLErrorReporter.java:316) >>>>>>>>> [exec] at >>>>>>>>> com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError( >>>>>>>>> >>>>>>>>> XMLScanner.java:1438) >>>>>>>>> [exec] at >>>>>>>>> >>>>>>>>> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch >>>>>>>>> >>>>>>>>> (XMLDocumentFragmentScannerImpl.java:1723) >>>>>>>>> [exec] at >>>>>>>>> >>>>>>>>> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument >>>>>>>>> >>>>>>>>> (XMLDocumentFragmentScannerImpl.java:368) >>>>>>>>> [exec] at >>>>>>>>> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse( >>>>>>>>> >>>>>>>>> XML11Configuration.java:834) >>>>>>>>> [exec] at >>>>>>>>> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse( >>>>>>>>> >>>>>>>>> XML11Configuration.java:764) >>>>>>>>> [exec] at >>>>>>>>> com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java >>>>>>>>> >>>>>>>>> :148) >>>>>>>>> [exec] at >>>>>>>>> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse( >>>>>>>>> >>>>>>>>> AbstractSAXParser.java:1242) >>>>>>>>> [exec] at >>>>>>>>> org.apache.commons.digester.Digester.parse(Digester.java:1591) >>>>>>>>> [exec] at >>>>>>>>> org.apache.commons.validator.ValidatorResources.<init>( >>>>>>>>> ValidatorResources.java:159) >>>>>>>>> [exec] at >>>>>>>>> org.apache.struts.validator.ValidatorPlugIn.initResources( >>>>>>>>> ValidatorPlugIn.java:237) >>>>>>>>> [exec] at >>>>>>>>> org.apache.struts.validator.ValidatorPlugIn.init(ValidatorPlugIn.java:162) >>>>>>>>> >>>>>>>>> [exec] at >>>>>>>>> org.apache.struts.action.ActionServlet.initModulePlugIns( >>>>>>>>> ActionServlet.java:869) >>>>>>>>> [exec] at >>>>>>>>> org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.registerModule >>>>>>>>> >>>>>>>>> (AutoRegisterActionServlet.java:553) >>>>>>>>> [exec] at >>>>>>>>> >>>>>>>>> org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.ensureModuleRegistered >>>>>>>>> >>>>>>>>> (AutoRegisterActionServlet.java:770) >>>>>>>>> [exec] at >>>>>>>>> org.apache.beehive.netui.pageflow.FlowControllerFactory.ensureModule( >>>>>>>>> >>>>>>>>> FlowControllerFactory.java:736) >>>>>>>>> [exec] at >>>>>>>>> org.apache.beehive.netui.pageflow.FlowControllerFactory.createPageFlow( >>>>>>>>> >>>>>>>>> FlowControllerFactory.java:209) >>>>>>>>> [exec] at >>>>>>>>> org.apache.beehive.netui.pageflow.FlowControllerFactory.createPageFlow( >>>>>>>>> >>>>>>>>> FlowControllerFactory.java:183) >>>>>>>>> >>>>>>>>> [exec] [ERROR] ValidatorPlugIn - Skipping all validation >>>>>>>>> <org.xml.sax.SAXParseException: The content of elements must >>>>>>>>> consist >>>>>>>>> of well-formed character data or >>>>>>>>> markup.>org.xml.sax.SAXParseException: The content of elements >>>>>>>>> must >>>>>>>>> consist of well-formed character data or markup. >>>>>>>>> [exec] at >>>>>>>>> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse( >>>>>>>>> >>>>>>>>> AbstractSAXParser.java:1269) >>>>>>>>> [exec] at >>>>>>>>> org.apache.commons.digester.Digester.parse(Digester.java:1591) >>>>>>>>> [exec] at >>>>>>>>> org.apache.commons.validator.ValidatorResources.<init>( >>>>>>>>> ValidatorResources.java:159) >>>>>>>>> [exec] at >>>>>>>>> org.apache.struts.validator.ValidatorPlugIn.initResources( >>>>>>>>> ValidatorPlugIn.java:237) >>>>>>>>> [exec] at >>>>>>>>> org.apache.struts.validator.ValidatorPlugIn.init(ValidatorPlugIn.java:162) >>>>>>>>> >>>>>>>>> [exec] at >>>>>>>>> org.apache.struts.action.ActionServlet.initModulePlugIns( >>>>>>>>> ActionServlet.java:869) >>>>>>>>> [exec] at >>>>>>>>> org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.registerModule >>>>>>>>> >>>>>>>>> (AutoRegisterActionServlet.java:553) >>>>>>>>> [exec] at >>>>>>>>> >>>>>>>>> org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.ensureModuleRegistered >>>>>>>>> >>>>>>>>> (AutoRegisterActionServlet.java:770) >>>>>>>>> [exec] at >>>>>>>>> org.apache.beehive.netui.pageflow.FlowControllerFactory.ensureModule( >>>>>>>>> >>>>>>>>> FlowControllerFactory.java:736) >>>>>>>>> [exec] at >>>>>>>>> org.apache.beehive.netui.pageflow.FlowControllerFactory.createPageFlow( >>>>>>>>> >>>>>>>>> FlowControllerFactory.java:209) >>>>>>>>> [exec] at >>>>>>>>> org.apache.beehive.netui.pageflow.FlowControllerFactory.createPageFlow( >>>>>>>>> >>>>>>>>> FlowControllerFactory.java:183) >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> This message is automatically generated by JIRA. >>>>>>>>> - >>>>>>>>> If you think it was sent incorrectly contact one of the >>>>>>>>> administrators: >>>>>>>>> http://issues.apache.org/jira/secure/Administrators.jspa >>>>>>>>> - >>>>>>>>> For more information on JIRA, see: >>>>>>>>> http://www.atlassian.com/software/jira >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>> >>>> >>> >>> >>> > >
