Re: R: Strings to SAX events

2002-11-15 Thread Damian Chojna
Thanks for your suggestion Ludovic, it works really well!!

Damian.


Ludovic de Beaurepaire wrote:


Hi Damian,

Perhaps it helps : If you are in XSP, the following tags resolve it without
java code :

?xml version=1.0 encoding=ISO-8859-1?
xsp:page language=java xmlns:xsp=http://apache.org/xsp;
xmlns:util=http://apache.org/xsp/util/2.0;
...
util:include-expr
util:exprxsp:expr
yourXMLString
/xsp:expr/util:expr
/util:include-expr
...

Regards,

Ludovic

- Original Message -
From: Damian Chojna [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Thursday, November 14, 2002 6:02 PM
Subject: Re: R: Strings to SAX events



Hi Reinhard,

thanks for the last post. I also need to add a string as XML elements
into an XSP generator and I used your suggestion (below). It seems
to work well, but I have two questions:

1) I've noticed that the API states that the Parser is deprecated. I'm
currently using 2.0.3, if I choose to use this method will it effect me
being able to move to a newer version of cocoon at some time in the


future?


2) When I generate my XML elements it seems that the parser is including
the ?xml version=1.0 encoding=UTF-8? header. Is there a way to get
the parser not to include it, as it is causing me problems?

Thanks in advance!
Damian.




[EMAIL PROTECTED] wrote:


Luca,

In a generator I use flowing code within the generate()-Method. Maybe


this


helps:

parser = (Parser)this.manager.lookup(Parser.ROLE);
parser.setConsumer(super.xmlConsumer);
parser.parse(new InputSource(new StringReader(sb.toString(;

Regards,
Reinhard





-
Please check that your question  has not already been answered in the
FAQ before posting. http://xml.apache.org/cocoon/faq/index.html

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail:   [EMAIL PROTECTED]






-
Please check that your question  has not already been answered in the
FAQ before posting. http://xml.apache.org/cocoon/faq/index.html

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail:   [EMAIL PROTECTED]

.






-
Please check that your question  has not already been answered in the
FAQ before posting. http://xml.apache.org/cocoon/faq/index.html

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail:   [EMAIL PROTECTED]




Re: R: Strings to SAX events

2002-11-14 Thread Damian Chojna
Hi Reinhard,

thanks for the last post. I also need to add a string as XML elements 
into an XSP generator and I used your suggestion (below). It seems
to work well, but I have two questions:

1) I've noticed that the API states that the Parser is deprecated. I'm 
currently using 2.0.3, if I choose to use this method will it effect me 
being able to move to a newer version of cocoon at some time in the future?

2) When I generate my XML elements it seems that the parser is including 
the ?xml version=1.0 encoding=UTF-8? header. Is there a way to get 
the parser not to include it, as it is causing me problems?

Thanks in advance!
Damian.




[EMAIL PROTECTED] wrote:

Luca,

In a generator I use flowing code within the generate()-Method. Maybe this
helps:

parser = (Parser)this.manager.lookup(Parser.ROLE);
parser.setConsumer(super.xmlConsumer);
parser.parse(new InputSource(new StringReader(sb.toString(;

Regards,
Reinhard





-
Please check that your question  has not already been answered in the
FAQ before posting. http://xml.apache.org/cocoon/faq/index.html

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail:   [EMAIL PROTECTED]




Re: R: Strings to SAX events

2002-11-14 Thread Ludovic de Beaurepaire
Hi Damian,

Perhaps it helps : If you are in XSP, the following tags resolve it without
java code :

?xml version=1.0 encoding=ISO-8859-1?
xsp:page language=java xmlns:xsp=http://apache.org/xsp;
xmlns:util=http://apache.org/xsp/util/2.0;
...
util:include-expr
util:exprxsp:expr
yourXMLString
/xsp:expr/util:expr
/util:include-expr
...

Regards,

Ludovic

- Original Message -
From: Damian Chojna [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Thursday, November 14, 2002 6:02 PM
Subject: Re: R: Strings to SAX events


 Hi Reinhard,

 thanks for the last post. I also need to add a string as XML elements
 into an XSP generator and I used your suggestion (below). It seems
 to work well, but I have two questions:

 1) I've noticed that the API states that the Parser is deprecated. I'm
 currently using 2.0.3, if I choose to use this method will it effect me
 being able to move to a newer version of cocoon at some time in the
future?

 2) When I generate my XML elements it seems that the parser is including
 the ?xml version=1.0 encoding=UTF-8? header. Is there a way to get
 the parser not to include it, as it is causing me problems?

 Thanks in advance!
 Damian.




 [EMAIL PROTECTED] wrote:

  Luca,
 
  In a generator I use flowing code within the generate()-Method. Maybe
this
  helps:
 
  parser = (Parser)this.manager.lookup(Parser.ROLE);
  parser.setConsumer(super.xmlConsumer);
  parser.parse(new InputSource(new StringReader(sb.toString(;
 
  Regards,
  Reinhard




 -
 Please check that your question  has not already been answered in the
 FAQ before posting. http://xml.apache.org/cocoon/faq/index.html

 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail:   [EMAIL PROTECTED]





-
Please check that your question  has not already been answered in the
FAQ before posting. http://xml.apache.org/cocoon/faq/index.html

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail:   [EMAIL PROTECTED]




Re: R: Strings to SAX events

2002-11-14 Thread Andy Lewis

This should really be a code snippet...


 Hi Damian,

 Perhaps it helps : If you are in XSP, the following tags resolve it without java 
code :

 ?xml version=1.0 encoding=ISO-8859-1?
 xsp:page language=java xmlns:xsp=http://apache.org/xsp;
 xmlns:util=http://apache.org/xsp/util/2.0;
 ...
 util:include-expr
 util:exprxsp:expr
 yourXMLString
 /xsp:expr/util:expr
 /util:include-expr
 ...

 Regards,

 Ludovic

 - Original Message -
 From: Damian Chojna [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]
 Sent: Thursday, November 14, 2002 6:02 PM
 Subject: Re: R: Strings to SAX events


 Hi Reinhard,

 thanks for the last post. I also need to add a string as XML elements into an XSP 
generator
 and I used your suggestion (below). It seems to work well, but I have two questions:

 1) I've noticed that the API states that the Parser is deprecated. I'm currently 
using 2.0.3,
 if I choose to use this method will it effect me being able to move to a newer 
version of
 cocoon at some time in the
 future?

 2) When I generate my XML elements it seems that the parser is including the ?xml
 version=1.0 encoding=UTF-8? header. Is there a way to get the parser not to 
include it,
 as it is causing me problems?

 Thanks in advance!
 Damian.




 [EMAIL PROTECTED] wrote:

  Luca,
 
  In a generator I use flowing code within the generate()-Method. Maybe
 this
  helps:
 
  parser = (Parser)this.manager.lookup(Parser.ROLE);
  parser.setConsumer(super.xmlConsumer);
  parser.parse(new InputSource(new StringReader(sb.toString(;
 
  Regards,
  Reinhard




 - Please check 
that your
 question  has not already been answered in the FAQ before posting.
 http://xml.apache.org/cocoon/faq/index.html

 To unsubscribe, e-mail: [EMAIL PROTECTED] For 
additional commands,
 e-mail:   [EMAIL PROTECTED]





 - Please check 
that your
 question  has not already been answered in the FAQ before posting.
 http://xml.apache.org/cocoon/faq/index.html

 To unsubscribe, e-mail: [EMAIL PROTECTED] For additional 
commands,
 e-mail:   [EMAIL PROTECTED]


-- 
The heights of genius are only measurable by the depths of stupidity.



-
Please check that your question  has not already been answered in the
FAQ before posting. http://xml.apache.org/cocoon/faq/index.html

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail:   [EMAIL PROTECTED]




RE: R: Strings to SAX events

2002-11-14 Thread Reinhard Poetz


 -Original Message-
 From: Damian Chojna [mailto:d.chojna;adv.pl]
 Sent: Thursday, November 14, 2002 6:02 PM
 To: [EMAIL PROTECTED]
 Subject: Re: R: Strings to SAX events


 Hi Reinhard,

 thanks for the last post. I also need to add a string as XML elements
 into an XSP generator and I used your suggestion (below). It seems
 to work well, but I have two questions:

 1) I've noticed that the API states that the Parser is deprecated. I'm
 currently using 2.0.3, if I choose to use this method will it effect me
 being able to move to a newer version of cocoon at some time in
 the future?

Yep, you are right. I developed the component long time ago ... Please try
org.apache.avalon.excalibur.xml.JaxpParser.


 2) When I generate my XML elements it seems that the parser is including
 the ?xml version=1.0 encoding=UTF-8? header. Is there a way to get
 the parser not to include it, as it is causing me problems?

Currently there is a problem with the encoding (always UTF-8 encoding is
used) when you use Xalan. As far as I know those problem don't arise if you
use Saxon.

I don't know how you can remove the processing instruction.

Regards,
Reinhard


 Thanks in advance!
 Damian.




 [EMAIL PROTECTED] wrote:

  Luca,
 
  In a generator I use flowing code within the generate()-Method.
 Maybe this
  helps:
 
  parser = (Parser)this.manager.lookup(Parser.ROLE);
  parser.setConsumer(super.xmlConsumer);
  parser.parse(new InputSource(new StringReader(sb.toString(;
 
  Regards,
  Reinhard




 -
 Please check that your question  has not already been answered in the
 FAQ before posting. http://xml.apache.org/cocoon/faq/index.html

 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail:   [EMAIL PROTECTED]



-
Please check that your question  has not already been answered in the
FAQ before posting. http://xml.apache.org/cocoon/faq/index.html

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail:   [EMAIL PROTECTED]




R: R: Strings to SAX events

2002-11-11 Thread Luca Morandini
Steven,

first: we'd like to thank you for your help :)

Second: we've tried to use your suggestion... to no avail :(

Here's the failing code:

InputSource source= new InputSource(new StringReader(svgs));
XercesParser respParser;
respParser= new XercesParser();
ChartXMLConsumer cons= new ChartXMLConsumer((AbstractSAXTransformer)(this));
respParser.setConsumer(cons);
respParser.parse(source);

It fails at the last statement with the dreaded null pointer exc..
The parser we're using is an
org.apache.cocoon.components.parser.XercesParser, while the ChartXMLConsumer
is subclass of an org.apache.cocoon.xml.AbstractXMLConsumer, with suitable
methods added.

We think your idea is to trap some SAX events in the AbstractXMLConsumer
subclass, and pass them along to the Transfomer class; while some SAX
events, like StartDocument/EndDocument aren't passed along.

Well, we've done that, but it fails before even passing a single SAX event
to the transformer... any guess ?

Best regards,

P.S.
Here's the AbstractXMLConsumer subclass code:

public class ChartXMLConsumer extends AbstractXMLConsumer {

AbstractSAXTransformer trasf;

ChartXMLConsumer(AbstractSAXTransformer trasfIn) {

this.trasf= trasfIn;
}

public void processingInstruction(String target, String data)
throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED AND IGNORED PI);
}

public void startDTD(String name, String publicId, String systemId)
  throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED START DTD);
}

public void endDTD()
throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED START DTD);
}

public  void startDocument()
throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED START OF 
DOCUMENT
V.02);
}

public  void endDocument()
throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED END OF 
DOCUMENT);
}

public void startElement(String uri, String name, String raw,
 Attributes attributes) throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED 
STARTELEMENT);
trasf.startElement(uri, name, raw, attributes);
}


public void endElement(String uri, String name, String raw)
throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED ENDELEMENT);
trasf.endElement(uri, name, raw);
}
}

