JBuilderでのJSP実行

このQ&Aのポイント
  • JBuilder5 Professionalを使ってJSPを実行する際にエラーが発生します。解決方法を教えてください。
  • JBuilder5 Professionalを使ってJSPとBeanをあわせたサンプルを実行するとエラーメッセージが表示されます。原因と解決方法を教えてください。
  • JBuilder5 Professionalの実行環境でJSPを実行する際にエラーが発生します。どのように対処すればいいでしょうか。
回答を見る
  • ベストアンサー

JBuilderでのJSP実行

JBuilder5 Professionalを使って開発しようと しています。手始めに、 簡単なServletのサンプルの実行はできたのですが JSPとBeanをあわせたサンプルの実行で エラーがおきてしまいます。 実際やってみたのは下記のサンプルです。 http://www.atmarkit.co.jp/fjava/rensai/jbias02/jbias02_2.html このとおりにしてJSPを実行すると以下のような エラーメッセージがでてきます。(長いのですが活用します) また、JBuilderに付属のSampleを使っても同様のエラーに なります。 これは、tools.jarファイルをおく位置が関係 しているということでしょうか?(エラーに でているので・・・) 何かご教授願いたく思います。よろしくお願いします。 ***エラーメッセージ*************** Error: 500 Location: /jspwebapp/JSPWithCounter.jspInternal Servlet Error:javax.servlet.ServletException: sun/tools/javac/Main at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:399) ・・・こんな感じでつづきます。 実験環境は以下の通りです。 WindowsNT4 JBuilder5 pro jdk1.3

noname#2205
noname#2205
  • Java
  • 回答数1
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • pasta500g
  • ベストアンサー率46% (30/65)
回答No.1

JBuilder5を直接使っている訳ではないので、曖昧なアドバイスで申し訳ありませんが、JBuilder5のServlet/JSPデバック用コンテナってTomcatですよね。 Tomcat単独で使用する場合は、javacを見つける為に環境変数JAVA_HOMEを設定する必要があります。JBuilder5ではどこかのダイアログにこれに相当する設定フィールドがあるかもしれません。もし上記エラーが「javacがみつからん」というものならこれを見直して下さい。 それにしても上記のエラーメッセージ抜粋では割愛し過ぎでよく分からないので、もう少し載せて頂いた方が良いと思います。

noname#2205
質問者

補足

