Re: cvs commit: xml-fop/examples/embedding/java/embedding ExampleFO2PDF.java

2004-07-20 Thread Jeremias Maerki
Just nitpicking, but could we call it ExampleFO2PDF-SAXParser instead of
just SAX, because the transformer solution relies on SAX, too? I don't
have a problem with long names. :-)

On 16.07.2004 21:14:18 Simon Pepping wrote:
 Perhaps it is a good idea to illustrate the transformer solution in
 ExampleFO2PDF, and the outlying SAX parser solution in
 ExampleFO2PDF-SAX.



Jeremias Maerki



Re: cvs commit: xml-fop/examples/embedding/java/embedding ExampleFO2PDF.java

2004-07-20 Thread Glen Mazza
I renamed it yesterday.

Glen

--- Jeremias Maerki [EMAIL PROTECTED] wrote:
 Just nitpicking, but could we call it
 ExampleFO2PDF-SAXParser instead of
 just SAX, because the transformer solution relies
 on SAX, too? I don't
 have a problem with long names. :-)
 
 On 16.07.2004 21:14:18 Simon Pepping wrote:
  Perhaps it is a good idea to illustrate the
 transformer solution in
  ExampleFO2PDF, and the outlying SAX parser
 solution in
  ExampleFO2PDF-SAX.
 
 
 
 Jeremias Maerki
 
 



Re: cvs commit: xml-fop/examples/embedding/java/embedding ExampleFO2PDF.java

2004-07-20 Thread Jeremias Maerki
Great. Sorry for the noise.

On 20.07.2004 22:34:28 Glen Mazza wrote:
 I renamed it yesterday.
 
 Glen
 
 --- Jeremias Maerki [EMAIL PROTECTED] wrote:
  Just nitpicking, but could we call it
  ExampleFO2PDF-SAXParser instead of
  just SAX, because the transformer solution relies
  on SAX, too? I don't
  have a problem with long names. :-)
  
  On 16.07.2004 21:14:18 Simon Pepping wrote:
   Perhaps it is a good idea to illustrate the
  transformer solution in
   ExampleFO2PDF, and the outlying SAX parser
  solution in
   ExampleFO2PDF-SAX.



Jeremias Maerki



Re: cvs commit: xml-fop/examples/embedding/java/embedding ExampleFO2PDF.java

2004-07-17 Thread Glen Mazza
Good idea...this way those who prefer the
SAXParserFactory method can see how FOP would work
this way.  (I tried to show both cases in one example,
but it just made a mess of things.)  If you could take
care of this for us, it would be appreciated--else
I'll (probably) get to it eventually.

Glen

--- Simon Pepping [EMAIL PROTECTED] wrote:
 Perhaps it is a good idea to illustrate the
 transformer solution in
 ExampleFO2PDF, and the outlying SAX parser solution
 in
 ExampleFO2PDF-SAX.
 
 Regards, Simon
 



Re: cvs commit: xml-fop/examples/embedding/java/embedding ExampleFO2PDF.java

2004-07-16 Thread Simon Pepping
Glen,

I can see Jeremias' argument for a single pattern to deal with all
situations, but I am pleased to see the SAX solution illustrated by an
example in this simplest case of all.

Perhaps it is a good idea to illustrate the transformer solution in
ExampleFO2PDF, and the outlying SAX parser solution in
ExampleFO2PDF-SAX.

Regards, Simon

On Thu, Jul 15, 2004 at 08:59:21PM -0700, Glen Mazza wrote:
 Thanks, Simon--I didn't think of this way of solving
 the problem--I just modified Jeremias' previous DOM
 example. However, I placed the method below
 temporarily in the example and committed it before
 returning to the Transformer version.  This way, we
 have a working example should we ever need to document
 this style (perhaps on a web page, so users are at
 least aware of it) in the future.
 
 Glen
 

-- 
Simon Pepping
home page: http://www.leverkruid.nl



Re: cvs commit: xml-fop/examples/embedding/java/embedding ExampleFO2PDF.java

