Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ApacheFop:解析到本地docbook安装_Java_Xml_Docbook_Apache Fop - Fatal编程技术网

Java ApacheFop:解析到本地docbook安装

Java ApacheFop:解析到本地docbook安装,java,xml,docbook,apache-fop,Java,Xml,Docbook,Apache Fop,我需要配置ApacheFop,以便它使用我的本地DocBookDTD文件等。我几乎尝试了从编写目录文件到安装ApacheXML解析器等所有方法 这是我写的目录文件。我还将xml.catalog.files属性设置为此文件,并 实例化了一个apache目录解析器,FopFactory将其用作URI解析器。但是fop仍然从网络上获取所有信息 <?xml version="1.0"?> <!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Re

我需要配置ApacheFop,以便它使用我的本地DocBookDTD文件等。我几乎尝试了从编写目录文件到安装ApacheXML解析器等所有方法

这是我写的目录文件。我还将xml.catalog.files属性设置为此文件,并 实例化了一个apache目录解析器,FopFactory将其用作URI解析器。但是fop仍然从网络上获取所有信息

<?xml version="1.0"?>
<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN" "http://www.oasis-open.org/committees/entity/>
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
<group  prefer="public"  xml:base="file:///Users/raichoo/">
  <public publicId="-//OASIS//DTD DocBook XML V4.5//EN" uri="docbook/docbookx.dtd" />
  <public publicId="-//OASIS//DTD DocBook XML V4.1.2//EN" uri="docbook/docbookx.dtd" />
  <system systemId="http://www.oasis-open.org/docbook/xml/4.5/" uri="docbook/" />
  <rewriteSystem systemIdStartString="http://www.oasis-open.org/docbook/xml/4.5/" rewritePrefix="docbook/"/>
</group>                                                                                                                      

</catalog>


我认为问题在于目录文件中的DOCTYPE声明:

  • 语法错误:它以
    />
    而不是
    结尾,并且缺少一个右引号

  • 项目1修复后,解析程序尝试从
    http://www.oasis-open.org/committees/entity
    。该位置没有DTD,解析程序放弃


  • 我做了一些测试,当我简单地从目录文件中删除整个
    行时,事情开始按预期工作。

    我认为问题在于目录文件中的DOCTYPE声明:

  • 语法错误:它以
    />
    而不是
    结尾,并且缺少一个右引号

  • 项目1修复后,解析程序尝试从
    http://www.oasis-open.org/committees/entity
    。该位置没有DTD,解析程序放弃


  • 我做了一些测试,当我简单地从目录文件中删除整个
    行时,事情开始按预期工作。

    我通过简单地从要转换的文件中删除DOCTYPE来解决问题。这不是一个很好的解决方案,但我无法说服FOP来解决URI


    关于,raichoo

    我只需从要转换的文件中删除DOCTYPE,就解决了这个问题。这不是一个很好的解决方案,但我无法说服FOP来解决URI


    关于raichoo,我在catalog.xml文件中使用此doctype元素定义:

    <?xml version="1.0"?>
    <!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN" "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
    <catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
     ...
    </catalog>
    
    
    ...
    
    我在catalog.xml文件中使用此doctype元素定义:

    <?xml version="1.0"?>
    <!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN" "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
    <catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
     ...
    </catalog>
    
    
    ...
    
    没有,对不起。该代码段在复制(粘贴)中丢失。无论如何,谢谢你。问题已经解决了。不,对不起。该代码段在复制(粘贴)中丢失。无论如何,谢谢你。问题已经解决了。