Bug 478938

Summary: Publican does not build PDFs on Fedora 10
Product: [Community] Publican Reporter: Jared Smith <jsmith.fedora>
Component: publicanAssignee: Jeff Fearn <jfearn>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 1.6CC: fche, jfearn, jsmith.fedora, mmcallis, publican-list
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-06-14 20:33:49 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Attachments:
Description Flags
For what it's worth, I'm attaching my package list, in case I'm missing a required package. none

Description Jared Smith 2009-01-05 23:24:24 EST
Created attachment 328248 [details]
For what it's worth, I'm attaching my package list, in case I'm missing a required package.

Description of problem:

Publican under Fedora 10 fails to build PDFs.  I'm not sure if this is a problem with Publican itself or one of the underlying components such as FOP.

Version-Release number of selected component (if applicable):

publican-0.39-0.fc10.noarch
fop-0.95-0.2.beta1.noarch

How reproducible:

Very reproducible.  I've asked several members of the fedora-docs team to confirm that they're seeing this problem as well.  One person on x86_64 platform encountered the same problem, while someone else on i386 failed to have the same issue.

Steps to Reproduce:
1. cd /tmp
2. create_book --name=blah
3. cd blah
4. make pdf-en-US
  
Actual results:

[jsmith@hockey blah]$ make pdf-en-US

*WARNING: PRODUCT is set to the default setting of 'Documentation'*
Are you sure this is correct?
Please edit <productname> in en-US/Book_Info.xml if this is incorrect

Processing, Product: Documentation, Version: 0.1, Edition: 0, Release: 0
START: xml-en-US Mon Jan  5 21:51:24 EST 2009
	copying common/en-US  Common_Content
cleaning files
	Author_Group.xml
	blah.xml
	Book_Info.xml
	Chapter.xml
	Preface.xml
	Revision_History.xml
END: xml-en-US Mon Jan  5 21:51:25 EST 2009
START: test-en-US Mon Jan  5 21:51:25 EST 2009
warning: failed to load external entity "tmp/en-US/xml/Feedback.xml"

*Start: Words Of Interest*
*End: Words Of Interest*

END: test-en-US Mon Jan  5 21:51:25 EST 2009
START: pdf-en-US Mon Jan  5 21:51:25 EST 2009
Running Saxon:
Recoverable error
org.xml.sax.SAXParseException: Include operation failed, reverting to fallback. Resource error reading file as XML (href='Feedback.xml'). Reason: /tmp/blah/tmp/en-US/xml/Feedback.xml (No such file or directory)
Making portrait pages on A4 paper (210mmx297mm)
Running FOP:
5-Jan-09 9:51:36 PM org.apache.fop.apps.FopFactoryConfigurator configure
INFO: Default page-height set to: 240mm
5-Jan-09 9:51:36 PM org.apache.fop.apps.FopFactoryConfigurator configure
INFO: Default page-width set to: 120mm
5-Jan-09 9:51:37 PM org.apache.fop.cli.Main startFOP
SEVERE: Exception
java.lang.NullPointerException
   at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:217)
   at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:125)
   at org.apache.fop.cli.Main.startFOP(Main.java:166)
   at org.apache.fop.cli.Main.main(Main.java:196)

---------

java.lang.NullPointerException
   at gnu.xml.transform.SAXSerializer.getValue(libgcj.so.9)
   at org.apache.fop.fo.PropertyList.addAttributesToList(PropertyList.java:283)
   at org.apache.fop.fo.FObj.processNode(FObj.java:121)
   at org.apache.fop.fo.FOTreeBuilder$MainFOHandler.startElement(FOTreeBuilder.java:286)
   at org.apache.fop.fo.FOTreeBuilder.startElement(FOTreeBuilder.java:163)
   at gnu.xml.transform.SAXSerializer.serialize(libgcj.so.9)
   at gnu.xml.transform.SAXSerializer.serialize(libgcj.so.9)
   at gnu.xml.transform.TransformerImpl.transform(libgcj.so.9)
   at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:214)
   at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:125)
   at org.apache.fop.cli.Main.startFOP(Main.java:166)
   at org.apache.fop.cli.Main.main(Main.java:196)
make: *** [pdf-en-US] Error 1


Expected results:

Building a PDF.

