snake plissken
snake plissken

Reputation: 2669

Apache POI dependencies

I need to write a java code to read a ms word file. I've used org.apache.poi.hwpf.extractor.WordExtractor library for doing that. Below is the code snippet I tried.

 import org.apache.poi.xwpf.extractor.XWPFWordExtractor;
 import java.io.FileInputStream;
 import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.*;
 import org.apache.poi.poifs.filesystem.POIFSFileSystem;
 import org.apache.poi.xwpf.usermodel.XWPFDocument;

public class Test {

public static void main(String[] args) {
    try {
        FileInputStream fis = new FileInputStream("C:\\villager.docx");   
        org.apache.poi.xwpf.extractor.XWPFWordExtractor oleTextExtractor = new XWPFWordExtractor(new XWPFDocument(fis));
        System.out.print(oleTextExtractor.getText());            
    } catch (Exception e) {
            e.printStackTrace();
    }
}

}

I have downloaded and imported the neccessary .jar files. I am trying to read villager.docx word office 2010. However I getting the following errors:

EDIT: I add the proposed jar xmlbeans and I got:

    Exception in thread "main" java.lang.NoClassDefFoundError: 
    org/dom4j/DocumentException
at org.apache.poi.openxml4j.opc.OPCPackage.init(OPCPackage.java:154)
at org.apache.poi.openxml4j.opc.OPCPackage.<init>(OPCPackage.java:141)
at org.apache.poi.openxml4j.opc.Package.<init>(Package.java:54)
at org.apache.poi.openxml4j.opc.ZipPackage.<init>(ZipPackage.java:82)
at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:267)
at org.apache.poi.util.PackageHelper.open(PackageHelper.java:39)
at org.apache.poi.xwpf.usermodel.XWPFDocument.<init>(XWPFDocument.java:121)
at Test.main(Test.java:17)
    Caused by: java.lang.ClassNotFoundException: org.dom4j.DocumentException
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 8 more

Upvotes: 1

Views: 2642

Answers (1)

limc
limc

Reputation: 40176

Add this into your classpath: http://xmlbeans.apache.org/

Upvotes: 2

Related Questions