2004-07-15 Thread Jeremias Maerki
Because, IMO, it allows the user to use the same pattern for virtually
everything:
1. Create a TransformerFactory
2. Create a Transformer and optionally use a stylesheet
3. Specify the Source (DOM, stream, file, SAX)
4. Specify the Result (DOM, stream, file, SAX)
5. Start the transformation.

I use the JAXP part for XML parsing almost never because I can do most
with this pattern. During my work I realized that most people don't even
know about this pattern. They save the FO as a file or as a DOM and then
send it to FOP. Very inefficient. Using the one API approach we can
teach our users a few handy things with which they can do whatever they
need:
- Serializing a DOM to a file
- Transforming an XML file to HTML
- Creating a PDF from a Java object
- you name it.

Of course, in some situation you will need to learn a few additional
things like using the TransformerHandler for pipelining multiple XSL
transformations. But most of the things can be done using the
Transformer.

On 15.07.2004 20:52:23 Simon Pepping wrote:
 On Wed, Jul 14, 2004 at 10:42:29PM -, [EMAIL PROTECTED] wrote:
  gmazza  2004/07/14 15:42:29
  
Modified:examples/embedding/java/embedding ExampleFO2PDF.java
Log:
Updated FO-PDF example to use JAXP.
+// Setup JAXP using identity transformer
+TransformerFactory factory = TransformerFactory.newInstance();
+Transformer transformer = factory.newTransformer(); // identity 
  transformer
+
+// Setup input for XSLT transformation
+Source src = new StreamSource(fo);
+// Resulting SAX events (the generated FO) must be piped through to 
  FOP
+Result res = new SAXResult(driver.getContentHandler());
+
+// Start XSLT transformation and FOP processing
+transformer.transform(src, res);
 
 This is as much JAXP:
 
 Driver.run:
 render(FOFileHandler.createParser(), source);
 
 FOFileHandler.createParser:
 SAXParserFactory factory = SAXParserFactory.newInstance();
 factory.setNamespaceAware(true);
 return factory.newSAXParser().getXMLReader();
 
 Why is having a transformer object in between better?


Jeremias Maerki



Re: cvs commit: xml-fop/examples/embedding/java/embedding ExampleFO2PDF.java

2004-07-15 Thread Glen Mazza
Thanks, Simon--I didn't think of this way of solving
the problem--I just modified Jeremias' previous DOM
example. However, I placed the method below
temporarily in the example and committed it before
returning to the Transformer version.  This way, we
have a working example should we ever need to document
this style (perhaps on a web page, so users are at
least aware of it) in the future.

Glen

--- Simon Pepping [EMAIL PROTECTED] wrote:
 
 This is as much JAXP:
 
 Driver.run:
 render(FOFileHandler.createParser(),
 source);
 
 FOFileHandler.createParser:
 SAXParserFactory factory =
 SAXParserFactory.newInstance();
 factory.setNamespaceAware(true);
 return
 factory.newSAXParser().getXMLReader();
 
 Why is having a transformer object in between
 better?
 
 Regards, Simon
 
 -- 
 Simon Pepping
 home page: http://www.leverkruid.nl
 
 



Re: cvs commit: xml-fop/examples/embedding/java/embedding ExampleFO2PDF.java

2004-07-15 Thread Glen Mazza
Sounds good.

--- Jeremias Maerki [EMAIL PROTECTED] wrote:
 Because, IMO, it allows the user to use the same
 pattern for virtually
 everything:
 1. Create a TransformerFactory
 2. Create a Transformer and optionally use a
 stylesheet
 3. Specify the Source (DOM, stream, file, SAX)
 4. Specify the Result (DOM, stream, file, SAX)
 5. Start the transformation.
 

snip/

 Using the one API
 approach we can
 teach our users a few handy things with which they
 can do whatever they
 need:
 - Serializing a DOM to a file
 - Transforming an XML file to HTML
 - Creating a PDF from a Java object
 - you name it.
 

snip/