Luca Morandini
[EMAIL PROTECTED]
[EMAIL PROTECTED]

 -Messaggio originale-
 Da: Steven Cummings [mailto:cummingscs;netscape.net]
 Inviato: venerdì 8 novembre 2002 17.43
 A: [EMAIL PROTECTED]
 Oggetto: RE: R: Strings to SAX events


 Luca,

 I'm doing something very similar to implement a SOAPTransformer.
 What I've done is implement an XMLConsumer so that it passes ALL
 events that it recieves directly to the transformer's super-class
 (super.startElement, super.endElement... etc.) Because you've
 probably already started an output SAX stream that you want to
 embed the content of the string in, you simply neglect to pass
 along the startDocument and endDocument events. This is very
 important. Otherwise, the solution is pretty simple. Hope this helps.

 /S

 Luca Morandini [EMAIL PROTECTED] wrote:

 Ludovic,
 
 we're writing a Transformer to produce SVG (and JPEG/PNG
 optionally) charts.
 The idea is having the chart description and associated data in XML as
 input, transform them, ending up with a nice SVG to be serialized.
 
 We're using a charting library which doesn't produce a SAX stream, but
 outputs the SVG element as a string, hence, the need to insert this XML
 elements in the output SAX stream.
 
 I hope this clears the matter :)
 
 Luca Morandini
 Istituto Poligrafico e Zecca dello Stato
 [EMAIL PROTECTED]
 [EMAIL PROTECTED]
 
 
  -Messaggio originale-
  Da: Ludovic de Beaurepaire [mailto:ludovic.debeaurepaire;axonie.com]
  Inviato: venerdì 8 novembre 2002 11.26
  A: [EMAIL PROTECTED]
  Oggetto: Re: Strings to SAX events
 
 
  Luca
 
  Sorry if it is NOK, but i didn't understand why you want to add
  XML datas in
  the transformer instead of in your pipeline's generator ?
 
  Ludovic
  - Original Message -
  From: Luca Morandini [EMAIL PROTECTED]
  To: [EMAIL PROTECTED]
  Sent: Friday, November 08, 2002 11:11 AM
  Subject: R: Strings to SAX events
 
 
   Ludovic,
  
   thanks for your kind answer, but we are not in an XSP page
  (we're writing
  a
   Transformer instead), hence, your

