fop-users  

Re: Problems with Apache FOP and Barcode4j

Jeremias Maerki
Thu, 21 Aug 2008 02:57:57 -0700

Thanks for the extensive additional data. I might have the problem now.

> 21-ago-2008 11:16:05 org.apache.fop.fo.ElementMappingRegistry findFOMaker
> ADVERTENCIA: Unknown formatting object
> http://barcode4j.krysalis.org/ns^barcode

This indicates that the Barcode4J FOP extension is not correctly set up
with FOP. Please note that FOP 0.95 needs a different extension than FOP
0.20.5 because the extension APIs have changed. Please put
"barcode4j-fop-ext-complete.jar" (from Barcode4J 2.0) into your
classpath (and remove the old JAR). The above error message should then
go away and the barcodes should appear.

But that doesn't really explain why you got the "mismatch" error. Maybe
we need to take this one step at a time.

HTH

On 21.08.2008 11:29:57 Miguel Tablado wrote:
> 
> Hello Andreas and others,
> 
> I'm using xalan 2.7.1. And this is the xslt processor guessed from the
> StackTrace (I doubted if Weblogic was discarding it).
> org.xml.sax.SAXException: Mismatch: page-sequence
> (http://www.w3.org/1999/XSL/Format) vs. root
> (http://www.w3.org/1999/XSL/Format)
> StackTrace:
> org.apache.xalan.templates.ElemLiteralResult.execute(ElemLiteralResult.java:725))
> org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2339))
> 
> I have generated the fo file and it is correct, furthermore if I launch the
> command line with -d -fo options i get the pdf file and some messages that
> I'd discard as font errors. Wouldn't I?
> - The call:
>       fop -d -fo
> c:\bea8\user_projects\domains\tributos\logs\tempPdfGaudi\gaudiXMLFOPDF.fo
> out.pdf
> - Messages:
> 21-ago-2008 10:06:43
> org.apache.fop.layoutmgr.inline.LineLayoutManager$LineBreak
> ingAlgorithm updateData2
> ADVERTENCIA: Line 1 of a paragraph overflows the available area by more than
> 50
> points. (fo:block, location: 22/38)
> 
> By the way, looking at BarcodeExt source I have notice that you can work
> using name-spaces or not, and as I wasn't using them I have tryed the
> opposite as follows:
>               <fo:block>
>                       <fo:instream-foreign-object>
>                               <bc:barcode message="Hello World!"
> xmlns:bc="org.krysalis.barcode4j.xalan.BarcodeExt">
>                                       <bc:code128>
>                                               <bc:height>8mm</bc:height>
>                                               
> <bc:human-readable>none</bc:human-readable>
>                                               <bc:length>25mm</bc:length>
>                                       </bc:code128>
>                               </bc:barcode>
>                       </fo:instream-foreign-object>
>               </fo:block>
> 
> It throws another exception which is (as you mentioned):
> Message:
> org.xml.sax.SAXException: endElement() called for fo:root where there is no
> current element.
> 
> The resultant .fo file is trunked/uncomplete and the last rendered object is
> the generated svg barcode. I know the namespace I'm using is for processing
> the barcode at xslt process and that I could do it at fop process using
> "http://barcode4j.krysalis.org/ns"; namespace, let's go!
> FOP is not generating the svg object. Surely the reason is this that I get
> from command line:
> 
> 21-ago-2008 11:16:05 org.apache.fop.fo.ElementMappingRegistry findFOMaker
> ADVERTENCIA: Unknown formatting object
> http://barcode4j.krysalis.org/ns^barcode
> 21-ago-2008 11:16:05 org.apache.fop.fo.ElementMappingRegistry findFOMaker
> ADVERTENCIA: Unknown formatting object
> http://barcode4j.krysalis.org/ns^code128
> 21-ago-2008 11:16:05 org.apache.fop.fo.ElementMappingRegistry findFOMaker
> ADVERTENCIA: Unknown formatting object
> http://barcode4j.krysalis.org/ns^height
> 21-ago-2008 11:16:05 org.apache.fop.fo.ElementMappingRegistry findFOMaker
> ADVERTENCIA: Unknown formatting object
> http://barcode4j.krysalis.org/ns^human-re
> adable
> 21-ago-2008 11:16:05 org.apache.fop.fo.ElementMappingRegistry findFOMaker
> ADVERTENCIA: Unknown formatting object
> http://barcode4j.krysalis.org/ns^length
> 21-ago-2008 11:16:05 org.apache.fop.fo.flow.InstreamForeignObject
> prepareIntrins
> icSize
> GRAVE: Intrinsic dimensions of  instream-foreign-object could not be
> determined
> 21-ago-2008 11:16:05 org.apache.fop.fo.flow.InstreamForeignObject
> prepareIntrins
> icSize
> GRAVE: Intrinsic dimensions of  instream-foreign-object could not be
> determined
> 21-ago-2008 11:16:05 org.apache.fop.fo.flow.InstreamForeignObject
> prepareIntrins
> icSize
> GRAVE: Intrinsic dimensions of  instream-foreign-object could not be
> determined
> 
> But I don't understand why the FOP ElementMapping class doesn't found them
> if I have setted the CLASSPATH to go for barcode-ext-complete jar, any idea?
> 
> Miguel
> -- 
> View this message in context: 
> http://www.nabble.com/Problems-with-Apache-FOP-and-Barcode4j-tp19069996p19085348.html
> Sent from the FOP - Users mailing list archive at Nabble.com.
> 
> 




Jeremias Maerki


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