- ベストアンサー
JSPからJavaクラスを参照できない?
- サーブレットを勉強しています。Eclipseを使っています。
- WEB-INF/src/m/to_do.javaとview/list.jspのファイルがあります。
- list.jspの中でto_doクラスを使いたいのですが、java.util.ArrayList<to_do>のところでエラーが出てしまいます。どうすればto_doクラスを読み込ませられるのでしょうか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
関連するQ&A
- JSP jsp:usebean で総称型クラスを使うには
お世話になります。 JSPでプログラムを書いています。 そこでjsp:usebeanを使っているのですが、そのクラスに以下のように総称型クラスを使用したいのです。 > <%@page import="java.util.Vector"%> > <jsp:useBean id="vec" scope="application" class="java.util.Vector<String>"/> で、warファイルまではできるのですが、実行するとブラウザ上に以下のようなエラーが表示されます。 > org.apache.jasper.JasperException: /index.jsp(4,0) useBeanのクラス属性 java.util.Vector<String> の値が無効です > org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40) > org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) > org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148) > org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1178) JSPのbeanには総称型クラスを使うことができないのでしょうか。 環境は以下の通りです。 サーバー:Tomcat 5.5.27 jdk: 1.6.0_07 特別なコンパイルオプションなどは指定していません。 よろしくお願いいたします。
- ベストアンサー
- Java
- サーブレットからArrayListにBeanを格納しJSPで使用する方法
はじめまして、以下の問題ですが、わからず困っているので 質問させていただきます。 PCはWindowsXPで Eclipse Version: 3.4.1を使用し Tomcat5.5,jre6を使用しています。 研修の課題なのですが サーブレット内でBeanをArrayListを使って、動的確保したものを JSPに渡し、ArrayListに入ったBeanを取り出し、 そのBeanにsetした値を表示させるというプログラムを作っています。 JSPの部分がまったくわかりません。 JSPに配列はわたったようなのですが、JSPでのArrayListの取り出し方 などが、調べてもまったく解決しません。 もしわかる方がいましたら、教えてください。よろしくお願いします。 内容は以下です。 ///////////サーブレット//////////////////////////// ArrayList<Beans> beansid = new ArrayList<Beans>(); i=0; while(rs.next()){ sid = rs.getInt("sid"); sname = rs.getString("sname"); spass = rs.getString("spass"); Beans inbean = new Beans(); inbean.setsid(sid); inbean.setsname(sname); inbean.setspass(spass); beansid.add(inbean); } request.setAttribute("beansid",beansid); //Beansクラス///////////////////// public class Beans{ private int sid; private String sname; private String spass; public int getsid(){ return sid; } public void setsid(int sid){ this.sid = sid; } public String getsname(){ return sname; } public void setsname(String sname){ this.sname = sname; } public String getspass(){ return spass; } public void setspass(String spass){ this.spass = spass; } } //JSPのコード///////////////////////////////// <%@page contentType="text/html; charset=Shift_JIS" pageEncoding="Shift_JIS" %> <jsp:useBean class="java.util.ArrayList" id="beansid2" scope="request"/> <jsp:useBean class="java.lang.String" id="beansid" scope="request"/> <%@page import="keiji.Beans"%> <%@page import= "java.util.*" %> <%@page import="java.sql.*"%> <%@page import="javax.servlet.*"%> <%--下のclassの所はBeansというのでも試してみました。--%> <jsp:useBean class="java.util.ArrayList" id="beansid2" scope="request"/> <%-- ArrayList beansid = (ArrayList)request.getAttribute("beansid"); --%> <%-- Iterator it = beansid.Iterator(); --%> ArrayList Iteratorと使ってみたのですが、 自分にはわけが分からず、JSPを実行したとき、処理がとまってしまいます。
- 締切済み
- Java
- サーブレットのリストをJSPを渡すとき認識しない
org.apache.jasper.JasperException: Exception in JSP: /keiji/Top.jsp:41 38: List list = (List)request.getAttribute("Beansid"); 39: %> 40: <% 41: for(int i=0; i<list.size(); i++){ 42: Beans bean = (Beans)list.get(i); 43: bean.getsid(); <%@page import="package.Beans"%> <%@page import= "java.util.*" %>とインポートを使用しました。 ArrayListとIteratorも使用できませんでした。 WindowsXP Tomcat5.5、JSP2.0です。 JavaSE all in one Eclipse3.4 です。 これは、サンプルのコピーを使用しました。 出来る限り何をやってもだめで、調べても見つかりません。 JSPの問題かSEの問題か、さっぱりわかりません。 分かる方いましたら、教えてください。よろしくお願いします。
- ベストアンサー
- その他([技術者向] コンピューター)
- JSP内で関数定義 EJB変数の参照
いつもお世話になっています。 JSPの中に <%! ~ %> を使って、関数(function)を作ったのですが、それに、同JSPページ内で宣言したEJBがあるのですが、そのオブジェクトをfunction内で使おうとすると、宣言されていませんエラーが出てしまいます。JSPが内部でどのようなJavaとしてコンパイルされるかよく分からないのですが、 パラメータとして渡す以外に、functionの中でJSP内で宣言した、EJBを使うことは出来るのでしょうか。 ご存じの方が居ましたらよろしくお願いします。 記述例(こんな感じで使いたいです) <jsp:useBean id="testBean" class="xxx.xxx.testBean" scope="page"> <jsp:setProperty name="testBean" property="testProperty" value="test" /> </jsp:useBean> <%! private String testFunction(boolean booleanExpression) { return(booleanExpression ? testBean.value() : " "); } %>
- 締切済み
- Java
- jspでbeanを使いたいのですが...
お世話になります。 JSPコード内のjavaプログラムをBeanとして読み込むようにし、インスタンスを作ってエラーにならないか試したところ、クラスが認識されないエラーが起きてしまいました。 他の記述やテキスト、サイト様を参考に手直しをしてみたもののうまく行かず、何だかわからなくなってしまいました... ご教授お願いいたします。 OS:WindowsVista サーブレット:Tomcat 参考テキスト:java+MySQL+Tomcatで始めるWebアプリケーション ファイルの階層 Desktop─test─jamyto┬aura─aurabottle.jsp └WEB-INF─classes─auras┬IdMake.java └IdMake.class aurabottle.jsp側 <%@ page contentType="text/html; charset=Windows-31J"%> <%@ page import="java.sql.*"%> <%@ page import="java.util.*"%> <%@ page import="auras.IdMake"%> <%auras.IdMake idmake = new auras.IdMake();%> 以下JSPコード IdMake.java側 package auras; import java.sql.*; public class IdMake { StringBuffer sb = new StringBuffer(); public int barthDay (String strYear, String strMonth, String strDay){ 以下Javaコード エラー文面 org.apache.jasper.JasperException: JSPのクラスをコンパイルできません: JSP FileName:null Java FileName:/C:/Program Files/Apache Software Foundation/Tomcat 5.5/work/Catalina/localhost/aura//org/apache/jsp\aurabottle_jsp.java An error occurred at line: 6 in the generated java file Only a type can be imported. auras.IdMake resolves to a package JSP FileName:/aurabottle.jsp Java FileName:/C:/Program Files/Apache Software Foundation/Tomcat 5.5/work/Catalina/localhost/aura//org/apache/jsp\aurabottle_jsp.java JSPファイル: /aurabottle.jsp の中の7行目でエラーが発生しました auras.IdMake cannot be resolved to a type
- ベストアンサー
- Java
- JSPが表示できない
サーブレットからJSPに表示させようとしているのですがJSPの中にJAVAソース を加えると表示できなく画面が真っ白になり、加えなければ表示できます。 原因がなぜなのかわからなく困惑中です。ソースは以下の通りです。 アドバイスお願いします。 <%@ page contentType="text/html;charset=Shift_JIS" import= "java.sql.*" %> <jsp:useBean id="Bean" class="Servlet"scope="session" /> <html> <head><title>表示画面</title></head> <body> // BeanファイルでデータをSQL文によって取り出しrs変数に格納し // getNameCDメソッドによってデータを取り出す。BeanファイルではSQL文 実行確認済み <% ResultSet rs = Bean.getNamaCD(); %> <% while(rs.next()){ out.println(rs.getString(1)); // 名前のコードを取り出し表示させる。 } %> </body> </html>
- 締切済み
- Java
- クラスにアクセスできません。
いつもお世話になっております。 ・windows2000 ・j2sdk-1_4_1_07-windows-i586 ・jakarta-tomcat-4.1.31 で、 Daykeisan.java というのを作成し、コンパイル後 作成されたclassファイルを c:\Plogram Files\Apache Group\Tomcat4.1\webapps\examples\WEB-INF\classes\javahello に格納しました。 <%@ page contentType="text/html;charset=Shift_JIS" %> <%@ page language="java" %> <%@ page import="java.util.*" %> <jsp:useBean id="syuu" class="javahello.Daykeisan" /> ・ ・ ・ とjspファイルを作成し、表示させようとすると、 HTTP Status 500 - C:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\examples\javahello\calendar2_jsp.java:45: javahello.Daykeisan にアクセスできません。 クラスファイル C:\Program Files\Apache Group\Tomcat 4.1\webapps\examples\WEB-INF\classes\javahello\Daykeisan.class は不正です。 クラスファイル Daykeisan に不正なクラスがあります。 削除するか、クラスパスの正しいサブディレクトリにあるかを確認してください。 javahello.Daykeisan syuu = null; ^ エラー 1 個 とエラーがかえってきます。 <jsp:useBean・・・> の使い方がよくないのだろうと思い調べていますが、解決に結びつきません。 どなたかご教授お願いいたします。
- ベストアンサー
- Java
- JSPのエラー。
以下のjspファイルでコンパイルエラーが出ます。 これはログインの処理の二つ目のjspファイルで、一つ目のファイルではhtmlのフォームで、このファイルにpostしています。 mディレクトリにuserクラスを作ってあり、loginメソッドで成功すればtrueが返ってきます。 ブラウザに表示されるエラーの一行目は org.apache.jasper.JasperException: /login2.jsp(3,27) <jsp:useBean タグが終了していません と表示されます。 よろしくお願いします。 <%@page contentType="text/html;charset=Windows-31J"%> <%@page import="m.user,javax.sql.*,java.sql.*"%> <jsp:useBean class="m.user" id="user" scope="session"/> <html> <head><title>ログイン</title></head> <body> <% String strLoginName = request.getParameter("login_name");/*フォームからの受け取り*/ String strPassword = request.getParameter("password"); String strResult; boolean blResult = user.login(strLoginName,strPassword); if(blResult){ strResult = "ログインしました。"; }else{ strResult = "失敗です。"; }%> <%=strResult%> </body> </html>
- ベストアンサー
- Java
- jsp/サーブレット
jsp サーブレットを勉強しています。 jspに入力された値を サーブレットに投げます。 サーブレットからjavaクラスに値を投げて javaクラスで値が正しいかどうかを判断します。 その結果をサーブレットに投げて、 サーブレットからjspに投げて jspで結果を表示する。というのは理解できました。 しかし私が行いたいのは、 クライアントがjspにアクセスしたときに、 javaクラスにある値をjspに表示させたいというものです。 この場合はサーブレットに何も投げるものがないのですが、 jsp→サーブレット→javaクラス→サーブレット→jsp このようにサーブレットを使って表示させるには、 どのようなプログラムを書いたらいいのでしょうか。 わかりにくい説明で大変申し訳ないですが、 具体的なプログラムを教えていただけるとありがたいです。 また、参考になりそうなURLがありましたら教えてください。 よろしくお願いします。
- 締切済み
- Java
- 長文失礼致します。Java初心者の者です。
MVCモデルに挑戦しているのですが、JSPの部分でエラーが出ます。 何か足りない気はするのですが、何を記述したら良いのか分かりません。 以下、一部抜粋です。 //JSP <%@ page contentType="text/html; charset=Windows-31J" %> <%@ page import="java.util.*"%> <%@ page import= "jp.co.xxx.bean.Jyusho" %> <jsp:useBean id="LIST" class="java.util.ArrayList" scope="request"/> //ここに何か記述しないといけない気がします。 <html><body> <TABLE BORDER="1"> <TR><TD><b>NO</b></TD><TD><b>名前</b></TD><TD><b>住所</b></TD><TD><b>電話番号</b></TD></TR> <TR> <TD><%=LIST.getNo() %></TD> <TD><%=LIST.getName()%></TD> <TD><%=LIST.getAddress()%></TD> </TR> </TABLE></body></html> //JyushoServlet public class JyushoServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try{Jyusho jyusho = new Jyusho(); List list = Jyusho.list(); request.setAttribute("LIST", list);} catch(Exception e){ e.printStackTrace(); } finally{ ServletContext context = this.getServletContext(); RequestDispatcher dispatcher = context.getRequestDispatcher("/jyusho.jsp"); dispatcher.forward(request, response);} } } //JyushoBean public String getAddress() { return address;} public void setAddress(String address) { this.address = address;} public String getNo() { return no;} public void setNo(String no) { this.no = no;} public String getName() { return name;} public void setName(String name) { this.name = name;} //Jyusho List list = new ArrayList(); while(resultSet.next()){ JyushoBean bean = new JyushoBean(); bean.setNo(resultSet.getString("NO")); bean.setName(resultSet.getString("NAME")); bean.setAddress(resultSet.getString("ADDRESS")); list.add(bean);} return list;} public List list(String no)throws ClassNotFoundException, SQLException{ List list = new ArrayList(); Iterator it = list().iterator(); while(it.hasNext()){ JyushoBean bean = (JyushoBean)it.next(); if(bean.getNo().equals(no)){ list.add(bean);} }return list;} } お手数ですが、ご教授お願い致します。
- ベストアンサー
- Java
お礼
解決しました! ありがとうございます。