Additional info:
Comment 1 Jared Smith 2009-01-05 23:30:11 EST
One other thing I've noticed, which may or may not be related... I notice that the Java backtrace mentions libgcj... I've checked and OpenJDK is in fact the select JVM:

[jsmith@hockey alternatives]$ alternatives --display java
java - status is manual.
 link currently points to /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java
/usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java - priority 16000
 slave javaws: /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/javaws
 slave keytool: /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/keytool
 slave orbd: /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/orbd
 slave pack200: /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/pack200
 slave policytool: /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/policytool
 slave rmid: /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/rmid
 slave rmiregistry: /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/rmiregistry
 slave servertool: /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/servertool
 slave tnameserv: /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/tnameserv
 slave unpack200: /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/unpack200
 slave jre_exports: /usr/lib/jvm-exports/jre-1.6.0-openjdk.x86_64
 slave jre: /usr/lib/jvm/jre-1.6.0-openjdk.x86_64
 slave java.1.gz: /usr/share/man/man1/java-java-1.6.0-openjdk.1.gz
 slave keytool.1.gz: /usr/share/man/man1/keytool-java-1.6.0-openjdk.1.gz
 slave orbd.1.gz: /usr/share/man/man1/orbd-java-1.6.0-openjdk.1.gz
 slave pack200.1.gz: /usr/share/man/man1/pack200-java-1.6.0-openjdk.1.gz
 slave policytool.1.gz: /usr/share/man/man1/policytool-java-1.6.0-openjdk.1.gz
 slave rmid.1.gz: /usr/share/man/man1/rmid-java-1.6.0-openjdk.1.gz
 slave rmiregistry.1.gz: /usr/share/man/man1/rmiregistry-java-1.6.0-openjdk.1.gz
 slave servertool.1.gz: /usr/share/man/man1/servertool-java-1.6.0-openjdk.1.gz
 slave tnameserv.1.gz: /usr/share/man/man1/tnameserv-java-1.6.0-openjdk.1.gz
 slave unpack200.1.gz: /usr/share/man/man1/unpack200-java-1.6.0-openjdk.1.gz
/usr/lib/jvm/jre-1.5.0-gcj/bin/java - priority 1500
 slave javaws: (null)
 slave keytool: /usr/lib/jvm/jre-1.5.0-gcj/bin/keytool
 slave orbd: (null)
 slave pack200: (null)
 slave policytool: (null)
 slave rmid: (null)
 slave rmiregistry: /usr/lib/jvm/jre-1.5.0-gcj/bin/rmiregistry
 slave servertool: (null)
 slave tnameserv: (null)
 slave unpack200: (null)
 slave jre_exports: /usr/lib/jvm-exports/jre-1.5.0-gcj
 slave jre: /usr/lib/jvm/jre-1.5.0-gcj
 slave java.1.gz: (null)
 slave keytool.1.gz: (null)
 slave orbd.1.gz: (null)
 slave pack200.1.gz: (null)
 slave policytool.1.gz: (null)
 slave rmid.1.gz: (null)
 slave rmiregistry.1.gz: (null)
 slave servertool.1.gz: (null)
 slave tnameserv.1.gz: (null)
 slave unpack200.1.gz: (null)
Current `best' version is /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java.
Comment 2 Jeff Fearn 2009-01-06 00:04:07 EST
Hi, I can build a PDF of the publican Users Guide on F10.

Please post the output of the following 2 commands:

alternatives --display java | grep link

alternatives --display javac | grep link
Comment 3 Jared Smith 2009-01-06 06:06:09 EST
Sorry for the noise... turns out I was missing the openjdk-devel package providing the non-gcj version of javac.
Comment 4 Frank Ch. Eigler 2010-06-14 12:02:06 EDT
This problem still occurs on fedora 13, and is corrected by the
installation of java-*-openjdk-devel package.

There must be some missing dependency record in some RPM spec file,
maybe fop, maybe publican, dunno.  But it's not NOTABUG.
Comment 5 Jeff Fearn 2010-06-14 20:33:49 EDT
To be clear, Publican will work just fine without a java devel package installed, however, if you have a java devel package installed then the java and javac versions selected in alternatives must be compatible.

Marking as a dupe of 559042 which has more details.

*** This bug has been marked as a duplicate of bug 559042 ***