docx4j找不到xpathStorageItemId

时间:2015-04-13 17:26:02

标签: docx4j

我使用docx4j将自定义XML部分绑定到word文档,但是我收到一条无法解决的错误消息。我已经完成了这些步骤:

  1. 将内容控件插入Word文档。
  2. 使用数据创建XML文件。
  3. 使用Word 2007内容控制工具包将cuxtom XML部件绑定到内容控件。
  4. 当我打开文档时,绑定成功,XML数据出现在文档中。但是,当我运行Java代码将docx文件绑定到xml文件时,我收到一个错误:

    org.docx4j.openpackaging.exceptions.Docx4JException: No xpathStorageItemId found, does the document contain content controls that are bound?
    

    我用来进行绑定的代码来自docx4j示例

    try{
            WordprocessingMLPackage wordMLPackage = Docx4J.load(new File(input_DOCX));
    
            File inputFile = new File(input_XML);
            FileInputStream xmlStream = new FileInputStream(inputFile);
            Docx4J.bind(wordMLPackage, xmlStream, Docx4J.FLAG_BIND_INSERT_XML & Docx4J.FLAG_BIND_BIND_XML);
    
            Docx4J.save(wordMLPackage, new File(OUTPUT_DOCX), Docx4J.FLAG_NONE);
            System.out.println("Saved: " + OUTPUT_DOCX);
    
    
        }catch(IOException ex){
            ex.printStackTrace();
        }catch(Docx4JException ex){
            ex.printStackTrace();
        }
    

    文档上有一些与自定义XML部件无关的内容控件。这可能是错误的原因吗?所有内容控件都必须有XPATH吗?

0 个答案:

没有答案