/*sidebar.xhtml*/ <h:form id="sort_form"> <p class="side-title"><b>あ</b></p> <select name="sort" onchange="dropsort()"> <option value="#">選択してください</option> <option value="2011_Top.xhtml" onclick="#{iB.setIi_nendo_id(2011)};#{ijB.setIj_nendo_id(2011)};#{joB.setJo_nendo_id(2011)}">#{nendoBean.nendo}#{res.km}</option> <option value="2012_Top.xhtml" onclick="#{iB.setIi_nendo_id(2012)};#{ijB.setIj_nendo_id(2012)};#{joB.setJo_nendo_id(2012)}">#{nendoBean.nendo1}#{res.km}</option> <option value="2013_Top.xhtml" onclick="#{iB.setIi_nendo_id(2013)};#{ijB.setIj_nendo_id(2013)};#{joB.setJo_nendo_id(2013)}">#{nendoBean.nendo2}#{res.km}</option> <option value="2014_Top.xhtml" onclick="#{iB.setIi_nendo_id(2014)};#{ijB.setIj_nendo_id(2014)};#{joB.setJo_nendo_id(2014)}">#{nendoBean.nendo3}#{res.km}</option> </select> </h:form> --------------------------------------------------------------------------------- /*igishi.js*/ //<!-- コンボボックスの値をURLに置換するjavaScript --> function dropsort() { var browser = document.sort_form.sort.value; location.href = browser; } --------------------------------------------------------------------------------- /*IiBean.java*/ @Named(value = "iB") @Dependent public class IiBean { /*変数の宣言と対応するGetter,Setterを記述する*/ static Integer ii_nendo_id=0; static String ii_mondai_id=""; private String mondaibun; private String mg1; private String mg2; private String mg3; private String mg4; private String mg5; public Integer getIi_nendo_id() { return ii_nendo_id; } public void setIi_nendo_id(Integer ii_nendo_id) { IiBean.ii_nendo_id = ii_nendo_id; } public String getIi_mondai_id() { return ii_mondai_id; } public void setIi_mondai_id(String ii_mondai_id) { IiBean.ii_mondai_id = ii_mondai_id; } public String getMondaibun() { return mondaibun; } public void setMondaibun(String mondaibun) { this.mondaibun = mondaibun; } public String getMg1() { return mg1; } public void setMg1(String mg1) { this.mg1 = mg1; } public String getMg2() { return mg2; } public void setMg2(String mg2) { this.mg2 = mg2; } public String getMg3() { return mg3; } public void setMg3(String mg3) { this.mg3 = mg3; } public String getMg4() { return mg4; } public void setMg4(String mg4) { this.mg4 = mg4; } public String getMg5() { return mg5; } public void setMg5(String mg5) { this.mg5 = mg5; } /*変数の宣言とGetter,Setterの記述ここまで*/ public IiBean() { /*MySQL(データベース:「mie」)に接続する処理*/ ResultSet rs=null; Connection con = null; PreparedStatement ps = null; try { Class.forName("com.mysql.jdbc.Driver"); con =DriverManager.getConnection("jdbc:mysql://localhost/mie","root","mysql"); /*MySQLに接続する処理ここまで*/ String sql=""; if (cntupBean.countup < 10 ) { /*ここから変数「sql」にsql文を格納するコードを記述する*/ sql = "select mondaibun,mondaigun1,mondaigun2,mondaigun3,mondaigun4,mondaigun5 from kakomondai " + "where nendo_id="+IiBean.ii_nendo_id+" and kamoku_id=1 and mondai_id='"+IiBean.ii_mondai_id+"0"+cntupBean.countup+"'"; /*sql格納ここまで*/ } else if(cntupBean.countup <51) { sql = "select mondaibun,mondaigun1,mondaigun2,mondaigun3,mondaigun4,mondaigun5 from kakomondai " + "where nendo_id="+IiBean.ii_nendo_id+" and kamoku_id=1 and mondai_id='"+IiBean.ii_mondai_id+""+cntupBean.countup+"'"; } //ステートメントオブジェクトを生成 ps = con.prepareStatement(sql); //クエリを実行して結果セットを取得 rs = ps.executeQuery(); //mondaiデータ取得 while(rs.next()){ this.mondaibun = rs.getString("mondaibun"); this.mg1 = rs.getString("mondaigun1"); this.mg2 = rs.getString("mondaigun2"); this.mg3 = rs.getString("mondaigun3"); this.mg4 = rs.getString("mondaigun4"); this.mg5 = rs.getString("mondaigun5"); System.out.println("●"+this.mondaibun); System.out.println("●"+this.mg1); System.out.println("●"+this.mg2); System.out.println("●"+this.mg3); System.out.println("●"+this.mg4); System.out.println("●"+this.mg5); } } catch (SQLException ex) { Logger.getLogger(IiBean.class.getName()).log(Level.SEVERE, null, ex); } catch (ClassNotFoundException ex) { Logger.getLogger(IiBean.class.getName()).log(Level.SEVERE, null, ex); }finally{ try { //close処理 if(ps != null) { ps.close(); } //close処理 if(con != null) { con.close(); } } catch (SQLException e) { e.printStackTrace(); } } } }
sidebarのselect optionの値をクリックしたとき、ページ遷移とともにバッキングビーンに値を渡したいと考えています。
ですが、最後のonclickしかイベントが発火していない状況です。
他に案、またなにか代替案はあるでしょうか、
*glassfish4.1です。