AW: R: Strings to SAX events

2002-11-11 Thread Andres, Judith
Hallo Luca,

this is a bit of a hack, but it seems to work.

HTH
Judith

 TestTransformer.java 

 -Ursprüngliche Nachricht-
 Von:  Luca Morandini [SMTP:[EMAIL PROTECTED]]
 Gesendet am:  Montag, 11. November 2002 10:39
 An:   [EMAIL PROTECTED]
 Betreff:  R: R: Strings to SAX events
 
 Steven,
 
 first: we'd like to thank you for your help :)
 
 Second: we've tried to use your suggestion... to no avail :(
 
 Here's the failing code:
 
 InputSource source= new InputSource(new StringReader(svgs));
 XercesParser respParser;
 respParser= new XercesParser();
 ChartXMLConsumer cons= new ChartXMLConsumer((AbstractSAXTransformer)(this));
 respParser.setConsumer(cons);
 respParser.parse(source);
 
 It fails at the last statement with the dreaded null pointer exc..
 The parser we're using is an
 org.apache.cocoon.components.parser.XercesParser, while the ChartXMLConsumer
 is subclass of an org.apache.cocoon.xml.AbstractXMLConsumer, with suitable
 methods added.
 
 We think your idea is to trap some SAX events in the AbstractXMLConsumer
 subclass, and pass them along to the Transfomer class; while some SAX
 events, like StartDocument/EndDocument aren't passed along.
 
 Well, we've done that, but it fails before even passing a single SAX event
 to the transformer... any guess ?
 
 Best regards,
 
 P.S.
 Here's the AbstractXMLConsumer subclass code:
 
   public class ChartXMLConsumer extends AbstractXMLConsumer {
 
   AbstractSAXTransformer trasf;
 
   ChartXMLConsumer(AbstractSAXTransformer trasfIn) {
 
   this.trasf= trasfIn;
   }
 
   public void processingInstruction(String target, String data)
   throws SAXException {
 
   getLogger().debug([CHART XML CONSUMER] RECEIVED AND IGNORED 
PI);
   }
 
   public void startDTD(String name, String publicId, String systemId)
   throws SAXException {
 
   getLogger().debug([CHART XML CONSUMER] RECEIVED START DTD);
   }
 
   public void endDTD()
 throws SAXException {
 
   getLogger().debug([CHART XML CONSUMER] RECEIVED START DTD);
   }
 
   public  void startDocument()
   throws SAXException {
 
   getLogger().debug([CHART XML CONSUMER] RECEIVED START OF 
DOCUMENT
 V.02);
   }
 
   public  void endDocument()
   throws SAXException {
 
   getLogger().debug([CHART XML CONSUMER] RECEIVED END OF 
DOCUMENT);
   }
 
   public void startElement(String uri, String name, String raw,
  Attributes attributes) throws SAXException {
 
   getLogger().debug([CHART XML CONSUMER] RECEIVED 
STARTELEMENT);
 trasf.startElement(uri, name, raw, attributes);
   }
 
 
   public void endElement(String uri, String name, String raw)
   throws SAXException {
 
   getLogger().debug([CHART XML CONSUMER] RECEIVED ENDELEMENT);
 trasf.endElement(uri, name, raw);
   }
   }
 
 Luca Morandini
 [EMAIL PROTECTED]
 [EMAIL PROTECTED]
 
  -Messaggio originale-
  Da: Steven Cummings [mailto:cummingscs;netscape.net]
  Inviato: venerdì 8 novembre 2002 17.43
  A: [EMAIL PROTECTED]
  Oggetto: RE: R: Strings to SAX events
 
 
  Luca,
 
  I'm doing something very similar to implement a SOAPTransformer.
  What I've done is implement an XMLConsumer so that it passes ALL
  events that it recieves directly to the transformer's super-class
  (super.startElement, super.endElement... etc.) Because you've
  probably already started an output SAX stream that you want to
  embed the content of the string in, you simply neglect to pass
  along the startDocument and endDocument events. This is very
  important. Otherwise, the solution is pretty simple. Hope this helps.
 
  /S
 
  Luca Morandini [EMAIL PROTECTED] wrote:
 
  Ludovic,
  
  we're writing a Transformer to produce SVG (and JPEG/PNG 
  optionally) charts.
  The idea is having the chart description and associated data in XML as
  input, transform them, ending up with a nice SVG to be serialized.
  
  We're using a charting library which doesn't produce a SAX stream, but
  outputs the SVG element as a string, hence, the need to insert this XML
  elements in the output SAX stream.
  
  I hope this clears the matter :)
  
  Luca Morandini
  Istituto Poligrafico e Zecca dello Stato
  [EMAIL PROTECTED]
  [EMAIL PROTECTED]
  
  
   -Messaggio originale-
   Da: Ludovic de Beaurepaire [mailto:ludovic.debeaurepaire;axonie.com]
   Inviato: venerdì 8 novembre 2002 11.26
   A: [EMAIL PROTECTED]
   Oggetto: Re: Strings to SAX events
  
  
   Luca
  
   Sorry if it is NOK, but i didn't understand why you want to add
   XML datas

R: R: Strings to SAX events

2002-11-11 Thread Luca Morandini
Judith,

it seems the problem has been solved by filtering out some characters (using
the characters() method) from the input file and deleting both XML header
and DOCTYPE from the string containing the SVG.

