Bug 523094 - seglists break PDFs
Summary: seglists break PDFs
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Publican
Classification: Community
Component: publican
Version: 2.0
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Michael Hideo
QA Contact: Joshua Wulf
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-09-14 02:35 UTC by Christopher Curran
Modified: 2014-10-19 22:57 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-09-14 03:51:29 UTC
Embargoed:


Attachments (Terms of Use)

Description Christopher Curran 2009-09-14 02:35:24 UTC
Description of problem:
Seems seglists are hgaving issues in PDFs. 

Version-Release number of selected component (if applicable):
0.42, 0.44, 1.0 beta

How reproducible:
all versions

Steps to Reproduce:
1. use the snippet below
2. make pdf-en-US
3. 'splodes
  
Actual results:
build fails

Expected results:
build should work.

Additional info:

Here is the xml that breaks it:
<formalpara id="form-Virtualization-Transport_modes-Extra_URI_parameters">
			<title>Extra URI parameters</title>
			<para>
				Extra parameters can be appended to remote URIs. The table below <xref linkend="segm-Virtualization-Transport_modes-Extra_URI_parameters" /> covers the recognized parameters. All other parameters are ignored. Note that parameter values must be URI-escaped (that is, a question mark (?) is appended before the parameter and special characters are converted into the URI format).
			</para>
		</formalpara>
		<segmentedlist id="segm-Virtualization-Transport_modes-Extra_URI_parameters">
			<title>Extra URI parameters</title>
			<segtitle>Name</segtitle>
			<segtitle>Transport mode</segtitle>
			<segtitle>Description</segtitle>
			<segtitle>Example usage</segtitle>
			<seglistitem>
				<seg>name</seg>
				<seg>all modes</seg>
				<seg>The name passed to the remote virConnectOpen function. The name is normally formed by removing transport, hostname, port number, username and extra parameters from the remote URI, but in certain very complex cases it may be better to supply the name explicitly. </seg>
				<seg>name=qemu:///system</seg>
			</seglistitem>
			<seglistitem>
				<seg>command</seg>
				<seg>ssh and ext</seg>
				<seg> The external command. For ext transport this is required. For ssh the default is ssh. The PATH is searched for the command. </seg>
				<seg>command=/opt/openssh/bin/ssh</seg>
			</seglistitem>
			<seglistitem>
				<seg>socket</seg>
				<seg>unix and ssh</seg>
				<seg>The path to the UNIX domain socket, which overrides the default. For ssh transport, this is passed to the remote netcat command (see netcat). </seg>
				<seg>socket=/opt/libvirt/run/libvirt/libvirt-sock</seg>
			</seglistitem>
			<seglistitem>
				<seg>netcat</seg>
				<seg>ssh</seg>
				<seg>The name of the netcat command on the remote machine. The default is nc. For ssh transport, libvirt constructs an ssh command which looks like: command -p port [-l username] hostname netcat -U socket where port, username, hostname can be specified as part of the remote URI, and command, netcat and socket come from extra parameters (or sensible defaults). </seg>
				<seg>netcat=/opt/netcat/bin/nc</seg>
			</seglistitem>
			<seglistitem>
				<seg>no_verify</seg>
				<seg>tls</seg>
				<seg>If set to a non-zero value, this disables client checks of the server&#39;s certificate. Note that to disable server checks of the client&#39;s certificate or IP address you must change the libvirtd configuration. </seg>
				<seg>no_verify=1</seg>
			</seglistitem>
			<seglistitem>
				<seg>no_tty</seg>
				<seg>ssh</seg>
				<seg>If set to a non-zero value, this stops ssh from asking for a password if it cannot log in to the remote machine automatically (for using ssh-agent or similar). Use this when you do not have access to a terminal - for example in graphical programs which use libvirt.</seg>
				<seg>no_tty=1</seg>
			</seglistitem>
		</segmentedlist>

Comment 1 Christopher Curran 2009-09-14 02:46:51 UTC
The error from 5.2 0.42:
SEVERE: Ignoring property: start-indent="body-start()" (file:///home/ccurran/Documentation/5.4/Virtualization_Guide/tmp/en-US/xml/Virtualization.fo:3350:699: body-start() called from outside an fo:list-item; property:'start-indent')
Sep 14, 2009 12:38:27 PM org.apache.fop.fo.PropertyList convertAttributeToProperty
SEVERE: Ignoring property: start-indent="body-start()" (file:///home/ccurran/Documentation/5.4/Virtualization_Guide/tmp/en-US/xml/Virtualization.fo:3365:702: body-start() called from outside an fo:list-item; property:'start-indent')
Sep 14, 2009 12:38:27 PM org.apache.fop.fo.PropertyList convertAttributeToProperty
SEVERE: Ignoring property: start-indent="body-start()" (file:///home/ccurran/Documentation/5.4/Virtualization_Guide/tmp/en-US/xml/Virtualization.fo:3385:709: body-start() called from outside an fo:list-item; property:'start-indent')
Sep 14, 2009 12:38:27 PM org.apache.fop.fo.FONode attributeWarning
WARNING: Warning(3387/689): fo:table, table-layout="auto" is currently not supported by FOP
Sep 14, 2009 12:38:27 PM org.apache.fop.cli.InputHandler error
SEVERE: javax.xml.transform.TransformerException: Error(3387/826): column-number or number of cells in the row overflows the number of fo:table-column specified for the table.
Sep 14, 2009 12:38:27 PM org.apache.fop.cli.Main startFOP
SEVERE: Exception
javax.xml.transform.TransformerException: org.apache.fop.fo.ValidationException: Error(3387/826): column-number or number of cells in the row overflows the number of fo:table-column specified for the table.
        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)

---------

javax.xml.transform.TransformerException: org.apache.fop.fo.ValidationException: Error(3387/826): column-number or number of cells in the row overflows the number of fo:table-column specified for the table.
        at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:673)
        at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:300)
        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)