早い回答ありがとうございます!!! エラーはかなり長かったので省略してたのです。 すみません。以下にはっておきます。 E:\JBuilder5\jdk1.3\bin\javaw -classpath "E:\JBuilder5\jakarta-tomcat-3.2.1\lib\webserver.jar;E:\JBuilder5\jakarta-tomcat-3.2.1\lib\jasper.jar;E:\JBuilder5\jakarta-tomcat-3. 2.1\lib\parser.jar;E:\JBuilder5\jakarta-tomcat-3.2.1\lib\jaxp.jar;E:\JBuilder5\jakarta-tomcat-3.2.1\lib\servlet.jar;E:\JBuilder5\lib \webserverglue.jar;E:\JBuilder5\jdk1.3\demo\jfc\Java2D\Java2Demo.jar;E:\JBuilder5\jdk1.3\jre\lib\i18n.jar;E:\JBuilder5\jdk1.3\jre\li b\jaws.jar;E:\JBuilder5\jdk1.3\jre\lib\rt.jar;E:\JBuilder5\jdk1.3\jre\lib\sunrsasign.jar;E:\JBuilder5\jdk1.3\lib\dt.jar" org.apache.tomcat.startup.Tomcat -config E:\untitled4\conf\server8080.xml Starting tomcat. Check logs/tomcat.log for error messages 2001-07-25 05:41:01 - ContextManager: Adding context Ctx( ) 2001-07-25 05:41:01 - Ctx( ): Removing duplicate servlet jsp jsp(org.apache.jasper.servlet.JspServlet/null) 2001-07-25 05:41:01 - Ctx( ): Removing duplicate *.jsp -> jsp(org.apache.jasper.servlet.JspServlet/null) 2001-07-25 05:41:01 - Ctx( ): File not found E:\untitled4\conf\tomcat-users.xml 2001-07-25 05:41:01 - PoolTcpConnector: Starting HttpConnectionHandler on 8080 2001-07-25 05:41:01 - PoolTcpConnector: Starting Ajp12ConnectionHandler on 8081 2001-07-25 05:41:02 - Ctx( ): IOException in: R( + / + null) Not an ISO 8859_1 character:水 2001-07-25 05:41:02 - path="" :jsp: init 2001-07-25 05:41:02 - Scratch dir for the JSP engine is: E:\untitled4\work\localhost_8080 2001-07-25 05:41:02 - IMPORTANT: Do not modify the generated servlets 2001-07-25 05:41:02 - JspEngine --> /Jsp1.jsp 2001-07-25 05:41:02 - ServletPath: /Jsp1.jsp 2001-07-25 05:41:02 - PathInfo: null 2001-07-25 05:41:02 - RealPath: E:\untitled4\defaultroot\Jsp1.jsp 2001-07-25 05:41:02 - RequestURI: /Jsp1.jsp 2001-07-25 05:41:02 - QueryString: null 2001-07-25 05:41:02 - Request Params: 2001-07-25 05:41:02 - Classpath according to the Servlet Engine is: E:\untitled4\defaultroot\WEB-INF\classes 2001-07-25 05:41:03 - Ctx( ): Exception in: R( + /Jsp1.jsp + null) - javax.servlet.ServletException: sun/tools/javac/Main at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:399) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404) at org.apache.tomcat.core.Handler.service(Handler.java:286) at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372) at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797) at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743) at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:210) at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416) at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498) at java.lang.Thread.run(Thread.java:484) Root cause: java.lang.NoClassDefFoundError: sun/tools/javac/Main at com.borland.jbuilder.webserverglue.tomcat.jsp.JasperSunJavaCompiler.compile(Unknown Source) at org.apache.jasper.compiler.Compiler.compile(Compiler.java:245) at org.apache.jasper.servlet.JspServlet.doLoadJSP(JspServlet.java:462) at org.apache.jasper.servlet.JasperLoader12.loadJSP(JasperLoader12.java:146) at org.apache.jasper.servlet.JspServlet.loadJSP(JspServlet.java:433) at org.apache.jasper.servlet.JspServlet$JspServletWrapper.loadIfNecessary(JspServlet.java:152) at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:164) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404) at org.apache.tomcat.core.Handler.service(Handler.java:286) at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372) at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797) at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743) at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:210) at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416) at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498) at java.lang.Thread.run(Thread.java:484) >JBuilder5ではどこかのダイアログにこれに >相当する設定フィールドがあるかもしれません。 えーと。 メニューバーのツールから JDKの設定でtool.jarをセットして、 同じくライブラリの設定で Tomcatのクラス(セットしていないものは全部)を セットしました。 これで、メッセージウィンドウにtools.jar はクラスパスで通っている表示されたんですが Web実行がうまくいきませんでした。 実は、色々試したところ、 JBuilderのtools.jarファイルがこわれていたようです。 ?? というか、jdk1.3.0_01(単独でダウンロードした方)の tools.jarファイルをJBuilderにいれたところ、 JSP&Bean連携のプログラムが動きました。 しかし、JBuilderはjdk1.3.0_02でバージョンが違うんですが いいんでしょうか。。不安はのこります。 JBuilderのバグでしょうか? とにかく、ありがとうございました!!

