在pdfbox请求后获取ava.lang.ClassNotFoundException:org.apache.pdfbox.io.RandomAccessRead控制台错误

时间:2016-02-27 19:46:10

标签: java tomcat servlets pdfbox pdf-reader

我正在为一个web项目的servlet文件工作,这是我的代码:

我有pdfbox库的v.2.0.0,我的代码在一个简单的java应用程序中运行

pdfmanager.java:

public class pdfManager {

private PDFParser parser;
   private PDFTextStripper pdfStripper;
   private PDDocument pdDoc ;
   private COSDocument cosDoc ;

   private String Text ;
   private String filePath;
   private File file;

    public pdfManager() {

    }
   public String ToText() throws IOException
   {
       this.pdfStripper = null;
       this.pdDoc = null;
       this.cosDoc = null;

       file = new File(filePath);
       parser = new PDFParser(new RandomAccessFile(file,"r")); // update for PDFBox V 2.0

       parser.parse();
       cosDoc = parser.getDocument();
       pdfStripper = new PDFTextStripper();
       pdDoc = new PDDocument(cosDoc);
       pdDoc.getNumberOfPages();
       pdfStripper.setStartPage(1);
       pdfStripper.setEndPage(10);

       // reading text from page 1 to 10
       // if you want to get text from full pdf file use this code
       // pdfStripper.setEndPage(pdDoc.getNumberOfPages());

       Text = pdfStripper.getText(pdDoc);
       return Text;
   }

    public void setFilePath(String filePath) {
        this.filePath = filePath;
    }


}

srvlet文件:

    PrintWriter out = response.getWriter() ; 
    out.println("\ndata we gottoo : ") ; 



    pdfManager pdfManager = new pdfManager();
     pdfManager.setFilePath("/Users/rami/Desktop/pdf2.pdf");
        System.out.println(pdfManager.ToText());

在doGet方法中调用

1 个答案:

答案 0 :(得分:1)

您需要的库不在类路径上,或者当类加载器想要加载库的类时会出现其他问题。如果您在服务器上,请确保将库添加到classpath文件夹。这可以手工完成,或者您的应用程序必须自己提供/交付。由于不清楚您的应用是如何部署或交付的,因此可能有很多原因