Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.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
使用iTextPdf:java.lang.NoSuchMethodError从HTML转换为PDF_Java_Itext_Itextpdf - Fatal编程技术网

使用iTextPdf:java.lang.NoSuchMethodError从HTML转换为PDF

使用iTextPdf:java.lang.NoSuchMethodError从HTML转换为PDF,java,itext,itextpdf,Java,Itext,Itextpdf,我有一个HTML文件,我正试图使用iTextPdf将其转换为pdf,但我遇到了以下错误 java.lang.NoSuchMethodError: com.itextpdf.text.log.LoggerFactory.getLogger(Ljava/lang/Class;) Lcom/itextpdf/text/log/Logger; 具体内容如下: itextpdf-5.4.5.jar xmlworker-5.4.5.jar slf4j-api-1.7.7.jar slf4j-log4j

我有一个HTML文件,我正试图使用iTextPdf将其转换为pdf,但我遇到了以下错误

java.lang.NoSuchMethodError: 
com.itextpdf.text.log.LoggerFactory.getLogger(Ljava/lang/Class;)
Lcom/itextpdf/text/log/Logger;
具体内容如下:

  • itextpdf-5.4.5.jar
  • xmlworker-5.4.5.jar
  • slf4j-api-1.7.7.jar
  • slf4j-log4j12-1.7.7.jar
请指导我解决这个问题,提前谢谢

编辑:

  • itextpdf-5.5.2
  • itextpdf-5.5.2-javadoc
  • itextpdf-5.5.2-资料来源
  • itext-pdfa-5.5.2
  • itext-pdfa-5.5.2-javadoc
  • itext-pdfa-5.5.2-来源
  • itext-xtra-5.5.2
  • itext-xtra-5.5.2-javadoc
  • itext-xtra-5.5.2-来源

java.lang.NoSuchMethodError:com.itextpdf.text.log.LoggerFactory.getLogger(Ljava/lang/Class;)Lcom/itextpdf/text/log/Logger;
位于com.itextpdf.tool.xml.net.FileRetrieveImpl.(FileRetrieveImpl.java:67)
在com.itextpdf.tool.xml.css.StyleAttrCSSResolver上。(StyleAttrCSSResolver.java:113)
在com.itextpdf.tool.xml.css.StyleAttrCSSResolver上。(StyleAttrCSSResolver.java:102)
在com.itextpdf.tool.xml.css.StyleAttrCSSResolver.(StyleAttrCSSResolver.java:90)
位于com.itextpdf.tool.xml.XMLWorkerHelper.parseXHtml(XMLWorkerHelper.java:213)
位于com.itextpdf.tool.xml.XMLWorkerHelper.parseXHtml(XMLWorkerHelper.java:185)
类路径

    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itext-pdfa-5.5.2-javadoc.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itext-pdfa-5.5.2-sources.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itext-pdfa-5.5.2.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itext-xtra-5.5.2-javadoc.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itext-xtra-5.5.2-sources.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itext-xtra-5.5.2.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itextpdf-5.5.2-javadoc.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itextpdf-5.5.2-sources.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itextpdf-5.5.2.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/xmlworker-5.5.2.jar"/>

您还必须将以下jar文件放入您的库中

  • itext pdfa
  • itext xtra
按照适当的版本。 试着把所有必需的代码都放进去


查看堆栈trance,它可能是指发生错误的类行

也许吧,但是类和“missing”方法在核心的iText jar中:我已经添加了jar文件,但是仍然得到了相同的错误,我已经编辑了我的问题,请看一看。您是否检查com.itextpdf.text.log.LoggerFactory是否可用?如果没有,那么关于itextpdf jar的一些问题file@HArdik感谢您的回答,xmlworker jar没有正确加载,现在工作得很好:)该方法是核心itextpdf库的一部分,至少是5.1.1版。您的类路径上可能有另一个较旧的itextpdf库吗?您的编辑看起来像是将一个相当新的xmlworker与一个古老的itextpdf一起使用。请检查类路径上是否有第二个itextpdf jar。看起来在您当前的jar之前找到了第二个jar,因此使用了它。@mkl我添加了与iText Pdf版本相同的XMLWorker,请检查我的编辑,但仍然得到相同的例外情况。您确定您的web应用程序环境不会强制您使用较旧的iText版本吗?例如,使用一些认可的图书馆?您可以尝试在代码运行到该异常之前添加代码,在文件系统中创建一个简单的PDF(例如,使用中的方法
createPdf
)。检查生成的PDF文件,您可以看到创建该文件的iText版本。@mkl已解决,正如您所说,它正在加载古老的xmlworker,在我清除项目后工作正常。非常感谢,你的评论对我帮助很大
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itext-pdfa-5.5.2-javadoc.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itext-pdfa-5.5.2-sources.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itext-pdfa-5.5.2.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itext-xtra-5.5.2-javadoc.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itext-xtra-5.5.2-sources.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itext-xtra-5.5.2.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itextpdf-5.5.2-javadoc.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itextpdf-5.5.2-sources.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/itextpdf-5.5.2.jar"/>
    <classpathentry kind="lib" path="WebContent/WEB-INF/lib/xmlworker-5.5.2.jar"/>