Oh yeah, I forgot to mention that I tried setting Websphere's classloader policy to "parent last" and I still got the exception.
Thanks, Ted --- On Thu, 5/20/10, gudfooht <gudfo...@yahoo.com> wrote: > From: gudfooht <gudfo...@yahoo.com> > Subject: POI 3.6: class not found: > org.openxmlformats.schemas.spreadsheetml.x2006.main.CTPhoneticRun > To: user@poi.apache.org > Date: Thursday, May 20, 2010, 2:01 PM > Hi all, > > I've been trying to resolve an issue for a couple of hours > now, but I'm not making too much progress and I'd really > appreciate any insight. > > I'm getting the following exception when trying to open an > .xlsx spreadsheet that I'm uploading via Struts1 (full stack > trace at the bottom). > > java.lang.NoClassDefFoundError: > org.openxmlformats.schemas.spreadsheetml.x2006.main.CTPhoneticRun > > Here's the code I'm using: > > WorkbookFactory.create(in); // where 'in' is an > InputStream of the file. > > This appears to be working fine for plain ol' .xls. > > I've placed every jar I could find inside the > poi-bin-3.6-20091214 distribution into WEB-INF/lib. > Here is the listing of jars (with POI-related jars called > out with *): > > activation.jar > commons-beanutils.jar > commons-cli-1.0.jar > commons-collections-3.2.jar > commons-digester.jar > commons-fileupload-1.2.1.jar > commons-io-1.4.jar > commons-lang-2.4.jar > commons-logging-log4j.jar > commons-validator.jar > *dom4j-1.6.1.jar > *geronimo-stax-api_1.0_spec-1.0.jar > ibatis-common-2.jar > ibatis-sqlmap-2.jar > jakarta-oro-2.0.6.jar > Jimi.jar > joda-time-1.6.jar > json_simple.jar > jt400.jar > junit.jar > log4j-1.2.9.jar > lucene-1.4.3.jar > mail.jar > *poi-3.6-20091214.jar > *poi-contrib-3.6-20091214.jar > *poi-examples-3.6-20091214.jar > *poi-ooxml-3.6-20091214.jar > *poi-ooxml-schemas-3.6-20091214.jar > *poi-scratchpad-3.6-20091214.jar > struts.jar > velocity-1.5.jar > velocity-tools-generic-1.2.jar > *xmlbeans-2.3.0.jar > > I've cracked open poi-ooxml-schemas-3.6-20091214.jar and, > sure enough, CTPhoneticRun isn't in there. So now I'm > thinking maybe Websphere 6.1 for Windows has another version > of POI that's messing things up, but I couldn't find > anything. > > Any ideas? > > Thanks! > > Ted > > > > org.apache.poi.POIXMLException: > java.lang.reflect.InvocationTargetException > at > org.apache.poi.xssf.usermodel.XSSFFactory.createDocumentPart(XSSFFactory.java:61) > at > org.apache.poi.POIXMLDocumentPart.read(POIXMLDocumentPart.java:256) > at > org.apache.poi.POIXMLDocument.load(POIXMLDocument.java:196) > at > org.apache.poi.xssf.usermodel.XSSFWorkbook.(XSSFWorkbook.java:172) > at > org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFactory.java:63) > at > golf.poi.ExcelWorkbook.load(ExcelWorkbook.java:50) > at > golf.poi.ExcelWorkbook.(ExcelWorkbook.java:40) > at > golf.actions.pdt.ProjectUploadNonGolfProcess.execute(ProjectUploadNonGolfProcess.java:29) > at > org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484) > at > org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274) > at > org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) > at > org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525) > at > javax.servlet.http.HttpServlet.service(HttpServlet.java:763) > at > javax.servlet.http.HttpServlet.service(HttpServlet.java:856) > at > com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:995) > at > com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:930) > at > com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:145) > at > golf.filter.UserSessionFilter.doFilter(UserSessionFilter.java:100) > at > com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190) > at > com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:130) > at > com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:87) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:761) > at > com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:673) > at > com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:498) > at > com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:464) > at > com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3168) > at > com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:254) > at > com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:811) > at > com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1433) > at > com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:96) > at > com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:465) > at > com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:394) > at > com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102) > at > com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:152) > at > com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:213) > at > com.ibm.io.async.AbstractAsyncFuture.fireCompletionActions(AbstractAsyncFuture.java:195) > at > com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136) > at > com.ibm.io.async.ResultHandler.complete(ResultHandler.java:194) > at > com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:741) > at > com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:863) > at > com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469) > Caused by: java.lang.reflect.InvocationTargetException > at > sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:67) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at > java.lang.reflect.Constructor.newInstance(Constructor.java:521) > at > org.apache.poi.xssf.usermodel.XSSFFactory.createDocumentPart(XSSFFactory.java:59) > ... 40 more > Caused by: java.lang.NoClassDefFoundError: > org.openxmlformats.schemas.spreadsheetml.x2006.main.CTPhoneticRun > at > java.lang.J9VMInternals.verifyImpl(Native Method) > at > java.lang.J9VMInternals.verify(J9VMInternals.java:59) > at > java.lang.J9VMInternals.initialize(J9VMInternals.java:120) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > Method) > at > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:67) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at > java.lang.reflect.Constructor.newInstance(Constructor.java:521) > at > org.apache.xmlbeans.impl.schema.SchemaTypeImpl.createUnattachedNode(SchemaTypeImpl.java:1859) > at > org.apache.xmlbeans.impl.schema.SchemaTypeImpl.createElementType(SchemaTypeImpl.java:1021) > at > org.apache.xmlbeans.impl.values.XmlObjectBase.create_element_user(XmlObjectBase.java:893) > at > org.apache.xmlbeans.impl.store.Xobj.getUser(Xobj.java:1657) > at > org.apache.xmlbeans.impl.store.Xobj.find_all_element_users(Xobj.java:2080) > at > org.openxmlformats.schemas.spreadsheetml.x2006.main.impl.CTSstImpl.getSiArray(Unknown > Source) > at > org.apache.poi.xssf.model.SharedStringsTable.readFrom(SharedStringsTable.java:113) > at > org.apache.poi.xssf.model.SharedStringsTable.(SharedStringsTable.java:97) > ... 45 more --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@poi.apache.org For additional commands, e-mail: user-h...@poi.apache.org