2011-10-04 96 views
1

我遇到了運行使用java類的jsp文件的問題。該jsp文件被稱爲temp.jsp。我已經把我的JSP文件在根文件夾Tomcat服務器 上的類在ROOT/WEB-INF /班/ COM/JAVA發現/ tempBean.classJSP頁面無法工作:java.lang.ClassNotFoundException:org.apache.jsp和useBean類屬性的值無效

這裏是所有從我的臨時代碼。 JSP文件:

<jsp:useBean id="report" class="com.java.tempBean" scope="page"> 
</jsp:useBean> 

這是所有從我tempBean.class文件中的代碼(類是空的 - 我只是想在一瞬間產生沒有錯誤!)

package com.java; 


public class tempBean 
{ 

    public tempBean() 
    { 
    } 
} 

當我嘗試打開jsp頁面,我得到了以下錯誤(刷新之間我得到第一或第二錯誤)

org.apache.jasper.JasperException: /temp.jsp (line: 1, column: 1) The value for the useBean class attribute com.java.tempBean is invalid. 


    org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:41) 
     org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) 
     org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) 
     org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1229) 
     org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1182) 
     org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2376) 
     org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2428) 
     org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2434) 
     org.apache.jasper.compiler.Node$Root.accept(Node.java:475) 
     org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2376) 
     org.apache.jasper.compiler.Generator.generate(Generator.java:3485) 
     org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:249) 
     org.apache.jasper.compiler.Compiler.compile(Compiler.java:372) 
     org.apache.jasper.compiler.Compiler.compile(Compiler.java:352) 
     org.apache.jasper.compiler.Compiler.compile(Compiler.java:339) 
     org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:601) 
     org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:344) 
     org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389) 
     org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333) 
     javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 

OR

exception 

org.apache.jasper.JasperException: java.lang.ClassNotFoundException: org.apache.jsp.temp_jsp 
    org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:168) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:356) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 

root cause 

java.lang.ClassNotFoundException: org.apache.jsp.temp_jsp 
    java.net.URLClassLoader$1.run(URLClassLoader.java:200) 
    java.security.AccessController.doPrivileged(Native Method) 
    java.net.URLClassLoader.findClass(URLClassLoader.java:188) 
    org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:132) 
    org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:63) 
    org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:162) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:356) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 

任何幫助,非常感謝:)謝謝!

+0

嘗試使用'type'屬性而不是'class'屬性。 http://stackoverflow.com/questions/545177/the-value-for-the-usebean-class-attribute-is-invalid/1764211#1764211 – gigadot

+0

將屬性更改爲類型:現在獲取此異常: org.apache。 jasper.JasperException:無法爲JSP編譯類: jsp文件中行1出錯:/temp.jsp com.java.TempBean無法解析爲類型 1: 2: JigglyPuff

回答

0

見問題The value for the useBean class attribute ... is invalid

可能不是原因的錯誤,但Java類的名稱應始終大寫:


package com.java; 

public class TempBean 
{ 
    public TempBean() 
    { 
    } 
} 

+0

感謝您的幫助:)我改稱我的課程,但它沒有做任何事情。我早些時候查看了這個問題的答案,但它不能很好地解決我的問題:( – JigglyPuff

1

Apprantely類文件沒有被拾起,當我手動添加它tomcat服務器(我可能必須重新啓動服務器才能啓動服務器,但我不能這樣做,因爲它不是我的服務器!),我將代碼作爲WAR文件從Eclipse導出並放入webapps中文件夾(服務器會自動提取這些文件),現在它可以正常工作。

感謝您的幫助:)

相關問題