I know this solution is weirder than the original problem... but that's a
fact :(

Anyway, thanks for the code you've provided us :)

Best regards,

Luca Morandini
[EMAIL PROTECTED]
[EMAIL PROTECTED]


 -Messaggio originale-
 Da: Andres, Judith [mailto:Judith.Andres;rauser-ag.com]
 Inviato: lunedì 11 novembre 2002 11.59
 A: [EMAIL PROTECTED]
 Oggetto: AW: R: Strings to SAX events


 Hallo Luca,

 this is a bit of a hack, but it seems to work.

 HTH
 Judith

  TestTransformer.java

  -Ursprüngliche Nachricht-
  Von:Luca Morandini [SMTP:[EMAIL PROTECTED]]
  Gesendet am:Montag, 11. November 2002 10:39
  An: [EMAIL PROTECTED]
  Betreff:R: R: Strings to SAX events
 
  Steven,
 
  first: we'd like to thank you for your help :)
 
  Second: we've tried to use your suggestion... to no avail :(
 
  Here's the failing code:
 
  InputSource source= new InputSource(new StringReader(svgs));
  XercesParser respParser;
  respParser= new XercesParser();
  ChartXMLConsumer cons= new
 ChartXMLConsumer((AbstractSAXTransformer)(this));
  respParser.setConsumer(cons);
  respParser.parse(source);
 
  It fails at the last statement with the dreaded null pointer exc..
  The parser we're using is an
  org.apache.cocoon.components.parser.XercesParser, while the
 ChartXMLConsumer
  is subclass of an org.apache.cocoon.xml.AbstractXMLConsumer,
 with suitable
  methods added.
 
  We think your idea is to trap some SAX events in the AbstractXMLConsumer
  subclass, and pass them along to the Transfomer class; while some SAX
  events, like StartDocument/EndDocument aren't passed along.
 
  Well, we've done that, but it fails before even passing a
 single SAX event
  to the transformer... any guess ?
 
  Best regards,
 
  P.S.
  Here's the AbstractXMLConsumer subclass code:
 
  public class ChartXMLConsumer extends AbstractXMLConsumer {
 
  AbstractSAXTransformer trasf;
 
  ChartXMLConsumer(AbstractSAXTransformer trasfIn) {
 
  this.trasf= trasfIn;
  }
 
  public void processingInstruction(String target,
 String data)
  throws SAXException {
 
  getLogger().debug([CHART XML CONSUMER]
 RECEIVED AND IGNORED PI);
  }
 
  public void startDTD(String name, String publicId,
 String systemId)
throws SAXException {
 
  getLogger().debug([CHART XML CONSUMER]
 RECEIVED START DTD);
  }
 
  public void endDTD()
  throws SAXException {
 
  getLogger().debug([CHART XML CONSUMER]
 RECEIVED START DTD);
  }
 
  public  void startDocument()
  throws SAXException {
 
  getLogger().debug([CHART XML CONSUMER]
 RECEIVED START OF DOCUMENT
  V.02);
  }
 
  public  void endDocument()
  throws SAXException {
 
  getLogger().debug([CHART XML CONSUMER]
 RECEIVED END OF DOCUMENT);
  }
 
  public void startElement(String uri, String name,
 String raw,
   Attributes attributes) throws
 SAXException {
 
  getLogger().debug([CHART XML CONSUMER]
 RECEIVED STARTELEMENT);
  trasf.startElement(uri, name, raw, attributes);
  }
 
 
  public void endElement(String uri, String name, String raw)
  throws SAXException {
 
  getLogger().debug([CHART XML CONSUMER]
 RECEIVED ENDELEMENT);
  trasf.endElement(uri, name, raw);
  }
  }
 
  Luca Morandini
  [EMAIL PROTECTED]
  [EMAIL PROTECTED]
 
   -Messaggio originale-
   Da: Steven Cummings [mailto:cummingscs;netscape.net]
   Inviato: venerdì 8 novembre 2002 17.43
   A: [EMAIL PROTECTED]
   Oggetto: RE: R: Strings to SAX events
  
  
   Luca,
  
   I'm doing something very similar to implement a SOAPTransformer.
   What I've done is implement an XMLConsumer so that it passes ALL
   events that it recieves directly to the transformer's super-class
   (super.startElement, super.endElement... etc.) Because you've
   probably already started an output SAX stream that you want to
   embed the content of the string in, you simply neglect to pass
   along the startDocument and endDocument events. This is very
   important. Otherwise, the solution is pretty simple. Hope this helps.
  
   /S
  
   Luca Morandini [EMAIL PROTECTED] wrote:
  
   Ludovic,
   
   we're writing a Transformer to produce SVG (and JPEG/PNG
   optionally) charts.
   The idea is having the chart description and associated data
 in XML as
   input, transform them, ending up

RE: R: R: Strings to SAX events

2002-11-11 Thread Steven Cummings
 ChartXMLConsumer((AbstractSAXTransformer)(this));
respParser.setConsumer(cons);
respParser.parse(source);

It fails at the last statement with the dreaded null pointer exc..
The parser we're using is an
org.apache.cocoon.components.parser.XercesParser, while the ChartXMLConsumer
is subclass of an org.apache.cocoon.xml.AbstractXMLConsumer, with suitable
methods added.

We think your idea is to trap some SAX events in the AbstractXMLConsumer
subclass, and pass them along to the Transfomer class; while some SAX
events, like StartDocument/EndDocument aren't passed along.

Well, we've done that, but it fails before even passing a single SAX event
to the transformer... any guess ?

Best regards,

P.S.
Here's the AbstractXMLConsumer subclass code:

public class ChartXMLConsumer extends AbstractXMLConsumer {

AbstractSAXTransformer trasf;

ChartXMLConsumer(AbstractSAXTransformer trasfIn) {

this.trasf= trasfIn;
}

public void processingInstruction(String target, String data)
throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED AND IGNORED PI);
}

public void startDTD(String name, String publicId, String systemId)
  throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED START DTD);
}

public void endDTD()
throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED START DTD);
}

public  void startDocument()
throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED START OF DOCUMENT
V.02);
}

public  void endDocument()
throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED END OF DOCUMENT);
}

public void startElement(String uri, String name, String raw,
 Attributes attributes) throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED STARTELEMENT);
trasf.startElement(uri, name, raw, attributes);
}


public void endElement(String uri, String name, String raw)
throws SAXException {

getLogger().debug([CHART XML CONSUMER] RECEIVED ENDELEMENT);
trasf.endElement(uri, name, raw);
}
}

