【问题标题】:The value for the usebean class attribute is invalid in jsp [duplicate]jsp中usebean类属性的值无效[重复]
【发布时间】:2012-12-31 22:43:24
【问题描述】:

我通过 stackoverflow 搜索了这个错误,所有与此相关的答案似乎都不适用于我的情况(或者我可能忽略了这些答案中的某些内容)。无论如何,我是一个自学成才的 Java 新手,所以任何帮助都将不胜感激。

Tomcat 中的类路径是“/webapps/ROOT/WEB-INF/classes/VidCollPkg/feedData.class”。 我的 jsp 文件位于“webapps/appletv”中。

这是错误日志的摘录:

Dec 31, 2012 12:41:48 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [jsp] in context with path [/appletv] threw      exception [/select.jsp (line: 11, column: 0) The value for the useBean class attribute   vidCollPkg.feedData is invalid.] with root cause
org.apache.jasper.JasperException: /select.jsp (line: 11, column: 0) The value for the   useBean class attribute vidCollPkg.feedData is invalid.

这是类文件的代码(编译成功):

package vidCollPkg;

import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;


public class feedData {

    java.sql.Connection con;

    public feedData() throws ClassNotFoundException, InstantiationException,  IllegalAccessException, SQLException {

        Class.forName("com.mysql.jdbc.Driver").newInstance();


        con = DriverManager.getConnection("jdbc:mysql://localhost/VideoDB? user=usr&password=pwd");

    }

    public ArrayList<String> getUnis() throws SQLException {
        ArrayList<String> vidList = new ArrayList<String>();
        String tryquery = "SELECT title FROM videoDB.vidtb ORDER BY title";
        java.sql.Statement stmt2 = con.createStatement();
        ResultSet rs1 = stmt2.executeQuery(tryquery);

        while (rs1.next()) {

            vidList.add(rs1.getString("title"));

        }

        return vidList;
    }


 }

这是我的jsp文件的代码:

<%@ page contentType="text/html; charset=UTF-8" language="java" import="java.sql.*"  errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Rate video</title>
</head>

<body>
<jsp:useBean id="obj" scope="page" class="vidCollPkg.feedData" />
<h1 align="center">RATE VIDEO</h1> <br>

<form name="frm" action="updateRecord.jsp">
Title: <select name="title">
       <c:forEach var="title" items="${obj.vids}">
       <option value="${title}">${title}</option>
       </c:forEach>
       </select><br>
Date Viewed: <input type="text" name="sDateVwd"><br>
Rating: <input type="text" name="rating"><br>
Comments: <br /><textarea name="comments" cols="40" rows="6"></textarea><br>
<input type="submit" value="Rate Video"><br />
<input type="reset" value="Reset" />
</form>
</body>
</html>

我有一种感觉,我忽略了一些简单的事情。提前感谢您的帮助。

【问题讨论】:

    标签: java jsp usebean


    【解决方案1】:

    将 vidCollPkg 添加到 jsp 中页面标记的导入部分,并将 jsp:useBean 类更改为仅 'feedData'。

    【讨论】:

    • 当我这样做时,我得到了错误:'java.lang.UnsupportedClassVersionError: feedData : Unsupported major.minor version 51.0'
    猜你喜欢
    • 2010-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-21
    • 2013-11-04
    相关资源
    最近更新 更多