Hi Brain and Ferdinand,

Thanks for the suggestions. I will try to go with second approach and make
some changes to the stylesheets and see if it works.

Cheers,
Alan

On Mon, Jul 5, 2010 at 10:30 PM, Ferdinand Soethe <samm...@soethe.net>wrote:

>  Hi Alan,
>
> as far as I remember the stylesheets  for pdf-generation have moved from
> core into the pdf-output-plugin.
>
> So you may be looking at outdated style sheets. Which might also explain
> the errors you are getting (some changes were required in the
> transformations to accomodate that last fop-update).
>
> Check out
> plugins/org.apache.forrest.plugin.output.pdf/resources/stylesheets for the
> current stylesheets (from head).
> After using Forrest with the pdf-plugin for the first time, you will also
> find the stylesheets in
> build/plugins/org.apache.forrest.plugin.output.pdf/resources/stylesheets.
>
> Yet I agree with Brian, these style sheets were designed to be used in a
> pipeline, so you may have to make some major adjustments.
>
> Regards,
> Ferdinand Soethe
>
> Am 06.07.10 06:27, schrieb Alan Wang:
>
>  Hi All,
>
>  I am writing a program similar to pdf output plugin to convert xdoc pages
> in xml document ( xdoc similar to
> http://xmlgraphics.apache.org/fop/index.xml), and would like to generate
> the pdf output using fop (0.95 on Mac os 10.5) as shown in the following.
>  However I am getting the following errors from console.
>
>  (Location of error unknown)org.apache.fop.fo.ValidationException:
> Error(Unknown location): For fo:simple-page-master, fo:region-body must be
> declared before fo:region-before.
>
>  1. Where can I find the xsl to convert from xdoc to fo. I find one from
> apache forrest
> distribution( 
> apache-forrest-0.8/main/webapp/skins/common/xslt/fo/document-to-fo.xsl)?
> Or Am I using the wrong one for converting from xdoc to fo?
>
>  2. Is anything wrong with my code?
>
>  Regards,
> Alan
>
>
>
>  ========================================================
> public class fop {
>   public static void main(String[] args) throws Exception {
>      // configure fopFactory as desired
>             FopFactory fopFactory = FopFactory.newInstance();
>             fopFactory.setStrictValidation(false);
>             fopFactory.setStrictUserConfigValidation(false);
>
>             // configure foUserAgent as desired
>             FOUserAgent foUserAgent = fopFactory.newFOUserAgent();
>
>              // Setup output
>             OutputStream out = new java.io.FileOutputStream(new
> File("mypdf.pdf"));
>             out = new java.io.BufferedOutputStream(out);
>
>              // Construct fop with desired output format
>             Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF,
> foUserAgent, out);
>
>              // Setup XSLT
>             TransformerFactory factory = TransformerFactory.newInstance();
>  Transformer transformer = factory.newTransformer(new StreamSource(new
> File("/Downloads/apache-forrest-0.8/main/webapp/skins/common/xslt/fo/document-to-fo.xsl")));
>
>              // Set the value of a <param> in the stylesheet
>             transformer.setParameter("versionParam", "2.0");
>
>              // Setup input for XSLT transformation
>  Source src = new StreamSource("
> http://xmlgraphics.apache.org/fop/index.xml";);
>
>              // Resulting SAX events (the generated FO) must be piped
> through to FOP
>             Result res = new SAXResult(fop.getDefaultHandler());
>
>              // Start XSLT transformation and FOP processing
>             transformer.transform(src, res);
>
>             out.close();
>  }
>  }
>
>
>


-- 
<img src="http://img2.meetupstatic.com/img/logo_tilt_2.gif"/>