Luca Morandini
[EMAIL PROTECTED]
[EMAIL PROTECTED]

 -Messaggio originale-
 Da: Steven Cummings [mailto:cummingscs;netscape.net]
 Inviato: venerdì 8 novembre 2002 17.43
 A: [EMAIL PROTECTED]
 Oggetto: RE: R: Strings to SAX events


 Luca,

 I'm doing something very similar to implement a SOAPTransformer.
 What I've done is implement an XMLConsumer so that it passes ALL
 events that it recieves directly to the transformer's super-class
 (super.startElement, super.endElement... etc.) Because you've
 probably already started an output SAX stream that you want to
 embed the content of the string in, you simply neglect to pass
 along the startDocument and endDocument events. This is very
 important. Otherwise, the solution is pretty simple. Hope this helps.

 /S

 Luca Morandini [EMAIL PROTECTED] wrote:

 Ludovic,
 
 we're writing a Transformer to produce SVG (and JPEG/PNG
 optionally) charts.
 The idea is having the chart description and associated data in XML as
 input, transform them, ending up with a nice SVG to be serialized.
 
 We're using a charting library which doesn't produce a SAX stream, but
 outputs the SVG element as a string, hence, the need to insert this XML
 elements in the output SAX stream.
 
 I hope this clears the matter :)
 
 Luca Morandini
 Istituto Poligrafico e Zecca dello Stato
 [EMAIL PROTECTED]
 [EMAIL PROTECTED]
 
 
  -Messaggio originale-
  Da: Ludovic de Beaurepaire [mailto:ludovic.debeaurepaire;axonie.com]
  Inviato: venerdì 8 novembre 2002 11.26
  A: [EMAIL PROTECTED]
  Oggetto: Re: Strings to SAX events
 
 
  Luca
 
  Sorry if it is NOK, but i didn't understand why you want to add
  XML datas in
  the transformer instead of in your pipeline's generator ?
 
  Ludovic
  - Original Message -
  From: Luca Morandini [EMAIL PROTECTED]
  To: [EMAIL PROTECTED]
  Sent: Friday, November 08, 2002 11:11 AM
  Subject: R: Strings to SAX events
 
 
   Ludovic,
  
   thanks for your kind answer, but we are not in an XSP page
  (we're writing
  a
   Transformer instead), hence, your suggestion is not truly
 useful to us.
  
   Best regards,
  
   Luca Morandini
   [EMAIL PROTECTED]
  
-Messaggio originale-
Da: Ludovic de Beaurepaire
 [mailto:ludovic.debeaurepaire;axonie.com]
Inviato: venerdì 8 novembre 2002 11.02
A: [EMAIL PROTECTED]
Oggetto: Re: Strings to SAX events
   
   
Try in a XSP the following, data is your xml string :
   
util:include-expr
util:exprxsp:expr
data
/xsp:expr/util:expr
/util:include-expr
   
   
   
- Original Message -
From: Luca Morandini [EMAIL PROTECTED

Re: R: Strings to SAX events

2002-11-08 Thread reinhard_poetz
Luca,

In a generator I use flowing code within the generate()-Method. Maybe this
helps:

 parser = (Parser)this.manager.lookup(Parser.ROLE);
 parser.setConsumer(super.xmlConsumer);   
 parser.parse(new InputSource(new StringReader(sb.toString(;

Regards,
Reinhard

 Ludovic,
 
 thanks for your kind answer, but we are not in an XSP page (we're writing
 a
 Transformer instead), hence, your suggestion is not truly useful to us.
 
 Best regards,
 
 Luca Morandini
 [EMAIL PROTECTED]
 
  -Messaggio originale-
  Da: Ludovic de Beaurepaire [mailto:ludovic.debeaurepaire;axonie.com]
  Inviato: venerdì 8 novembre 2002 11.02
  A: [EMAIL PROTECTED]
  Oggetto: Re: Strings to SAX events
 
 
  Try in a XSP the following, data is your xml string :
 
  util:include-expr
  util:exprxsp:expr
  data
  /xsp:expr/util:expr
  /util:include-expr
 
 
 
  - Original Message -
  From: Luca Morandini [EMAIL PROTECTED]
  To: [EMAIL PROTECTED]
  Sent: Friday, November 08, 2002 10:55 AM
  Subject: Strings to SAX events
 
 
   Folks,
  
We're in the process of writing a Transformer, which, of
  course, outputs
   SAX
events... but, in the midst of this stream , we need to insert an
XML element stored in a string.
  
To do this we're groping in the dark trying something like this:
  
 JaxpParser respParser = new JaxpParser();
 respParser.parse( new InputSource(new StringReader(str)),
 new EmbeddedXMLPipe(contentHandler));
  
Which fails giving this:
org.apache.cocoon.ProcessingException: Failed to execute pipeline.:
java.lang.ClassCastException
...
Caused by: java.lang.ClassCastException
 at
  
  
  com.lucamorandini.charts.ChartTransformer.endElement(ChartTransfor
  mer.java:6
   55)
 at
  
  
  org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XM
  LByteStrea
   mInterpreter.java:129)
 at
  
  
  org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserial
  ize(XMLByt
   eStreamInterpreter.java:102)
 at
org.apache.cocoon.components.pipeline.CachingEventPipeline.process
(CachingEventPipeline.java:219)
 ... 44 more
  
java.lang.ClassCastException
 at
  
  
  com.lucamorandini.charts.ChartTransformer.endElement(ChartTransfor
  mer.java:6
   55)
 at
  
  
  org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XM
  LByteStrea
   mInterpreter.java:129)
 at
  
  
  org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserial
  ize(XMLByt
   eStreamInterpreter.java:102)
 at
org.apache.cocoon.components.pipeline.CachingEventPipeline.process
(CachingEventPipeline.java:219)
 at
  
  
  org.apache.cocoon.components.pipeline.CachingStreamPipeline.proces
  s(CachingS
   treamPipeline.java:399)
  
The classes we use are:
 org.apache.avalon.excalibur.xml.JaxpParser;
 org.xml.sax.InputSource;
 java.io.StringReader;
 org.apache.cocoon.xml.EmbeddedXMLPipe;
  
And the environment is:
 Solaris 5.8
 JDK 1.4.1_01
 Tomcat 4.1.12-LE-jdk14
 Cocoon 2.0.3
  
May someone please help us ?
  
Thanks in advance,
  
   Piero De Nicola  Luca Morandini
  
  
We are protected from the virus by Norton Antivirus
  Corporate Edition
  
   -
   Please check that your question  has not already been answered in the
   FAQ before posting. http://xml.apache.org/cocoon/faq/index.html
  
   To unsubscribe, e-mail: [EMAIL PROTECTED]
   For additional commands, e-mail:   [EMAIL PROTECTED]
  
  
  
 
 
  -
  Please check that your question  has not already been answered in the
  FAQ before posting. http://xml.apache.org/cocoon/faq/index.html
 
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail:   [EMAIL PROTECTED]
 
 
 
  We are protected from the virus by Norton Antivirus Corporate Edition
 
 -
 Please check that your question  has not already been answered in the
 FAQ before posting. http://xml.apache.org/cocoon/faq/index.html
 
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail:   [EMAIL PROTECTED]
 

-- 
+++ GMX - Mail, Messaging  more  http://www.gmx.net +++
NEU: Mit GMX ins Internet. Rund um die Uhr für 1 ct/ Min. surfen!


-
Please check that your question  has not already been answered in the
FAQ before posting. http://xml.apache.org/cocoon/faq/index.html

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail:   [EMAIL PROTECTED]




R: Strings to SAX events

2002-11-08 Thread Luca Morandini
Ludovic,

we're writing a Transformer to produce SVG (and JPEG/PNG optionally) charts.
The idea is having the chart description and associated data in XML as
input, transform them, ending up with a nice SVG to be serialized.

We're using a charting library which doesn't produce a SAX stream, but
outputs the SVG element as a string, hence, the need to insert this XML
elements in the output SAX stream.

I hope this clears the matter :)

Luca Morandini
Istituto Poligrafico e Zecca dello Stato
[EMAIL PROTECTED]
[EMAIL PROTECTED]


 -Messaggio originale-
 Da: Ludovic de Beaurepaire [mailto:ludovic.debeaurepaire;axonie.com]
 Inviato: venerdì 8 novembre 2002 11.26
 A: [EMAIL PROTECTED]
 Oggetto: Re: Strings to SAX events


 Luca

 Sorry if it is NOK, but i didn't understand why you want to add
 XML datas in
 the transformer instead of in your pipeline's generator ?

 Ludovic
 - Original Message -
 From: Luca Morandini [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]
 Sent: Friday, November 08, 2002 11:11 AM
 Subject: R: Strings to SAX events


  Ludovic,
 
  thanks for your kind answer, but we are not in an XSP page
 (we're writing
 a
  Transformer instead), hence, your suggestion is not truly useful to us.
 
  Best regards,
 
  Luca Morandini
  [EMAIL PROTECTED]
 
   -Messaggio originale-
   Da: Ludovic de Beaurepaire [mailto:ludovic.debeaurepaire;axonie.com]
   Inviato: venerdì 8 novembre 2002 11.02
   A: [EMAIL PROTECTED]
   Oggetto: Re: Strings to SAX events
  
  
   Try in a XSP the following, data is your xml string :
  
   util:include-expr
   util:exprxsp:expr
   data
   /xsp:expr/util:expr
   /util:include-expr
  
  
  
   - Original Message -
   From: Luca Morandini [EMAIL PROTECTED]
   To: [EMAIL PROTECTED]
   Sent: Friday, November 08, 2002 10:55 AM
   Subject: Strings to SAX events
  
  
Folks,
   
 We're in the process of writing a Transformer, which, of
   course, outputs
SAX
 events... but, in the midst of this stream , we need to insert an
 XML element stored in a string.
   
 To do this we're groping in the dark trying something like this:
   
  JaxpParser respParser = new JaxpParser();
  respParser.parse( new InputSource(new StringReader(str)),
  new EmbeddedXMLPipe(contentHandler));
   
 Which fails giving this:
 org.apache.cocoon.ProcessingException: Failed to execute pipeline.:
 java.lang.ClassCastException
 ...
 Caused by: java.lang.ClassCastException
  at
   
   
   com.lucamorandini.charts.ChartTransformer.endElement(ChartTransfor
   mer.java:6
55)
  at
   
   
   org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XM
   LByteStrea
mInterpreter.java:129)
  at
   
   
   org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserial
   ize(XMLByt
eStreamInterpreter.java:102)
  at
 org.apache.cocoon.components.pipeline.CachingEventPipeline.process
 (CachingEventPipeline.java:219)
  ... 44 more
   
 java.lang.ClassCastException
  at
   
   
   com.lucamorandini.charts.ChartTransformer.endElement(ChartTransfor
   mer.java:6
55)
  at
   
   
   org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XM
   LByteStrea
mInterpreter.java:129)
  at
   
   
   org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserial
   ize(XMLByt
eStreamInterpreter.java:102)
  at
 org.apache.cocoon.components.pipeline.CachingEventPipeline.process
 (CachingEventPipeline.java:219)
  at
   
   
   org.apache.cocoon.components.pipeline.CachingStreamPipeline.proces
   s(CachingS
treamPipeline.java:399)
   
 The classes we use are:
  org.apache.avalon.excalibur.xml.JaxpParser;
  org.xml.sax.InputSource;
  java.io.StringReader;
  org.apache.cocoon.xml.EmbeddedXMLPipe;
   
 And the environment is:
  Solaris 5.8
  JDK 1.4.1_01
  Tomcat 4.1.12-LE-jdk14
  Cocoon 2.0.3
   
 May someone please help us ?
   
 Thanks in advance,
   
