Phillip,

I do agree with you that a XML serializer should escape all invalid
characters into the form &#xx;

Paul

On Tue, 2006-12-12 at 11:21 -0500, spamsucks wrote:

> Wayne,
> In the spec, "The ampersand character (&) and the left angle bracket (<) 
> MUST NOT appear in their literal form"
> 
> However, if i send an ampersand character, the serializer escapes it.  The 
> following runs fine, although it contains bad characters:
> System.out.println(service.echo ("&bad" );
> 
> Why is it okay for us to escape some bad characters, and not other bad 
> characters?
> 
> I do like to argue;)
> 
> Phillip
> 
> ----- Original Message ----- 
> From: Wayne Keenan
> To: [email protected]
> Sent: Tuesday, December 12, 2006 11:10 AM
> Subject: Re: [xfire-user] Simple Test Case and Invalid white space character 
> (0x19)
> 
> 
> Hi,
> 
> It's not a bug, the w3 consortium's XML spec doesn't allow it, please take a 
> look at the XML specification:
> 
> http://www.w3.org/TR/REC-xml/#charsets
> 
> As you can see 0x19 is not included in the 'Char' list and a XML parser 
> should not accept nor generate it.
> 
> A XML conformance test suite explicitly ensures that the low (i.e. <0x20) 
> characters are rejected by the parser under test.
> e.g. for Xerces see: 
> http://xmlconf.sourceforge.net/xml/reports/report-xerces-cnv.html
> 
> 
> #1 switching to parser X may work intitially, but if/when the writers of 
> parser X make parser X conformant it will 'break' your app,
> #2 probably and
> #3 probably better.
> 
> regards
> Wayne
> 
> 
> 
> On 12/12/06, spamsucks <[EMAIL PROTECTED] > wrote:
> From my research, I am considering 3 options:
> 
> 1) Would a switch from from woodstox to fast infoset be recommended as a
> workaround ?
> 
> 2) Could I implement a handler that would do string substitution?  Does
> anyone have an example of adding a handler and springframework?
> 
> 3) Modify 70+ pojo setters/getters to clean the data as it is set in the
> pojo so that it's clean when sent?
> 
> I would appreciate your thoughts on which of the 3 choices you would make.
> 
> Backgrounder:
> 
> Using the "echo" type of web service, I can generate the error on the client
> send of a string that has this whitespace character.  Stacktrace is at the
> bottom of the email.
> 
> char c = (char)0x19;
> StringBuffer sb = new StringBuffer();
> sb.append(c);
> System.out.println(service.echo ("bad " + sb.toString()));
> 
> 
> Personally, I think this is a bug, I should not be concerned if my pojo
> properties/Strings are valid xml data or not, they are just strings.  I
> think the serializer should escape these whitespace characters just as it
> does other characters (i.e. &, <, >), but such is life and at the end of the
> day, my project has to be working.
> 
> 
> 
> org.codehaus.xfire.XFireRuntimeException: Could not invoke service.. Nested
> exception is org.codehaus.xfire.fault.XFireFault: Error writing document..
> Nested exception is com.ctc.wstx.exc.WstxIOException: Invalid white space
> character (0x19) in text to output
> org.codehaus.xfire.fault.XFireFault : Error writing document.. Nested
> exception is com.ctc.wstx.exc.WstxIOException: Invalid white space character
> (0x19) in text to output
> at org.codehaus.xfire.fault.XFireFault.createFault(XFireFault.java:89)
> at org.codehaus.xfire.client.Invocation.invoke(Invocation.java:79)
> at org.codehaus.xfire.client.Client.invoke(Client.java:335)
> at org.codehaus.xfire.client.XFireProxy.handleRequest(XFireProxy.java:77)
> at org.codehaus.xfire.client.XFireProxy.invoke (XFireProxy.java:57)
> at $Proxy45.echo(Unknown Source)
> at
> com.reffects.dmiserviceclient.DMIServiceClient.simpleTest(DMIServiceClient.java:96)
> at
> com.reffects.dmiserviceclient.DMIServiceClient.main(DMIServiceClient.java 
> :67)
> Caused by: org.codehaus.xfire.XFireRuntimeException: Error writing
> document.. Nested exception is com.ctc.wstx.exc.WstxIOException: Invalid
> white space character (0x19) in text to output at
> org.codehaus.xfire.aegis.stax.ElementWriter.writeValue 
> (ElementWriter.java:142)
> 
> 
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe from this list please visit:
> 
>      http://xircles.codehaus.org/manage_email 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe from this list please visit:
> 
>     http://xircles.codehaus.org/manage_email
> 

Reply via email to