From: Jeremias M. <de...@je...> - 2010-03-23 07:57:52
|
On 22.03.2010 15:50:25 macsmaker wrote: > Just for grins, I explicitly included xml-apis-ext-1.3.04.jar? in my war path. Got another error: > > Mar 22, 2010 8:59:17 AM org.apache.fop.render.AbstractRenderer renderXML > SEVERE: Some XML content will be ignored. Could not render XML > java.lang.NoClassDefFoundError: org/w3c/dom/xpath/XPathEvaluator, which is found in xml-apis-1.3.04.jar. > > I did some searching around, and found the following... > > In 0.94, XPathEvaluator.class is located in xml-apis-1.3.02.jar with path org/w3c/dom/xpath. > > In 0.95, XPathEvaluator.class is located in xml-apis-1.3.04.jar with path org/apache/xpath That path can't be right. There's no XPathEvaluator in that JAR under that path/package. > I'm assuming that barcode 4j is looking for this class on the old path? > I'm afraid to change xml-apis to the older version, don't know what > that will do to FOP. I've looked, but I don't see a ".95" version of > barcode4j. Barcode4J doesn't directly reference XPathEvaluator. That's a transient dependency through the SVGDOMImplementation that's used in the FOP plug-in. That means you should simply have to set up all JARs that are needed for FOP 0.95 (incl. Batik) and then the latest Barcode4J should have everything else to make this work. Barcode4J 2.0 and CVS HEAD are proven to work with FOP 0.95. So please make sure you have xml-apis*.jar and xml-apis-ext*.jar in your classpath. NoClassDefFoundError always means you're missing a dependency. Everything that's needed is either bundled with FOP or Barcode4J. > This started because I need to be able to include other fonts than the > standard 14 base fonts in FOP, but I could not make this work with my > 0.94. Not sure what build I am using, but the "ID" at the top of the > readme file is > > $Id: README 564159 2007-08-09 09:56:41Z vhennebert $ Well, that revision number only tells the last revision of the README. It doesn't say which FOP version you're using. When in doubt please install FOP 0.95. > Thanks, > Pete Allison > > > > > -----Original Message----- > From: Jeremias Maerki <de...@je...> > To: bar...@li... > Sent: Mon, Mar 22, 2010 2:25 am > Subject: Re: [Barcode4j-users] FOP 0.95 > > > > > > java.lang.NoClassDefFoundError: org/w3c/dom/svg/SVGDocument > > This means you're missing xml-apis-ext-1.3.04.jar in the classpath which > is bundled with FOP 0.95. Not sure why Barcode4J appears to cause the > exception. > > HTH > > On 19.03.2010 23:23:57 Pete Allison wrote: > > I'm upgrading from FOP 0.94 to 0.95 for better custom font support. > > > > > > > > I using FOP from a servlet, deploying it in a war file under Tomcat 6.0 > > > > > > > > In my 0.94 installation (as best as I remember) all I did was to include > > barcode4j-fop-ext-complete.jar in the distribution lib directory and then do > > a clean build. This works, I can generate an FO file with barcoding > > elements, and FOP renders it for me. > > > > > > > > I'm trying to do the same thing with 0.95 and all I get (with the same FO) > > file is a box with no barcode. > > > > > > > > I can run FOP from the command line for either 0.94 or 0.95, same FO file, > > and get a barcode. > > > > > > > > I am getting error printed to catalina.log, but don't know how to interpret > > them. I hate to display so much, but here's what I get: > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.FONode attributeWarning > > > > WARNING: Warning(19/5): fo:table, table-layout="auto" is currently not > > supported by FOP > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.ElementMappingRegistry findFOMaker > > > > WARNING: Unknown formatting object ^height > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.ElementMappingRegistry findFOMaker > > > > WARNING: Unknown formatting object ^module-width > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.ElementMappingRegistry findFOMaker > > > > WARNING: Unknown formatting object ^wide-factor > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.ElementMappingRegistry findFOMaker > > > > WARNING: Unknown formatting object ^interchar-gap-width > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.ElementMappingRegistry findFOMaker > > > > WARNING: Unknown formatting object ^quiet-zone > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.ElementMappingRegistry findFOMaker > > > > WARNING: Unknown formatting object ^checksum > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.ElementMappingRegistry findFOMaker > > > > WARNING: Unknown formatting object ^human-readable > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.ElementMappingRegistry findFOMaker > > > > WARNING: Unknown formatting object ^placement > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.ElementMappingRegistry findFOMaker > > > > WARNING: Unknown formatting object ^font-name > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.ElementMappingRegistry findFOMaker > > > > WARNING: Unknown formatting object ^font-size > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.ElementMappingRegistry findFOMaker > > > > WARNING: Unknown formatting object ^display-start-stop > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.fo.ElementMappingRegistry findFOMaker > > > > WARNING: Unknown formatting object ^display-checksum > > > > Mar 19, 2010 5:19:07 PM org.apache.fop.render.AbstractRenderer renderXML > > > > SEVERE: Some XML content will be ignored. Could not render XML > > > > java.lang.NoClassDefFoundError: org/w3c/dom/svg/SVGDocument > > > > at java.lang.ClassLoader.defineClass1(Native Method) > > > > at java.lang.ClassLoader.defineClass(Unknown Source) > > > > at java.security.SecureClassLoader.defineClass(Unknown > > Source) > > > > at > > org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLo > > ader.java:1850) > > > > at > > org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.jav > > a:890) > > > > at > > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.jav > > a:1354) > > > > at > > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.jav > > a:1233) > > > > at java.lang.ClassLoader.loadClassInternal(Unknown Source) > > > > at > > org.apache.batik.dom.svg.SVGDOMImplementation.createDocument(Unknown Source) > > > > at > > org.krysalis.barcode4j.output.svg.SVGCanvasProvider.createDocument(SVGCanvas > > Provider.java:138) > > > > at > > org.krysalis.barcode4j.output.svg.SVGCanvasProvider.init(SVGCanvasProvider.j > > ava:107) > > > > at > > org.krysalis.barcode4j.output.svg.SVGCanvasProvider.<init>(SVGCanvasProvider > > .java:92) > > > > at > > org.krysalis.barcode4j.fop.BarcodeXMLHandler.convertToSVG(BarcodeXMLHandler. > > java:221) > > > > at > > org.krysalis.barcode4j.fop.BarcodeXMLHandler.handleXML(BarcodeXMLHandler.jav > > a:115) > > > > at > > org.apache.fop.render.AbstractRenderer.renderXML(AbstractRenderer.java:808) > > > > at > > org.apache.fop.render.PrintRenderer.renderDocument(PrintRenderer.java:169) > > > > at > > org.apache.fop.render.AbstractPathOrientedRenderer.renderForeignObject(Abstr > > actPathOrientedRenderer.java:781) > > > > at > > org.apache.fop.render.AbstractRenderer.renderViewport(AbstractRenderer.java: > > 747) > > > > at > > org.apache.fop.render.AbstractPathOrientedRenderer.renderViewport(AbstractPa > > thOrientedRenderer.java:621) > > > > at > > org.apache.fop.render.AbstractRenderer.renderInlineArea(AbstractRenderer.jav > > a:626) > > > > at > > org.apache.fop.render.pdf.PDFRenderer.renderInlineArea(PDFRenderer.java:1345 > > ) > > > > at > > org.apache.fop.render.AbstractRenderer.renderLineArea(AbstractRenderer.java: > > 601) > > > > at > > org.apache.fop.render.pdf.PDFRenderer.renderLineArea(PDFRenderer.java:1336) > > > > at > > org.apache.fop.render.AbstractRenderer.renderBlocks(AbstractRenderer.java:53 > > 6) > > > > at > > org.apache.fop.render.AbstractRenderer.renderBlock(AbstractRenderer.java:573 > > ) > > > > at > > org.apache.fop.render.pdf.PDFRenderer.renderBlock(PDFRenderer.java:1329) > > > > at > > org.apache.fop.render.AbstractRenderer.renderBlocks(AbstractRenderer.java:52 > > 6) > > > > at > > org.apache.fop.render.AbstractPathOrientedRenderer.renderReferenceArea(Abstr > > actPathOrientedRenderer.java:548) > > > > at > > org.apache.fop.render.AbstractRenderer.renderBlock(AbstractRenderer.java:560 > > ) > > > > at > > org.apache.fop.render.pdf.PDFRenderer.renderBlock(PDFRenderer.java:1329) > > > > at > > org.apache.fop.render.AbstractRenderer.renderBlocks(AbstractRenderer.java:52 > > 6) > > > > at > > org.apache.fop.render.AbstractRenderer.renderBlock(AbstractRenderer.java:573 > > ) > > > > at > > org.apache.fop.render.pdf.PDFRenderer.renderBlock(PDFRenderer.java:1329) > > > > at > > org.apache.fop.render.AbstractRenderer.renderBlocks(AbstractRenderer.java:52 > > 6) > > > > at > > org.apache.fop.render.AbstractRenderer.renderFlow(AbstractRenderer.java:424) > > > > at > > org.apache.fop.render.AbstractPathOrientedRenderer.renderFlow(AbstractPathOr > > ientedRenderer.java:577) > > > > at > > org.apache.fop.render.AbstractRenderer.renderMainReference(AbstractRenderer. > > java:403) > > > > at > > org.apache.fop.render.AbstractRenderer.renderBodyRegion(AbstractRenderer.jav > > a:337) > > > > at > > org.apache.fop.render.AbstractRenderer.renderRegionViewport(AbstractRenderer > > .java:282) > > > > at > > org.apache.fop.render.AbstractRenderer.renderPageAreas(AbstractRenderer.java > > :255) > > > > at > > org.apache.fop.render.AbstractRenderer.renderPage(AbstractRenderer.java:229) > > > > at > > org.apache.fop.render.pdf.PDFRenderer.renderPage(PDFRenderer.java:801) > > > > at > > org.apache.fop.area.RenderPagesModel.addPage(RenderPagesModel.java:113) > > > > at > > org.apache.fop.layoutmgr.AbstractPageSequenceLayoutManager.finishPage(Abstra > > ctPageSequenceLayoutManager.java:312) > > > > at > > org.apache.fop.layoutmgr.PageSequenceLayoutManager.finishPage(PageSequenceLa > > youtManager.java:167) > > > > at > > org.apache.fop.layoutmgr.PageSequenceLayoutManager.activateLayout(PageSequen > > ceLayoutManager.java:108) > > > > at > > org.apache.fop.area.AreaTreeHandler.endPageSequence(AreaTreeHandler.java:234 > > ) > > > > at > > org.apache.fop.fo.pagination.PageSequence.endOfNode(PageSequence.java:123) > > > > at > > org.apache.fop.fo.FOTreeBuilder$MainFOHandler.endElement(FOTreeBuilder.java: > > 340) > > > > at > > org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:169) > > > > at > > com.sun.org.apache.xml.internal.serializer.ToXMLSAXHandler.endElement(Unknow > > n Source) > > > > at > > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unkn > > own Source) > > > > at > > com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanEndElem > > ent(Unknown Source) > > > > at > > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$Fragm > > entContentDispatcher.dispatch(Unknown Source) > > > > at > > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanD > > ocument(Unknown Source) > > > > at > > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown > > Source) > > > > at > > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown > > Source) > > > > at > > com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) > > > > at > > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown > > Source) > > > > at > > com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdenti > > ty(Unknown Source) > > > > at > > com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(Unkno > > wn Source) > > > > at > > com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(Unkno > > wn Source) > > > > at > > org.apache.fop.servlet.FopServlet.render(FopServlet.java:298) > > > > at > > org.apache.fop.servlet.FopServlet.renderFO(FopServlet.java:237) > > > > at > > org.apache.fop.servlet.FopServlet.doGet(FopServlet.java:167) > > > > at > > javax.servlet.http.HttpServlet.service(HttpServlet.java:617) > > > > at > > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application > > FilterChain.java:290) > > > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh > > ain.java:206) > > > > at > > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja > > va:233) > > > > at > > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja > > va:191) > > > > at > > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128 > > ) > > > > at > > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102 > > ) > > > > at > > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java > > :109) > > > > at > > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) > > > > at > > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849) > > > > at > > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http > > 11Protocol.java:583) > > > > at > > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454) > > > > at java.lang.Thread.run(Unknown Source) > > > > > > > > Also, here is my FO file, which works under 0.94 but not under 0.95: > > > > <?xml version="1.0" encoding="UTF-8"?> > > > > <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> > > > > <fo:layout-master-set> > > > > <fo:simple-page-master master-name="simple" page-height="11in" > > page-width="8.5in" margin-top=".25in" margin-bottom=".25in" > > margin-left=".25in" margin-right=".25in"> > > > > <fo:region-body margin-top=".25in" margin-bottom=".25in"/> > > > > <fo:region-before extent=".25in"/> > > > > <fo:region-after extent=".25in"/> > > > > </fo:simple-page-master> > > > > </fo:layout-master-set> > > > > <fo:page-sequence master-reference="simple" initial-page-number="1"> > > > > <fo:static-content flow-name="xsl-region-before"> > > > > <fo:block text-align="end" font-size="7pt" font-family="monospace" > > line-height="8pt">1000-0003</fo:block> > > > > </fo:static-content> > > > > <fo:static-content flow-name="xsl-region-after"> > > > > <fo:block text-align="end" font-size="7pt" font-family="monospace" > > line-height="10pt"/> > > > > </fo:static-content> > > > > <fo:flow flow-name="xsl-region-body"> > > > > <fo:table font-family="monospace" background-color="white" color="black" > > font-size="8.5pt" display-align="center" text-align="center" border="1pt > > solid black"> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-column column-width="7%"/> > > > > <fo:table-body> > > > > <fo:table-row> > > > > <fo:table-cell number-columns-spanned="14"> > > > > <fo:block text-align="center"> > > > > <fo:instream-foreign-object> > > > > <barcode:barcode xmlns:barcode="http://barcode4j.krysalis.org/ns" > > message="0123456789"> > > > > <barcode:code39> > > > > <height>12.5mm</height> > > > > <module-width>0.19mm</module-width> > > > > <wide-factor>2.5</wide-factor> > > > > <interchar-gap-width>1mw</interchar-gap-width> > > > > <quiet-zone enabled="true">10mw</quiet-zone> > > > > <checksum>auto</checksum> > > > > <human-readable> > > > > <placement>top</placement> > > > > <font-name>monospace</font-name> > > > > <font-size>8pt</font-size> > > > > <display-start-stop>true</display-start-stop> > > > > <display-checksum>false</display-checksum> > > > > </human-readable> > > > > </barcode:code39> > > > > </barcode:barcode> > > > > </fo:instream-foreign-object> > > > > </fo:block> > > > > </fo:table-cell> > > > > </fo:table-row> > > > > </fo:table-body> > > > > </fo:table> > > > > </fo:flow> > > > > </fo:page-sequence> > > > > </fo:root> > > > > > > > > Must be some small change that I don't know about. > > > > Thanks, > > > > Pete Allison > > > > > > > > > > > Jeremias Maerki > Jeremias Maerki |