Piero De Nicola  Luca Morandini
   
   
 We are protected from the virus by Norton Antivirus
   Corporate Edition
   
   
 -
Please check that your question  has not already been
 answered in the
FAQ before posting.
http://xml.apache.org/cocoon/faq/index.html
  
   To unsubscribe, e-mail: [EMAIL PROTECTED]
   For additional commands, e-mail:   [EMAIL PROTECTED]
  
  
  
 
 
  -
  Please check that your question  has not already been answered in the
  FAQ before posting. http://xml.apache.org/cocoon/faq/index.html
 
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail:   [EMAIL PROTECTED]
 


  We are protected from the virus by Norton Antivirus Corporate Edition

 -
 Please check

Re: R: Strings to SAX events

2002-11-08 Thread Marcus Crafter
Hi Luca,

Have you seen the WingsTransformer in 2.1 scratchpad ? It converts
xcml (over at Krysalis) chart markup to svg which you can then give
to svg2png/etc.

I'm using it at the moment and it works quite well for pie, line
and bar charts. Perhaps that might be of use, as it works nicely
with Cocoon ?

Cheers,

Marcus

On Fri, Nov 08, 2002 at 11:33:03AM +0100, Luca Morandini wrote:
 Ludovic,
 
 we're writing a Transformer to produce SVG (and JPEG/PNG optionally) charts.
 The idea is having the chart description and associated data in XML as
 input, transform them, ending up with a nice SVG to be serialized.
 
 We're using a charting library which doesn't produce a SAX stream, but
 outputs the SVG element as a string, hence, the need to insert this XML
 elements in the output SAX stream.
 
 I hope this clears the matter :)
 
 Luca Morandini
 Istituto Poligrafico e Zecca dello Stato
 [EMAIL PROTECTED]
 [EMAIL PROTECTED]
 
 
  -Messaggio originale-
  Da: Ludovic de Beaurepaire [mailto:ludovic.debeaurepaire;axonie.com]
  Inviato: venerdì 8 novembre 2002 11.26
  A: [EMAIL PROTECTED]
  Oggetto: Re: Strings to SAX events
 
 
  Luca
 
  Sorry if it is NOK, but i didn't understand why you want to add
  XML datas in
  the transformer instead of in your pipeline's generator ?
 
  Ludovic
  - Original Message -
  From: Luca Morandini [EMAIL PROTECTED]
  To: [EMAIL PROTECTED]
  Sent: Friday, November 08, 2002 11:11 AM
  Subject: R: Strings to SAX events
 
 
   Ludovic,
  
   thanks for your kind answer, but we are not in an XSP page
  (we're writing
  a
   Transformer instead), hence, your suggestion is not truly useful to us.
  
   Best regards,
  
   Luca Morandini
   [EMAIL PROTECTED]
  
