※ ChatGPTを利用し、要約された質問です(原文:java strust 動的にDBのデータをJSP画面で表示する 方法)
Java Strutsで動的にDBのデータをJSP画面に表示する方法
このQ&Aのポイント
Java Strutsを使用して、JSP画面でDBのデータを動的に表示する方法について教えてください。エラーメッセージによると、Beanのプロパティに対するゲッターメソッドが見つからないとのことです。
JSPの画面表示はできているが、検索を行うとエラーが発生し、ゲッターメソッドのエラーだと考えています。検索結果をArrayListに格納して表示したいので、正しいゲッターメソッドを教えてください。
質問ですが、Java Strutsを使用してJSP画面でDBのデータを動的に表示しようとしていますが、ゲッターメソッドのエラーが出力されます。正しいゲッターメソッドの設定方法や修正方法を教えてください。
java strust 動的にDBのデータをJSP画面で表示する 方法
--エラー内容
致命的: サーブレット action のServlet.service()が例外を投げました
javax.servlet.jsp.JspException: Bean array のプロパティ dBBookTitle に対するゲッターメソッドがありません
--JSPソース--
<logic:notEmpty property="bookId" name="RETURNSCREEN">
<logic:iterate id="array" name="RETURNSCREEN" property="bookId" >
<bean:write name="array" property="dBBookId"/>
</logic:iterate>
</logic:notEmpty>
--Javaアクション--
ReturnScreenForm rsf = ( ReturnScreenForm ) form ;
ReturnScreenFormDB rsfd = new ReturnScreenFormDB( ) ; // = ( ReturnScreenFormDB ) form ;
//ArrayListクラスは大きさが決まっていない配列となる,その為動的にオブジェクト配列を宣言できる
ArrayList<ReturnScreenFormDB> array = new ArrayList<ReturnScreenFormDB>( ) ;
//DB接続処理の呼び出し
DatabaseAccess.Open( );
rs = DatabaseAccess.executeQueryMethod( SQL_CODE ) ;
String stmember_id ; //DBデータ(member_id )取得して格納する受け皿
String ststatus ; //DBデータ(status )を取得して格納する受け皿
String stbook_id ; //DBデータ(book_id )を取得して格納する受け皿
String stbook_title ; //DBデータ(book_title )を取得して格納する受け皿
int flg_Retrieval = 0 ;
int CountNo = 0;
//検索された行数文ループ
while( rs.next( ) ) {
flg_Retrieval = 1 ;
stmember_id = rs.getString("member_id"); //DBのmember_idを格納
ststatus = rs.getString("status"); //DBのmember_idを格納
stbook_id = rs.getString("book_id"); //DBのmember_family_nameを格納
stbook_title = rs.getString("book_title"); //DBのmember_family_name_kanaを格納
//セッターに取得データをセットする
rsfd.setDBBookId( stbook_id ) ;
rsfd.setDBBookTitle( stbook_title) ;
array.add( rsfd );
rsf.setBookId( array );
} //END while( rs.next( ) )
--JSP画面Bean--
private String memberId; // ="0003"; //会員ID
private ArrayList<ReturnScreenFormDB> bookId; // ="0041"; //本ID
private ArrayList<ReturnScreenForm> bookTitle; // = "御徒町"; //本タイトル
//セット本ID
public void setBookId( ArrayList<ReturnScreenFormDB> array ) { this.bookId = array ; }
//ゲット本ID
public ArrayList<ReturnScreenFormDB> getBookId( ) { return this.bookId ; }
//セット本タイトル
public void setBookTitle( ArrayList<ReturnScreenForm> bookTitle ) { this.bookTitle = bookTitle ; }
//ゲット本タイトル
public ArrayList<ReturnScreenForm> getBookTitle( ) { return bookTitle ; }
//セット会員ID
public String getMemberId( ) { return memberId ; }
//ゲット会員ID
public void setMemberId( String memberId ) { this.memberId = memberId; }
--JSPDBBean--
private String dbbookTitle; // = "御徒町"; //DB本タイトル
private String dbbookId; // ="0041"; //DB本ID
//セット本タイトル
public void setDBBookTitle( String dbbookTitle ) { this.dbbookTitle = dbbookTitle ; }
//ゲット本タイトル
public String getDBBookTitle( ) { return this.dbbookTitle ; }
//セット本ID
public void setDBBookId( String dbbookId ) { this.dbbookId = dbbookId ; }
//ゲット本ID
public String getDBBookId( ) { return this.dbbookId ; }
--struts-config.xml--
<form-beans>
<form-bean
name="RETURNSCREEN"
type="rentalPackage.ReturnScreenForm">
</form-bean>
</form-beans>
<action
path="/Return"
type="rentalPackage.ReturnScreenAction"
name="RETURNSCREEN"
scope="request"
parameter="submitPropertyReturnScreen"
validate="false">
<forward name="successReturnScreen" path="/ReturnScreen.jsp"/>
</action>
--質問--
JSPの画面表示はできました。
しかし、番号を入力後検索をDBにかけると
エラーが出力されます。Beanのプロパティに対するゲッターエラーと感じています。
大変申し訳ありませんが本当に助けてほしいです。
よろしくお願いします。