Is the bug the fact that the data is being passed in two [characters] events or that the .trim() is in TextRecorder.java? I can nuke the .trim() locally but don't want to hose anything down the line.
I just want to 'fix' it here locally since I'm on a time constraint, but I will file a PR for you all also. thanks, rob On Mon, 31 Mar 2003, Carsten Ziegeler wrote: > Hi Rob, > > this is a bug! > > Carsten > > > -----Original Message----- > > From: Rob Johnston [mailto:[EMAIL PROTECTED] > > Sent: Sunday, March 30, 2003 7:19 PM > > To: [EMAIL PROTECTED] > > Subject: Question about TextRecorder in the SAXTransformer > > > > > > In the TextRecorder.java, I see the following: > > > > public void characters(char ary[], int start, int length) > > throws SAXException { > > String value = new String(ary, start, length).trim(); > > if (value.length() > 0) { > > buffer.append(value); > > } else { > > buffer.append(' '); > > } > > } > > > > I am wondering what the logic behind having the trim() in there is. > > Several times I have noticed Cocoon "eating" spaces out of the stream as > > evidenced in this log: > > > > INFO 2003-03-28 16:05:14.728 [sitemap.transformer.log ] (): > > [startElement] > > uri=http://xml.juniper.net/cocoon/work-schedule/1.0,local=start,ra > > w=sched:start > > DEBUG 2003-03-28 16:05:14.729 [sitemap.transformer.sche] (): > > BEGIN startTextRecording > > DEBUG 2003-03-28 16:05:14.730 [sitemap.transformer.sche] (): > > END startTextRecording > > INFO 2003-03-28 16:05:14.731 [sitemap.transformer.log ] (): > > [characters] 03/28/2003 > > INFO 2003-03-28 16:05:14.733 [sitemap.transformer.log ] (): > > [characters] 04:05 PM > > INFO 2003-03-28 16:05:14.734 [sitemap.transformer.log ] (): > > [endElement] > > uri=http://xml.juniper.net/cocoon/work-schedule/1.0,local=start,qn > > ame=sched:start > > DEBUG 2003-03-28 16:05:14.735 [sitemap.transformer.sche] (): > > BEGIN endTextRecording > > DEBUG 2003-03-28 16:05:14.736 [sitemap.transformer.sche] (): > > END endTextRecording text=03/28/200304:05 PM > > INFO 2003-03-28 16:05:14.737 [sitemap.transformer.log ] (): > > [endElement] > > uri=http://xml.juniper.net/cocoon/work-schedule/1.0,local=every,qn > > ame=sched:every > > ERROR 2003-03-28 16:05:14.739 [sitemap.transformer.sche] (): > > URLWorkScheduleTransformer: invalid time: 03/28/200304:05 PM > > > > <sched:start>03/28/2003 04:05 PM</sched:start> > > > > is what is supposed to be being passed to the next transformer, but > > instead, it is showing up in two different [characters] events, and > > because of the trim(), it ends up being put back together as > > "03/28/200304:05 PM" which is invalid. > > > > I was just wondering why the trim() is in there, or if what I am seeing > > is expected behavior. > > > > thanks, > > rob