関連するQ&A

  • JSPファイルからデータベースにアクセスできない

    以下のサイトを参考にして、JSPからデータベースにアクセスして ブラウザに表示させようとしています。 http://www.atmarkit.co.jp/fjava/rensai/jsp10/jsp10.html 実行環境は以下です OS: Vine Linux 4.1 PostgreSQL: version 8.2.5 Tomcat: version 5.5.25 Java: Java 2 SDK, standard Edition, version 1.5.0_13 ブラウザからjspファイルにアクセスすると次のエラーがでてきます ーーー エラー文 ーーー HTTPステータス 500 - type 例外レポート メッセージ 説明 The server encountered an internal error () that prevented it from fulfilling this request. 例外 org.apache.jasper.JasperException: Exception in JSP: /dbaccess.jsp:16 13: db.open(); 14: 15: // メンバーを取得 16: ResultSet rs = db.getResultSet("select * from member"); 17: 18: // メンバー一覧表示用のテーブル 19: String tableHTML = "<table border=1>"; Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:451) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:355) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 原因 javax.servlet.ServletException: ERROR: relation "member" does not exist (略) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 原因 org.postgresql.util.PSQLException: ERROR: relation "member" does not exist org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1548) (略) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) ーーー ここまで ーーー 自分が行った手順なんですが、 1、postgresユーザで'sampledb'というdbを作り、そのなかにmemberという テーブルを作成し、select * from member; を実行したところテーブル はありました。 2、MyDBAccess.javaは参考サイトとほぼ同じです。 コンストラクタの設定のところを以下のようにしました。 ーーーーーーーーーーーー public MyDBAccess() { driver = "org.postgresql.Driver"; url = "jdbc:postgresql://localhost:5432/sampledb; user = "postgres"; password = "********"; } ーーーーーーーーーーーー コンパイルも通ったので TOMCAT_HOME/webapps/####/WEB-INF/classes/atmarkitに クラスファイルを置きました。 3、jspファイルはdbaccess.jspという名前でそのまま使いました。 TOMCAT_HOME/webapps/####/dbaccess.jsp 4、/usr/local/pgsql/data/postgresql.confの #listen_addresses = 'localhost' を listen_addresses = '*' に書き換え、その後に $ pg_ctl reload としました。 5、ブラウザから "http://localhost:8080/####/dbaccess.jsp" にアクセスするとエラーがでました。 例外の部分のエラーはいろいろいじっていると出たり出なかったりですが、 "relation "member" does not exist"というエラーは消えません。 自分でいろいろ調べてみたのですがうまくいかなくて行き詰まってしまいました。 どうか助言や解決策があれば教えてください。 お願いいたします。

  • JSP NullPointerException

    JSPでNullPointerExceptionが出たのですが、初めて見るエラーなので、 どういうものなのか、どなたか教えてください。 スタックトレースは以下です。 メッセージ java.lang.NullPointerException 説明 The server encountered an internal error that prevented it from fulfilling this request. 例外 org.apache.jasper.JasperException: java.lang.NullPointerException org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:502) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:430) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) accession.filter.SessionFilter.doFilter(SessionFilter.java:97) accession.filter.ReferFilter.doFilter(ReferFilter.java:39) accession.filter.TimeoutFilter.doFilter(TimeoutFilter.java:23) accession.filter.EncodeFilter.doFilter(EncodeFilter.java:10) 原因 java.lang.NullPointerException org.apache.jsp.Use.Select.SendSelect_jsp._jspService(SendSelect_jsp.java:93) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) accession.filter.SessionFilter.doFilter(SessionFilter.java:97) accession.filter.ReferFilter.doFilter(ReferFilter.java:39) accession.filter.TimeoutFilter.doFilter(TimeoutFilter.java:23) accession.filter.EncodeFilter.doFilter(EncodeFilter.java:10) 原因一行目の「SendSelect_jsp.java:93」は何というファイルの93行目のことですか? SendSelect_jsp._jspServiceというのは・・・? このようなエラー(_jspServiceが原因の最初にあるもの)は初めてで、 調べてはみたのですが、同じようなエラーを見つけられなかったので、 教えてください。 JSPがSendSelect.jspで、SendSelect.javaを使っています。 宜しくお願い致します。

    • ベストアンサー
    • Java
  • jspのエラーが修正できません。

    jspソースのエラーが修正できなくて困っています。 現在、tomcat5.5とjdbc、muSQLなどを用いてシステムを作っています。 形態素解析などと組み合わせたいので、 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> を使いたいのですが、実行すると以下のエラーが発生します。 org.apache.jasper.JasperException: 絶対URI: http://java.sun.com/jsp/jstl/core はweb.xmlとこのアプリケーションを配備したJARファイルのどちらかでも解決できません org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) jsp1.1やjstlのjarファイルはWEB-INT/libフォルダに入れています。 web.xmlもバージョン2.4なので問題がないように思います。 いろいろ修正したのですがエラーが消えず、困り果てています。 よろしくお願いします。

    • ベストアンサー
    • HTML
  • JSPのエラー

    org.apache.jasper.JasperException: ERROR: character 0xc282 of encoding "UTF8" has no equivalent in "EUC_JP" org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:476) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:371) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 原因 javax.servlet.ServletException: ERROR: character 0xc282 of encoding "UTF8" has no equivalent in "EUC_JP" org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:846) org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:779) org.apache.jsp.jsp.sub_jsp._jspService(sub_jsp.java:80) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) 原因 org.postgresql.util.PSQLException: ERROR: character 0xc282 of encoding "UTF8" has no equivalent in "EUC_JP" org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1548) org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1316) org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:191) org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:452) org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:337) org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:329) atmarkit.MyDBAccess.execute(MyDBAccess.java:65) org.apache.jsp.jsp.sub_jsp._jspService(sub_jsp.java:67) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) おそらく文字の変換がいけないと思いますが、対処方法がわからないです・・ <ソース>の一部 <%@ page contentType="text/html; charset=Shift_JIS" %> <%@ page import="java.sql.*,atmarkit.MyDBAccess" %> <% while(rs.next()) { int id = rs.getInt("member_id"); String name = rs.getString("name"); String age = rs.getString("age"); int state = rs.getInt("attendance"); String comment = rs.getString("comment"); name = new String(name.getBytes("8859_1"), "Shift_JIS"); if(comment != null) {   comment = new String(comment.getBytes("8859_1"), "Shift_JIS"); } %> 詳しい方いらしゃったら、教えてください。 よろしくお願いします。

    • ベストアンサー
    • Java
  • jspのプログラムについて

    jspファイルで データベースの中のテーブルの中身をCSVファイルに出力するプログラムを教えてください。 delete文で中身を消すプログラムは書けたのですが、これはできません。 conn = null; st=null; conn=DriverManager.getConnection("jdbc:mysql://localhost/データベース名?" + "user=ユーザー名&password=パスワード&useUnicode=true&characterEncoding=utf8"); st=conn.createStatement(); StringBuffer buf = new StringBuffer(); buf.append("delete from where id="+id); st.executeUpdate(buf.toString()); これで削除はできました。 なのでbuf.appendの中身を buf.appendbuf.append("select * from テーブル名 INTO OUTFILE \"data.csv\" fields terminated by ',' "); これに書き換えればできると思ったのですができません。 よろしくお願いします。 エラー内容は org.apache.jasper.JasperException: An exception occurred processing JSP page /CSV.jsp at line 24 21: 22: StringBuffer buf = new StringBuffer(); 23: buf.append("select * from anpisystem INTO OUTFILE \"data.csv\" fields terminated by ',' "); 24: st.executeUpdate(buf.toString()); 25: 26: } 27: Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:401) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 原因 javax.servlet.ServletException: java.sql.SQLException: Can not issue SELECT via executeUpdate(). org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:862) org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791) org.apache.jsp.CSV_jsp._jspService(CSV_jsp.java:94) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 原因 java.sql.SQLException: Can not issue SELECT via executeUpdate(). com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1086) com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989) com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975) com.mysql.jdbc.SQLError.createSQLException(SQLError.java:920) com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1803) com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1764) org.apache.jsp.CSV_jsp._jspService(CSV_jsp.java:76) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

    • ベストアンサー
    • Java
  • JSPのデバッグの方法がわかりません。

    JSPのデバッグの方法というのは一般的にどのようにされるのでしょうか? サーブレットの方は、部分部分にSystem.out.println()を記述してうまくその処理が走っているかを確認しているのですが、JSPだと下記のような   --------------------------------------------------- Error: 500 Internal Servlet Error: javax.servlet.ServletException at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:461) at SyainMenteWeb._0002fSyainMenteWeb_0002ffrmSyainMente_0002ejspfrmSyainMente_jsp_12._jspService(_0002fSyainMenteWeb_0002ffrmSyainMente_0002ejspfrmSyainMente_jsp_12.java:973) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.jasper.servlet.JspServlet$JspCountedServlet.service(JspServlet.java:130) (一部略) Root cause: java.lang.NullPointerException at SyainMenteWeb._0002fSyainMenteWeb_0002ffrmSyainMente_0002ejspfrmSyainMente_jsp_12._jspService(_0002fSyainMenteWeb_0002ffrmSyainMente_0002ejspfrmSyainMente_jsp_12.java:127) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119) (一部略) ------------------------------------------------------------------- エラーが出てしまい、どの辺でエラーが発生したのか特定できません。 なにかデバッグする良い方法はないでしょうか? よろしければご教授お願い致します。

  • Eclipse + jsp +tomcatのエラー

    jspのプログラミングをしていて、以下のようなエラーがでて困っています。 以前に作った他のプログラムは特に問題ないのですが、今テストしてるものだけエラーがでます。 ソースは書籍のメディアからコピーしてきたのでコーディングミスはないと思います。 書籍のサイトをみても正誤情報はありませんでした。 私自身、あまりJavaに詳しくないのでどなたかアドバイスをいただけると助かります。 よろしくお願いします。 環境  Eclipse Version: Indigo Service Release 2 (pleiades-e3.7) tomcat 7.0.27 java jdk1.6.0_25 ------------------------------------------------------------------------- 説明 The server encountered an internal error () that prevented it from fulfilling this request. 例外 org.apache.jasper.JasperException: JSPのクラスをコンパイルできません: An error occurred at line: 211 in the generated java file Syntax error, insert "}" to complete Block An error occurred at line: 221 in the generated java file Syntax error on token "}", delete this token An error occurred at line: 222 in the generated java file Syntax error, insert "}" to complete ClassBody Stacktrace: org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:102) org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:331) org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:469) org.apache.jasper.compiler.Compiler.compile(Compiler.java:378) org.apache.jasper.compiler.Compiler.compile(Compiler.java:353) org.apache.jasper.compiler.Compiler.compile(Compiler.java:340) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:646) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:722) ブラウザの更新ボタンを押したりすると以下のようなメッセージに変わったりします。 ---------------------------------------------------------------------------------- 説明 The server encountered an internal error () that prevented it from fulfilling this request. 例外 org.apache.jasper.JasperException: java.lang.ClassNotFoundException: org.apache.jsp.expense.list_jsp org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:177) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 原因 java.lang.ClassNotFoundException: org.apache.jsp.expense.list_jsp java.net.URLClassLoader$1.run(URLClassLoader.java:202) java.security.AccessController.doPrivileged(Native Method) java.net.URLClassLoader.findClass(URLClassLoader.java:190) org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:132) org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:63) org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:172) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

  • jspコードが実行できない

    こんにちは、お世話になります。 debian12のtomcat10でjspコードが実行できずに困っております。 エラーの詳細です。 HTTPステータス 500 – Internal Server Error タイプ 例外報告 メッセージ JSPのクラスをコンパイルできません: 説明 サーバーは予期しない条件に遭遇しました。それはリクエストの実行を妨げます。 例外 org.apache.jasper.JasperException: JSPのクラスをコンパイルできません: JSPファイル: [/sample.jsp] の中の [8] 行目でエラーが発生しました Type mismatch: cannot convert from Object to String 5: <body> 6: <% 7: String userDisplayName = request.getParameter("userdisplayname"); 8: String userSession = session.getAttribute("userid"); 9: String dbQuery = "INSERT INTO users (userDisplayName) VALUES(?) WHERE userId = ?"; 10: PreparedStatement statement = connection.prepareStatement(dbQuery); 11: statement.setString(1, userDisplayName); JSPファイル: [/sample.jsp] の中の [10] 行目でエラーが発生しました PreparedStatement cannot be resolved to a type 7: String userDisplayName = request.getParameter("userdisplayname"); 8: String userSession = session.getAttribute("userid"); 9: String dbQuery = "INSERT INTO users (userDisplayName) VALUES(?) WHERE userId = ?"; 10: PreparedStatement statement = connection.prepareStatement(dbQuery); 11: statement.setString(1, userDisplayName); 12: statement.setString(2, userSession); 13: statement.executeUpdate(); JSPファイル: [/sample.jsp] の中の [10] 行目でエラーが発生しました connection cannot be resolved 7: String userDisplayName = request.getParameter("userdisplayname"); 8: String userSession = session.getAttribute("userid"); 9: String dbQuery = "INSERT INTO users (userDisplayName) VALUES(?) WHERE userId = ?"; 10: PreparedStatement statement = connection.prepareStatement(dbQuery); 11: statement.setString(1, userDisplayName); 12: statement.setString(2, userSession); 13: statement.executeUpdate(); JSPファイル: [/sample.jsp] の中の [18] 行目でエラーが発生しました Statement cannot be resolved to a type 15: 16: // Retrieval of potentially vulnerable data from the database 17: <% 18: Statement statement = connection.createStatement(); 19: ResultSet result = statement.executeQuery("SELECT * FROM users LIMIT 10"); 20: %> 21: The top 10 latest users to sign up:<br /> JSPファイル: [/sample.jsp] の中の [18] 行目でエラーが発生しました Duplicate local variable statement 15: 16: // Retrieval of potentially vulnerable data from the database 17: <% 18: Statement statement = connection.createStatement(); 19: ResultSet result = statement.executeQuery("SELECT * FROM users LIMIT 10"); 20: %> 21: The top 10 latest users to sign up:<br /> JSPファイル: [/sample.jsp] の中の [18] 行目でエラーが発生しました connection cannot be resolved 15: 16: // Retrieval of potentially vulnerable data from the database 17: <% 18: Statement statement = connection.createStatement(); 19: ResultSet result = statement.executeQuery("SELECT * FROM users LIMIT 10"); 20: %> 21: The top 10 latest users to sign up:<br /> JSPファイル: [/sample.jsp] の中の [19] 行目でエラーが発生しました ResultSet cannot be resolved to a type 16: // Retrieval of potentially vulnerable data from the database 17: <% 18: Statement statement = connection.createStatement(); 19: ResultSet result = statement.executeQuery("SELECT * FROM users LIMIT 10"); 20: %> 21: The top 10 latest users to sign up:<br /> 22: <% while(result.next()) { %> Stacktrace: org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:102) org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:214) org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:513) org.apache.jasper.compiler.Compiler.compile(Compiler.java:402) org.apache.jasper.compiler.Compiler.compile(Compiler.java:372) org.apache.jasper.compiler.Compiler.compile(Compiler.java:356) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:603) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:396) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:380) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:328) jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) 解る方いましたら、ご教示お願いします。

  • Tomcatインストール時に付属してあるexampleのJSPについて

    はじめまして。 JSPについて質問があります。 Tomcatインストール時に付属してあるデフォルトページのexampleのServletについては実行できたのですが、exampleのjspについては実行できず、ブラウザにエラーが表示されました。 エラー内容: ------------------------------ Error: 500 Location: /examples/jsp/num/numguess.jsp Internal Servlet Error: javax.servlet.ServletException: sun/tools/javac/Main (以下略) ------------------------------ ちなみに自分で作成したJSPファイルも実行できず、exampleのjspと全く同じ内容のエラー内容がブラウザに表示されました。 ちなみに開発環境は RedHatLinux7.2 Java2 SDK 1.3.0 Jakarata Tomcat 3.2.4 で、 環境変数は JAVA_HOME=/usr/java/jdk1.3.0_02 TOMCAT_HOME=/usr/src/jakarta/tomcat PATH=$PATH:$JAVA_HOME/bin CLASSPATH=.:/usr/java/jdk1.3.0_02/lib/tools.jar:$TOMCAT_HOME/lib/servlet.jar です。 クラスパスには、JDKのコンパイラ、サーブレットのコンパイラを設定しているのですが、設定に何か足りないのでしょうか? 大変困っています。 もし、何か分かる事がありましたら、ご教授御願い致します。

    • ベストアンサー
    • Java
  • jsp:useBean の使い方???

    こんにちは。よろしくお願いします。 【環境】 jdk1.5.0_15 tomcat5.0 【参考書】 「はじめてのJSP&サーブレットプログラミング」(秀和システム) 上記参考書にあるサンプルソースをそのまま実行しているつもりが、エラーになってしまい困っています。 【JSPエラーの内容 ----------↓ここから↓----------】 org.apache.jasper.JasperException: /jsp/mailSend.jsp(3,0) org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:39) org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409) org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:150) org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1227) org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1116) org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163) org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2213) org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2219) org.apache.jasper.compiler.Node$Root.accept(Node.java:456) org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163) org.apache.jasper.compiler.Generator.generate(Generator.java:3272) org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:244) org.apache.jasper.compiler.Compiler.compile(Compiler.java:470) org.apache.jasper.compiler.Compiler.compile(Compiler.java:451) org.apache.jasper.compiler.Compiler.compile(Compiler.java:439) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) 【JSPエラーの内容 ----------↑ここまで↑----------】 自分では、 エラーの内容 org.apache.jasper.JasperException: /jsp/mailSend.jsp(3,0) からmailSend.jspの3行目 <jsp:useBean id = "mail" scope = "page" class = "jspbean.MailSendBean"> が問題なのかなと思っていますが、 mailSend.jspの記述が問題なのかMailSendBean.javaの記述が問題なのかどちらがエラーの原因なのかも分かりません。 MailSendBean.classはコンパイルも通って WEB-INF/classes/jspbean/MailSendBean.classに存在しています。 workフォルダの下の階層にはmailSend.jspのjavaファイルもclassファイルも出来ていません。 出来るだけ多くの情報をと思い長くなりましたが、 何かお気づきの方アドバイスよろしくお願い致します。 また、足りない情報などありましたらご指摘よろしくお願いします。