我使用下面的代碼在我的應用程序的Servlet給錯誤java.lang.NoClassDefFoundError
java.awt.Image awtImg = java.awt.Toolkit.getDefaultToolkit().createImage(str1);
的一個servlet當我運行應用程序並調用servlet我收到以下錯誤
java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11.XToolkit
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:169)
java.awt.Toolkit$2.run(Toolkit.java:834)
java.security.AccessController.doPrivileged(Native Method)
java.awt.Toolkit.getDefaultToolkit(Toolkit.java:826)
noticeandreports.pdf.appendFiles.PdfFunctionsClass.addSealSpace(PdfFunctionsClass.java:198)
OJ.NoticesandReports.generate_151_OJNotice.execute(generate_151_OJNotice.java:768)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:228)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
我主持一臺Linux機器的Java JDK版本1.6.20上的應用程序..
什麼可能導致該問題...
noticeandreports.pdf.appendFiles.PdfFunctionsClass
是在代碼編寫和OJ.NoticesandReports.generate_151_OJNotice
是調用上面的類中的方法,這個servlet類...
您使用哪個JDK?根據我的經驗,大多數Linux發行版默認情況下不提供Sun/Oracle JDK,而其他JDK可能缺少該文件(它應該位於'rt.jar'中,該文件應位於類路徑中)。 – Thomas 2011-04-07 06:43:40
我正在使用SUN JDK我正在Linux Redhat上運行我在其中安裝了SUN JDK 1.6.20 ..並且我在位於/opt/jdk1.6.20/jre/的java中安裝了'rt.jar' lib' – 2011-04-07 06:47:13