Caused by: org.apache.fop.fo.ValidationException: Error(3387/826): column-number or number of cells in the row overflows the number of fo:table-column specified for the table.
        at org.apache.fop.fo.flow.table.TableCellContainer.addTableCellChild(TableCellContainer.java:50)
        at org.apache.fop.fo.flow.table.TableRow.addChildNode(TableRow.java:92)
        at org.apache.fop.fo.FOTreeBuilder$MainFOHandler.startElement(FOTreeBuilder.java:317)
        at org.apache.fop.fo.FOTreeBuilder.startElement(FOTreeBuilder.java:163)
        at com.sun.org.apache.xml.internal.serializer.ToXMLSAXHandler.closeStartTag(ToXMLSAXHandler.java:205)
        at com.sun.org.apache.xml.internal.serializer.ToSAXHandler.flushPending(ToSAXHandler.java:291)
        at com.sun.org.apache.xml.internal.serializer.ToXMLSAXHandler.startElement(ToXMLSAXHandler.java:646)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:533)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:330)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1693)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242)
        at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:579)
        at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:661)
        ... 5 more
---------
org.apache.fop.fo.ValidationException: Error(3387/826): column-number or number of cells in the row overflows the number of fo:table-column specified for the table.
        at org.apache.fop.fo.flow.table.TableCellContainer.addTableCellChild(TableCellContainer.java:50)
        at org.apache.fop.fo.flow.table.TableRow.addChildNode(TableRow.java:92)
        at org.apache.fop.fo.FOTreeBuilder$MainFOHandler.startElement(FOTreeBuilder.java:317)
        at org.apache.fop.fo.FOTreeBuilder.startElement(FOTreeBuilder.java:163)
        at com.sun.org.apache.xml.internal.serializer.ToXMLSAXHandler.closeStartTag(ToXMLSAXHandler.java:205)
        at com.sun.org.apache.xml.internal.serializer.ToSAXHandler.flushPending(ToSAXHandler.java:291)
        at com.sun.org.apache.xml.internal.serializer.ToXMLSAXHandler.startElement(ToXMLSAXHandler.java:646)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:533)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:330)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1693)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242)
        at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:579)
        at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:661)
        at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:300)
        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

Comment 2 Ruediger Landmann 2009-09-14 03:04:23 UTC
The Beta reports "Finished pdf" as if it had built the PDF correctly, but the /tmp/en-US/pdf/ directory remains empty.

However, it's not all segmented lists.

The example from http://www.docbook.org/tdg/en/html/segmentedlist.html builds correctly in both 0.44 and 1.0 Beta

<segmentedlist><title>State Capitals</title>
<?dbhtml list-presentation="table"?>
<segtitle>State</segtitle>
<segtitle>Capital</segtitle>
<seglistitem><seg>Alabama</seg><seg>Montgomery</seg></seglistitem>
<seglistitem><seg>Alaska</seg><seg>Anchorage</seg></seglistitem>
<seglistitem><seg>Arkansas</seg><seg>Little Rock</seg></seglistitem>
</segmentedlist>

Comment 3 Ruediger Landmann 2009-09-14 03:12:45 UTC
It seems to have something to do with the number of columns; two columns works fine, more than that doesn't.

For example, this won't build:

<segmentedlist><title>State Capitals</title>
<?dbhtml list-presentation="list"?>
<segtitle>State</segtitle>
<segtitle>Capital</segtitle>
<segtitle>No</segtitle>
<seglistitem><seg>Alabama</seg><seg>Montgomery</seg><seg>1</seg></seglistitem>
<seglistitem><seg>Alaska</seg><seg>Juneau</seg><seg>2</seg></seglistitem>
<seglistitem><seg>Arkansas</seg><seg>Little Rock</seg><seg>3</seg></seglistitem>
</segmentedlist>

Comment 4 Jeff Fearn 🐞 2009-09-14 03:51:29 UTC
The two column limitation is in force when segmentedlist.as.table is set to true.

We have segmentedlist.as.table set to true.

Comment 5 Jeff Fearn 🐞 2009-09-14 03:52:35 UTC
Just to clarify, this is the upstream behavior.


Note You need to log in before you can comment on or make changes to this bug.