为什么Struts检测到未处理的异常?
问题描述:
我创建代码用struts 2.下载PDF,但是当我运行它,它会抛出异常......为什么Struts检测到未处理的异常?
的Struts已经检测到一个未处理的异常:
消息:
org.apache.commons.logging.LogFactory
org/apache/commons/logging/LogFactory
文件:组织/阿帕奇/卡塔利娜/装载机/ WebappClassLoaderBase.java
行号:1,313
这里是我的代码快照...在那里我遇到了例外...
public String execute() throws Exception {
try {
if (submit.equals("pdf")) {
rs = new ReportDAO().getPdf();
jasperPath = ServletActionContext.getServletContext().getRealPath("/Reports");
pdfName = "Studnet Report";
rpt = "studentReport.jrxml";
// I got error at this line....
JRResultSetDataSource resultSetDataSource = new JRResultSetDataSource(rs);
HashMap<String, Object> pm = new HashMap<String, Object>();
String logo = jasperPath + "/ws.jpg";
pm.put("logo", logo);
JasperReport jr = JasperCompileManager.compileReport(jasperPath + "/" + rpt);
System.out.println("ok");
JasperPrint jp = JasperFillManager.fillReport(jr, pm, resultSetDataSource);
JasperExportManager.exportReportToPdfFile(jp, jasperPath + pdfName + ".pdf");
fileInputStream = new FileInputStream(new File(jasperPath + pdfName + ".pdf"));
}
} catch (Exception e) {
e.printStackTrace();
}
return "SUCCESS";
}
struts.xml的
<result name="SUCCESS" type="stream">
<param name="contentType">application/octet-stream</param>
<param name="inputName">fileInputStream</param>
<param name="contentDisposition">attachment;filename="${pdfName}.pdf"</param>
<param name="bufferSize">1024</param>
</result>
例外:
java.lang.reflect.InvocationTargetException
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
java.lang.NoClassDefFoundError:org/a帕什/公/日志/的LogFactory
net.sf.jasperreports.engine.util.JRLoader.(JRLoader.java:67)
net.sf.jasperreports.engine.JRPropertiesUtil.loadProperties(JRPropertiesUtil.java:99)
net.sf.jasperreports.engine.DefaultJasperReportsContext.initProperties(DefaultJasperReportsContext.java:94)
抛出java.lang.ClassNotFoundException:org.apache.commons.logging.LogFactory
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1313)
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1164)
net.sf.jasperreports.engine.util.JRLoader.(JRLoader.java:67)
答
你有公地日志库?
+1
这应该是一条评论。没有答案。 –
可能重复[获取java.lang.ClassNotFoundException:org.apache.commons.logging.LogFactory异常](http://stackoverflow.com/questions/1551697/getting-java-lang-classnotfoundexception-org-apache- commons-logging-logfactory) –