-Messaggio originale-
Da: Ludovic de Beaurepaire [mailto:ludovic.debeaurepaire;axonie.com]
Inviato: venerdì 8 novembre 2002 11.02
A: [EMAIL PROTECTED]
Oggetto: Re: Strings to SAX events
   
   
Try in a XSP the following, data is your xml string :
   
util:include-expr
util:exprxsp:expr
data
/xsp:expr/util:expr
/util:include-expr
   
   
   
- Original Message -
From: Luca Morandini [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Friday, November 08, 2002 10:55 AM
Subject: Strings to SAX events
   
   
 Folks,

  We're in the process of writing a Transformer, which, of
course, outputs
 SAX
  events... but, in the midst of this stream , we need to insert an
  XML element stored in a string.

  To do this we're groping in the dark trying something like this:

   JaxpParser respParser = new JaxpParser();
   respParser.parse( new InputSource(new StringReader(str)),
   new EmbeddedXMLPipe(contentHandler));

  Which fails giving this:
  org.apache.cocoon.ProcessingException: Failed to execute pipeline.:
  java.lang.ClassCastException
  ...
  Caused by: java.lang.ClassCastException
   at


com.lucamorandini.charts.ChartTransformer.endElement(ChartTransfor
mer.java:6
 55)
   at


org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XM
LByteStrea
 mInterpreter.java:129)
   at


org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserial
ize(XMLByt
 eStreamInterpreter.java:102)
   at
  org.apache.cocoon.components.pipeline.CachingEventPipeline.process
  (CachingEventPipeline.java:219)
   ... 44 more

  java.lang.ClassCastException
   at


com.lucamorandini.charts.ChartTransformer.endElement(ChartTransfor
mer.java:6
 55)
   at


org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XM
LByteStrea
 mInterpreter.java:129)
   at


org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserial
ize(XMLByt
 eStreamInterpreter.java:102)
   at
  org.apache.cocoon.components.pipeline.CachingEventPipeline.process
  (CachingEventPipeline.java:219)
   at


org.apache.cocoon.components.pipeline.CachingStreamPipeline.proces
s(CachingS
 treamPipeline.java:399)

  The classes we use are:
   org.apache.avalon.excalibur.xml.JaxpParser;
   org.xml.sax.InputSource;
   java.io.StringReader;
   org.apache.cocoon.xml.EmbeddedXMLPipe;

  And the environment is:
   Solaris 5.8
   JDK 1.4.1_01
   Tomcat 4.1.12-LE-jdk14
   Cocoon 2.0.3

  May someone please help us ?

  Thanks in advance,

 Piero De Nicola  Luca Morandini


  We are protected from the virus by Norton Antivirus
Corporate Edition


  -
 Please check that your question  has not already been
  answered in the
 FAQ before posting

R: R: Strings to SAX events

2002-11-08 Thread Luca Morandini
Marcus,

thanks for you help, but our implementation uses a SAX Transformer.
We evaluated Wings and decided to go our own way: I hate re-inventing the
wheel, but this time I deemed it necessary.

Best regards,

Luca Morandini
[EMAIL PROTECTED]

 -Messaggio originale-
 Da: Marcus Crafter [mailto:crafterm;fztig938.bank.dresdner.net]
 Inviato: venerdì 8 novembre 2002 13.00
 A: [EMAIL PROTECTED]
 Oggetto: Re: R: Strings to SAX events


 Hi Luca,

   Have you seen the WingsTransformer in 2.1 scratchpad ? It converts
   xcml (over at Krysalis) chart markup to svg which you can then give
   to svg2png/etc.

   I'm using it at the moment and it works quite well for pie, line
   and bar charts. Perhaps that might be of use, as it works nicely
   with Cocoon ?

   Cheers,

   Marcus

 On Fri, Nov 08, 2002 at 11:33:03AM +0100, Luca Morandini wrote:
  Ludovic,
 
  we're writing a Transformer to produce SVG (and JPEG/PNG
 optionally) charts.
  The idea is having the chart description and associated data in XML as
  input, transform them, ending up with a nice SVG to be serialized.
 
  We're using a charting library which doesn't produce a SAX stream, but
  outputs the SVG element as a string, hence, the need to insert this XML
  elements in the output SAX stream.
 
  I hope this clears the matter :)
 
  Luca Morandini
  Istituto Poligrafico e Zecca dello Stato
  [EMAIL PROTECTED]
  [EMAIL PROTECTED]
 
 
   -Messaggio originale-
   Da: Ludovic de Beaurepaire [mailto:ludovic.debeaurepaire;axonie.com]
   Inviato: venerdì 8 novembre 2002 11.26
   A: [EMAIL PROTECTED]
   Oggetto: Re: Strings to SAX events
  
  
   Luca
  
   Sorry if it is NOK, but i didn't understand why you want to add
   XML datas in
   the transformer instead of in your pipeline's generator ?
  
   Ludovic
   - Original Message -
   From: Luca Morandini [EMAIL PROTECTED]
   To: [EMAIL PROTECTED]
   Sent: Friday, November 08, 2002 11:11 AM
   Subject: R: Strings to SAX events
  
  
Ludovic,
   
thanks for your kind answer, but we are not in an XSP page
   (we're writing
   a
Transformer instead), hence, your suggestion is not truly
 useful to us.
   
Best regards,
   
Luca Morandini
[EMAIL PROTECTED]
   
 -Messaggio originale-
 Da: Ludovic de Beaurepaire
 [mailto:ludovic.debeaurepaire;axonie.com]
 Inviato: venerdì 8 novembre 2002 11.02
 A: [EMAIL PROTECTED]
 Oggetto: Re: Strings to SAX events


 Try in a XSP the following, data is your xml string :

 util:include-expr
 util:exprxsp:expr
 data
 /xsp:expr/util:expr
 /util:include-expr



 - Original Message -
 From: Luca Morandini [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]
 Sent: Friday, November 08, 2002 10:55 AM
 Subject: Strings to SAX events


  Folks,
 
   We're in the process of writing a Transformer, which, of
 course, outputs
  SAX
   events... but, in the midst of this stream , we need
 to insert an
   XML element stored in a string.
 
   To do this we're groping in the dark trying something
 like this:
 
