Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.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
PDFbox飞行前PDF/A-1b检查在java 1.8版中工作不正常_Java_Pdf_Pdfbox_Pdfa - Fatal编程技术网

PDFbox飞行前PDF/A-1b检查在java 1.8版中工作不正常

PDFbox飞行前PDF/A-1b检查在java 1.8版中工作不正常,java,pdf,pdfbox,pdfa,Java,Pdf,Pdfbox,Pdfa,我正在使用PDFBOX飞行前验证pdf文档,以检查它是否为pdf/A-1b格式。它在Java1.7上运行得非常好,但是当我在Java1.8中运行代码时,我会遇到以下错误 2.4.3:颜色空间无效,缺少DestOutputProfile 2.4.3:颜色空间无效,缺少DestOutputProfile 2.4.3:颜色空间无效,缺少DestOutputProfile 7.11:元数据错误 我正在使用pdfbox 1.8.8和飞行前1.8.3 下面是我用来验证PDF的代码

我正在使用PDFBOX飞行前验证pdf文档,以检查它是否为pdf/A-1b格式。它在Java1.7上运行得非常好,但是当我在Java1.8中运行代码时,我会遇到以下错误

2.4.3:颜色空间无效,缺少DestOutputProfile

2.4.3:颜色空间无效,缺少DestOutputProfile

2.4.3:颜色空间无效,缺少DestOutputProfile

7.11:元数据错误

我正在使用pdfbox 1.8.8和飞行前1.8.3

下面是我用来验证PDF的代码

                ValidationResult result = null;
                FileDataSource fd = new FileDataSource(InputFolder
                        + listOfFiles[i].getName());
                PreflightParser parser = new PreflightParser(fd);
                try {
                    parser.parse(Format.PDF_A1A);
                    PreflightDocument documentt = parser
                            .getPreflightDocument();
                    documentt.validate();
                    result = documentt.getResult();
                    documentt.close();
                } catch (SyntaxValidationException e) {
                    result = e.getResult();
                }
                if (result.isValid()) {
                    System.out
                            .println("The file  is a valid PDF/A-1a file");

                } else {
                    System.out.println("The file is not valid, error(s) :");

                            for (ValidationError error : result
                                    .getErrorsList()) {
                                message = error.getErrorCode() + " : "
                                        + error.getDetails();
                                fos.write(message.getBytes());
                                fos.write(System.getProperty(
                                        "line.separator").getBytes());
                                // System.out.println(error.getErrorCode() +
                                // " : " + error.getDetails());
                            }

}

PDFBOX与java 1.8不兼容还是我做错了什么?

如注释中所述:始终使用相同版本的PDFBOX和飞行前jar文件,在编写此响应时为1.8.8

额外的额外建议:当得到你们不相信的结果时,用“第二意见”


如果结果不同,请在中打开一个问题或尝试:

这可能是最好在用户邮件列表或JIRA上提出的问题类型,因为它可能需要大量的往返。但是,请确保1)您使用的是相同的版本,2)该文件可用于评估。您还可以使用检查文件。祝你好运@蒂尔曼你介意我问你几个问题吗。。。。或者我应该问一个新问题。这取决于它是否与这个话题有关。对于新的主题,你应该提出一个新的问题(想法是你的问题应该在将来帮助用户)。但你真的应该做我在第一篇评论中提到的事情,即1)使用相同版本的pdfbox和preflight,2)使用PDF工具测试你的文件。3) 使该文件可用。@蒂尔曼你的建议奏效了。我实际上使用了不同版本的preflight.jar和pdfbox jar。然后我使用了1.8.8版本的二者及其工作原理。我认为我们应该把这一评论作为这个问题的答案。