0
파일 확장명을 xls에서 xlsx 형식 (2007 이상)으로 변경하는 동안 응용 프로그램에서 파일을 내보내는 동안 응용 프로그램을 변경하고 있습니다.Apache POI 3.9로 업그레이드 한 후 Excel 워크 시트를 내보내는 중 오류가 발생했습니다.
POS 3.9 병으로 업그레이드하여 HSSF의 XSSF를 추가하여 필요한 코드를 변경했습니다. 우리가 사용한 Jar 파일의 이전 버전은 POI 3.0입니다.
내가 라이브러리 폴더에 추가 한 다음 항아리 : 나는 응용 프로그램에서 파일을 내보낼하려고 할 때
poi-3.9-20121203
poi-examples-3.9-20121203
poi-excelant-3.9-20121203
poi-ooxml-3.9-20121203
poi-ooxml-schemas-3.9-20121203
poi-scratchpad-3.9-20121203
commons-codec-1.5
commons-logging-1.1
junit-3.8.1
dom4j-1.6.1
stax-api-1.0.1
xmlbeans-2.3.0
JAR 파일을 업그레이드 한 후, 나는 페이지를 얻고는 오류를 표시 할 수 없습니다. 다음은 Excel 아이콘을 클릭하면 콘솔에서 예외가 있습니다 :
com.sun.faces.lifecycle.InvokeApplicationPhase execute #{customerFinancialReportAction.createReport}: javax.faces.el.EvaluationException: java.lang.NoClassDefFoundError: org.apache.poi.ss.usermodel.Font
javax.faces.FacesException: #{customerFinancialReportAction.createReport}: javax.faces.el.EvaluationException: java.lang.NoClassDefFoundError: org.apache.poi.ss.usermodel.Font
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:79)
at javax.faces.component.UICommand.broadcast(UICommand.java:312)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:298)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:412)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:77)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:220)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:91)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:966)
여기서 어떤 문제가 발생하는지 확실하지 않습니다. 이 문제를 해결하도록 도와주세요.
모든 병을 올바르게 사용할 수 있습니까? 그리고 오래된 POI 3.0 병을 제거 했니? 당신이 주장하는 항아리를 놓치고있는 것처럼 보입니다. – Gagravarr