JaxpParser respParser = new JaxpParser();
respParser.parse( new InputSource(new StringReader(str)),
new EmbeddedXMLPipe(contentHandler));
 
   Which fails giving this:
   org.apache.cocoon.ProcessingException: Failed to
 execute pipeline.:
   java.lang.ClassCastException
   ...
   Caused by: java.lang.ClassCastException
at
 
 
 com.lucamorandini.charts.ChartTransformer.endElement(ChartTransfor
 mer.java:6
  55)
at
 
 
 org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XM
 LByteStrea
  mInterpreter.java:129)
at
 
 
 org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserial
 ize(XMLByt
  eStreamInterpreter.java:102)
at
 
 org.apache.cocoon.components.pipeline.CachingEventPipeline.process
   (CachingEventPipeline.java:219)
... 44 more
 
   java.lang.ClassCastException
at
 
 
 com.lucamorandini.charts.ChartTransformer.endElement(ChartTransfor
 mer.java:6
  55)
at
 
 
 org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XM
 LByteStrea
  mInterpreter.java:129)
at
 
 
 org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserial
 ize(XMLByt
  eStreamInterpreter.java:102)
at
 
 org.apache.cocoon.components.pipeline.CachingEventPipeline.process
   (CachingEventPipeline.java:219)
at
 
 
 org.apache.cocoon.components.pipeline.CachingStreamPipeline.proces
 s(CachingS
  treamPipeline.java:399)
 
   The classes we use are:
org.apache.avalon.excalibur.xml.JaxpParser;
org.xml.sax.InputSource;
java.io.StringReader

RE: R: Strings to SAX events

2002-11-08 Thread Steven Cummings
Luca,

I'm doing something very similar to implement a SOAPTransformer. What I've done is 
implement an XMLConsumer so that it passes ALL events that it recieves directly to the 
transformer's super-class (super.startElement, super.endElement... etc.) Because 
you've probably already started an output SAX stream that you want to embed the 
content of the string in, you simply neglect to pass along the startDocument and 
endDocument events. This is very important. Otherwise, the solution is pretty simple. 
Hope this helps.

/S

Luca Morandini [EMAIL PROTECTED] wrote:

Ludovic,

we're writing a Transformer to produce SVG (and JPEG/PNG optionally) charts.
The idea is having the chart description and associated data in XML as
input, transform them, ending up with a nice SVG to be serialized.

We're using a charting library which doesn't produce a SAX stream, but
outputs the SVG element as a string, hence, the need to insert this XML
elements in the output SAX stream.

I hope this clears the matter :)

Luca Morandini
Istituto Poligrafico e Zecca dello Stato
[EMAIL PROTECTED]
[EMAIL PROTECTED]


 -Messaggio originale-
 Da: Ludovic de Beaurepaire [mailto:ludovic.debeaurepaire;axonie.com]
 Inviato: venerdì 8 novembre 2002 11.26
 A: [EMAIL PROTECTED]
 Oggetto: Re: Strings to SAX events


 Luca

 Sorry if it is NOK, but i didn't understand why you want to add
 XML datas in
 the transformer instead of in your pipeline's generator ?

 Ludovic
 - Original Message -
 From: Luca Morandini [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]
 Sent: Friday, November 08, 2002 11:11 AM
 Subject: R: Strings to SAX events


  Ludovic,
 
  thanks for your kind answer, but we are not in an XSP page
 (we're writing
 a
  Transformer instead), hence, your suggestion is not truly useful to us.
 
  Best regards,
 
  Luca Morandini
  [EMAIL PROTECTED]
 
   -Messaggio originale-
   Da: Ludovic de Beaurepaire [mailto:ludovic.debeaurepaire;axonie.com]
   Inviato: venerdì 8 novembre 2002 11.02
   A: [EMAIL PROTECTED]
   Oggetto: Re: Strings to SAX events
  
  
   Try in a XSP the following, data is your xml string :
  
   util:include-expr
   util:exprxsp:expr
   data
   /xsp:expr/util:expr
   /util:include-expr
  
  
  
   - Original Message -
   From: Luca Morandini [EMAIL PROTECTED]
   To: [EMAIL PROTECTED]
   Sent: Friday, November 08, 2002 10:55 AM
   Subject: Strings to SAX events
  
  
Folks,
   
 We're in the process of writing a Transformer, which, of
   course, outputs
SAX
 events... but, in the midst of this stream , we need to insert an
 XML element stored in a string.
   
 To do this we're groping in the dark trying something like this:
   
  JaxpParser respParser = new JaxpParser();
  respParser.parse( new InputSource(new StringReader(str)),
  new EmbeddedXMLPipe(contentHandler));
   
 Which fails giving this:
 org.apache.cocoon.ProcessingException: Failed to execute pipeline.:
 java.lang.ClassCastException
 ...
 Caused by: java.lang.ClassCastException
  at
   
   
   com.lucamorandini.charts.ChartTransformer.endElement(ChartTransfor
   mer.java:6
55)
  at
   
   
   org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XM
   LByteStrea
mInterpreter.java:129)
  at
   
   
   org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserial
   ize(XMLByt
eStreamInterpreter.java:102)
  at
 org.apache.cocoon.components.pipeline.CachingEventPipeline.process
 (CachingEventPipeline.java:219)
  ... 44 more
   
 java.lang.ClassCastException
  at
   
   
   com.lucamorandini.charts.ChartTransformer.endElement(ChartTransfor
   mer.java:6
55)
  at
   
   
   org.apache.cocoon.components.sax.XMLByteStreamInterpreter.parse(XM
   LByteStrea
mInterpreter.java:129)
  at
   
   
   org.apache.cocoon.components.sax.XMLByteStreamInterpreter.deserial
   ize(XMLByt
eStreamInterpreter.java:102)
  at
 org.apache.cocoon.components.pipeline.CachingEventPipeline.process
 (CachingEventPipeline.java:219)
  at
   
   
   org.apache.cocoon.components.pipeline.CachingStreamPipeline.proces
   s(CachingS
treamPipeline.java:399)
   
 The classes we use are:
  org.apache.avalon.excalibur.xml.JaxpParser;
  org.xml.sax.InputSource;
  java.io.StringReader;
  org.apache.cocoon.xml.EmbeddedXMLPipe;
   
 And the environment is:
  Solaris 5.8
  JDK 1.4.1_01
  Tomcat 4.1.12-LE-jdk14
  Cocoon 2.0.3
   
 May someone please help us ?
   
 Thanks in advance,
   
Piero De Nicola  Luca Morandini
   
   
 We are protected from the virus by Norton Antivirus
   Corporate Edition
   
   
 -
Please check that your question  has not already been
 answered in the
FAQ before posting.
http://xml.apache.org/cocoon/faq/index.html
  
   To unsubscribe, e-mail: [EMAIL