2009-05-22 45 views
1

我想第一次使用displaytag,並遇到displaytag問題,我似乎無法解決。我搜索瞭解決方案,但在互聯網上找不到任何東西。其他所有工作都是唯一不起作用的東西。displaytag問題

我非常想做簡單的表格顯示。

我得到的錯誤是:

org.apache.jasper.JasperException: javax.servlet.ServletException: javax.servlet.jsp.JspException: org.apache.jasper.JasperException: Unable to load class for JSP 

的JSP頁面:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 
<%@ taglib uri="http://displaytag.sf.net" prefix="dt" %> 

<%--<jsp:useBean id="ForumList" scope="session" class="mysql.Forum" />--%> 

<% session.setAttribute("test2", mysql.Forum.getMyTopics()); %> 

<dt:table name="sessionScope.test2" /> 

和我的類,這是很簡單的一個

package mysql; 

import java.sql.*; 
import java.sql.Connection; 
import java.lang.*; 
import javax.servlet.*; 
import javax.servlet.http.*; 


import javax.servlet.jsp.jstl.sql.Result; 
import javax.servlet.jsp.jstl.sql.ResultSupport; 

public class Forum { 
    public Connection con = null; 
    public Result myTopics = null; 
    public MysqlBase mysql = new MysqlBase(); 


    public Result getMyTopics() 
    { 
     try 
     { 
      con = mysql.getConnection(); 
      Statement stmt = con.createStatement(); 
      ResultSet result = stmt.executeQuery("Select * from lawers_topics"); 
      myTopics = ResultSupport.toResult(result); 

      con.close(); 
      stmt.close(); 
     } 
     catch(Exception e) 
     { 
     } 

     //request.setAttribute("MyTopics", this.myTopics); 
     return this.myTopics; 
    } 
} 

我真的很感激,如果有人可以指引我走向正確的方向。

編輯:我忘了說我使用NetBeans和Tomcat6.0進行開發。

回答

1

您試圖在表中顯示的對象是否必須實現java.util.List

Result不一定這樣做。

+0

從http://displaytag.sourceforge.net/11/tut_sources.html 它說,你可以使用結果是有點,但結果集對於jstl – Dmitris 2009-05-22 15:32:53

1

錯誤「無法加載JSP的類」告訴我,Tomcat沒有找到您在jsp中引用的一個或多個類文件。你確定你的mysql.Forum類在類路徑中(在這種情況下是WEB-INF/classes/mysql/Forum.class)嗎?

此外,它似乎是試圖從您的scriptlet調用getMyTopics(),就好像它是論壇類的靜態方法,但它不是靜態的。

1

嘗試改變

<dt:table name="sessionScope.test2" /> 

<dt:table name="${test2}"/>