JAVA/Strutsを用いて掲示板を作成していますが、トップページ(index.jsp)から掲示板リンクをクリックして掲示板(bbs.Jsp)へ飛ばしたいのですが、エラーが発生します。
どうすれば飛ばせるようになりますか?
掲示板作成でしyソースコードを掲載させていただきます。
■Struts-config.xml■
<action path="/IndexAction" type="jp.struts.restaurant2.IndexAction"
scope="request">
<forward name="index" path="/index.jsp" />
</action>
<action path="/MessagesAction" type="jp.struts.bbs.MessagesAction"
scope="request">
<forward name="bbs" path="/bbs.jsp" />
</action>
■トップページindex.jsp■
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ page import="jp.struts.restaurant2.* " %>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<html:html lang = "true" xhtml = "true">
<head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title></title> <style type="text/css"> *{padding:5px; margin:0px;} body{background:lightyellow; text-align:center; </style> </head> <body> <% AuthAndRegist userForm = (AuthAndRegist)session.getAttribute("userForm"); String guest; int custType; if(userForm != null){ if(userForm.getUserName() != null){ guest = userForm.getUserName(); custType = userForm.getType(); }else{ guest = "ゲスト"; custType = 1; } }else{ guest = "ゲスト"; custType = 1; } %> <h2>◆ Restaurante IDEALLE ◆</h2> <div><%= guest %>様、いらっしゃいませ。</div><br/> <p><html:link href = "AuthAction.do">お客様ログイン</html:link></p> <% if(guest.equals("ゲスト")){ %> <p><html:link href = "AuthAction.do?mode=toRegist">新規お客様登録</html:link></p> <% } %> <p><html:link href = "ReserveAction.do">ご予約</html:link></p> <p><html:link href = "MenuAction.do?mode=showMenu">メニューを見る</html:link></p> <p><html:link href = "MessagesAction.do">コミュニケーション掲示板</html:link></p> <p><html:link href = "Logoff.do">ログオフ</html:link></p> <% if(custType == 0) { %> <p> </p> <p><html:link href = "ReserveListAction.do">予約メンテナンス(管理用) </html:link></p> <p><html:link href = "MenuAction.do?mode=mainteMenu">メニューメンテナンス(管理用) </html:link></p> <p><html:link href = "CustomerAction.do">ユーザーメンテナンス(管理用)</html:link></p> <% } %> </body> </html:html>■MessagesAction.java■
package jp.struts.bbs;
import java.util.ArrayList;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class MessagesAction extends Action{
public ActionForward execute(ActionMapping map, ActionForm frm,
HttpServletRequest request, HttpServletResponse response)
throws Exception{
Messages mes = new Messages(); mes.execute(); ArrayList<Messages> mesObj = mes.getAl(); request.setAttribute("mesList", mesObj); return map.findForward("bbs"); }
}
■MessagesForm.java■
package jp.struts.bbs;
import java.io.UnsupportedEncodingException;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.validator.ValidatorForm;
public class MessagesForm extends ValidatorForm{
private static final long serialVersionUID = 1L;
public MessagesForm(){ super(); } public void reset(ActionMapping mapping, HttpServletRequest request){ super.reset(mapping, request); try{ request.setCharacterEncoding("utf-8"); }catch(UnsupportedEncodingException e){ e.printStackTrace(); } }
}
■Messages.java■
package jp.struts.bbs;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import javax.naming.InitialContext;
import javax.sql.DataSource;
public class Messages {
private ArrayList<Messages> al = null;
private String title = null;
private String name = null;
private String text = null;
private String pass = null;
private String date = null;
private int id = 0;
public Messages(){ super(); } public ArrayList<Messages> getAl() { return al; } public void setAl(ArrayList<Messages> al) { this.al = al; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getText() { return text; } public void setText(String text) { this.text = text; } public String getPass() { return pass; } public void setPass(String pass) { this.pass = pass; } public String getDate() { return date; } public void setDate(String date) { this.date = date; } public int getId() { return id; } public void setId(int id) { this.id = id; } public void execute() throws SQLException,Exception{ Class.forName("jp.struts.bbs.Messages"); DataSource ds = null; InitialContext ic = null; Connection con = null; ic = new InitialContext(); ds = (DataSource)ic.lookup("java:comp/env/mysql"); con = ds.getConnection(); String sql = "select * from bbs order by bbs_date desc"; PreparedStatement pst = con.prepareStatement(sql); ResultSet rs = pst.executeQuery(); Messages mes = null; al = new ArrayList<Messages>(); while(rs.next()){ mes = new Messages(); mes.setTitle(rs.getString("bbs_title")); mes.setName(rs.getString("bbs_name")); mes.setText(rs.getString("bbs_text")); mes.setDate(rs.getString("bbs_date")); mes.setPass(rs.getString("bbs_pw")); mes.setId(rs.getInt("bbs_id")); al.add(mes); } pst.close(); rs.close(); con.close(); } }
TomCatサーバー、eclipseを使用
あなたの回答
tips
プレビュー