Bug 47076

Summary: Error : POIDocument.init
Product: POI Reporter: Kishore <kishore.kandrup>
Component: POIFSAssignee: POI Developers List <dev>
Status: RESOLVED INVALID    
Severity: normal    
Priority: P2    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   

Description Kishore 2009-04-22 07:30:45 UTC
Hi,

 I am using jars of version as below :

poi-3.1-FINAL.jar
poi-scratchpad-3.0.1-FINAL.jar
poi-contrib-3.1-FINAL.jar

I am getting bwelow error(The java code is pasted at the bottom) :


Core POI 11 came from file:/H:/Kishor/bcu/lib/poi-scratchpad-3.0.1-FINAL.jar!/org/apache/poi/POIDocument.class
Create FS 11 and Filename is  H:\Kishor\Research\EmailWorkFlow\Web_Server_Comparison.xls
INPUT IS java.io.FileInputStream@19efb05
After fs IS org.apache.poi.poifs.filesystem.POIFSFileSystem@133796
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.poi.POIDocument.<init>(Lorg/apache/poi/poifs/filesystem/DirectoryNode;Lorg/apache/poi/poifs/filesystem/POIFSFileSystem;)V
	at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:225)
	at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:169)
	at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:151)
	at com.lehman.pcs.bcu.util.ExtractImage.main(ExtractImage.java:48)


The java code is :


package com.lehman.pcs.bcu.util;

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.InputStream;
import java.net.URL;
import java.util.Iterator;
import java.util.List;

import org.apache.poi.hssf.extractor.ExcelExtractor;
import org.apache.poi.hssf.usermodel.HSSFObjectData;
import org.apache.poi.hssf.usermodel.HSSFPictureData;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;

public class ExtractImage {

	/**
	 * @param args
	 */
	public static void main(String[] args) throws Exception {
		// TODO Auto-generated method stub
		
//		ClassLoader classloader = org.apache.poi.poifs.filesystem.POIFSFileSystem.class.getClassLoader(); 
//		URL res = classloader.getResource("org/apache/poi/poifs/filesystem/POIFSFileSystem.class"); 
//		String st = res.getPath(); 
//		System.out.println("Core POI came from " + st);
		
		
		ClassLoader classloader = org.apache.poi.POIDocument.class.getClassLoader(); 
		URL res = classloader.getResource("org/apache/poi/POIDocument.class"); 
		String st = res.getPath(); 
		System.out.println("Core POI 11 came from " + st);
		
        String fileName = "H:\\Kishor\\Research\\EmailWorkFlow\\Web_Server_Comparison.xls";
   	 	System.out.println("Create FS 11 and Filename is  "+ fileName);
   	 	InputStream input = ExtractImage.class.getResourceAsStream(fileName);
//   	 	FileInputStream fin = new FileInputStream(fileName);
//		// create a new	org.apache.poi.poifs.filesystem.Filesystem
//		BufferedInputStream bis = new BufferedInputStream(fin);
//		POIFSFileSystem poifs = new POIFSFileSystem(bis);
//		
//		//HSSFWorkbook wb = new HSSFWorkbook(poifs);
   	 	input = new FileInputStream(fileName);
   	 	System.out.println("INPUT IS " + input);
        POIFSFileSystem fs = new POIFSFileSystem(input); 
        System.out.println("After fs IS " + fs);
		 HSSFWorkbook wb = new HSSFWorkbook(fs);	
		 System.out.println("After WB " + wb);
		 
		 //ExcelExtractor ee = new ExcelExtractor(wb);
		 //ee.getSummaryInformation().
		 
		 List list = wb.getAllEmbeddedObjects();
		 
		 Iterator it = list.iterator();
		 
		 while (it.hasNext())
		 {
			 HSSFObjectData hObj = (HSSFObjectData) it.next();
			 System.out.println("Ho.String " + hObj.toString());
		 }
		 
		 List picList = wb.getAllPictures();
		 Iterator it1 = picList.iterator();
		 
		 while (it1.hasNext())
		 {
			 while (it1.hasNext())
			 {
				 HSSFPictureData hd = (HSSFPictureData) it1.next();
				 System.out.println("HD.String " + hd.toString());
			 }
			 
		 }
		 //
		
	}

}
Comment 1 David Fisher 2009-04-22 07:34:05 UTC
You cannot mix versions of POI:

poi-3.1-FINAL.jar
poi-scratchpad-3.0.1-FINAL.jar
poi-contrib-3.1-FINAL.jar


Why are submitting the same bug a second time?