JSP側でBeasを使用するとエラーが!?

このQ&Aのポイント
  • j2sdk1.4.0とtomcat4.1.18を使用しています。JSP側のファイルから自作のクラスをBeansで呼び出して使用したいのですが、エラーが発生してしまいます。
  • 以前はtomcat3.3.1を使用していたときはエラーが発生せず、表示されていましたが、バージョンアップ後はエラーが発生するようになりました。
  • MyItem.javaファイルのコンパイルは問題なくできるため、環境設定には問題がないと思われます。tomcat4.1.18ではBeansの使用に関する宣言が必要なのでしょうか?
回答を見る
  • ベストアンサー

JSP側でBeasを使用するとエラーが!?

j2sdk1.4.0とtomcat4.1.18を使用しています。 JSP側のファイルMyJSPから自分で作成したクラスMyItemクラスをBeansで呼び出して使用したいのですがtomcatを起動し、Internet Explorerからhttp://localhost:8080/renshu/MyJSPを実行すると、 HTTP Status 500 - type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception org.apache.jasper.JasperException: JSPのクラスをコンパイルできません・・・ というようなエラーがでてしまいます。 MyJSPのファイル側では <%@ page import="MyItem, java.util.*" contentType="text/html; charset=Shift_JIS" %> <jsp:useBean id="item" class="MyItem" />  ・・・ のように宣言しています。 MyJSPのファイル場所は c:\Program Files・・・webapps\renshu\MyJSP.jsp MyItem.javaのファイル場所は c:\Program Files・・・webapps\renshu\web-inf\classes\MyItem.java の場所にそれぞれ置いてあります。 以前tomcat3.3.1を使用していた時は、エラーなく表示されていたのですが、tomcat4.1.18にバージョンアップしたら、エラーが発生してしまいました。ちなみに、tomcat4.1.18にバージョンアップした後でMyItem.javaファイルのコンパイルは通常にできました。なので、環境設定には問題ないと思われます。tomcat4.1.8は新たに追記でBeansを使用する時に何か宣言しなければならないのでしょうか?

  • Java
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
  • ssj
  • ベストアンサー率73% (11/15)
回答No.1

他でも同じような質問が行われているようですが、、、 MyItemクラスがデフォルトパッケージになっているようですが、 これが原因ではありませんか?

参考URL:
http://www.okweb.ne.jp/kotaeru.php3?q=514692
u-mesh12
質問者

お礼

任意のパッケージを作成し、java,JSPファイルをそれぞれpackegeから参照するようにしたら、上手く表示できるようになりました。ありがとうございます。

関連するQ&A

  • Tomcat内のJSPファイルを削除したい

    事情がありにTomcat内のフォルダを 見せなければならなくなりました。 他人にTomcat内のファルダにあるサーブレット(+Beans等のクラスファイル)と JSPのソースを見られない様にしたいです。 またその上で実行も可能にしたいのですがどうすればいいでしょうか? サーブレット等は Tomcat 7.0/webapps/MyWebSite/WEB-INF/classes以下の クラスファイル(.class)だけを残してJavaファイル(.java)を削除 するか、Eclipseでソースをエクスポートさせない様にすると Javaのソースは見れなくなると思いますが、 JSPの場合だと Tomcat 7.0/webapps/MyWebSite/以下の JSPファイル(.jsp)を削除して、 Tomcat 7.0/work/ 以下にあるJSPをサーブレットに変換後 コンパイルされたファイル(.class)を残すだけではダメな様です。 他に方法はあるでしょうか? サーブレットのソースを見られないだけでも良しと考えるべきでしょうか?

    • ベストアンサー
    • Java
  • JSPファイルを削除したいです。

    事情がありにTomcat内のフォルダを 見せなければならなくなりました。 他人にTomcat内のファルダにあるサーブレット(+Beans等のクラスファイル)と JSPのソースを見られない様にしたいです。 またその上で実行も可能にしたいのですがどうすればいいでしょうか? サーブレット等は Tomcat 7.0/webapps/MyWebSite/WEB-INF/classes以下の クラスファイル(.class)だけを残してJavaファイル(.java)を削除 するか、Eclipseでソースをエクスポートさせない様にすると Javaのソースは見れなくなると思いますが、 JSPの場合だと Tomcat 7.0/webapps/MyWebSite/以下の JSPファイル(.jsp)を削除して、 Tomcat 7.0/work/ 以下にあるJSPをサーブレットに変換後 コンパイルされたファイル(.class)を残すだけではダメな様です。 他に方法はあるでしょうか? サーブレットのソースを見られないだけでも良しと考えるべきでしょうか? http://ksrd.yahoo.co.jp/PAGE=DT_ACTIVE/OUTLINK=1/QID=12100680882/AID=236975321/SIG=12dep0io1/EXP=1359004059/*-http%3A//tomcat.apache.org/tomcat-7.0-doc/jasper-howto.html#Web_Application_Compilation 上記URLに何かそれらしき事が書いてあるのですがよく分かりません。 どうすればいいでしょうか? アクセスを制限する以外の方法でお願いします。

    • ベストアンサー
    • Java
  • JSPファイルがコンパイルできない!

    雑誌に付いていたtomcat3.2.3用のServlet/JSPを tomcat4.1.10で動かそうとしたら、JSPファイルが コンパイルできないというエラーが出ました。 エラーの内容は、 ------------------------ org.apache.jasper.JasperException: JSPのクラスをコンパイルできません JSPファイル: /*****.jsp の中の行: 1でエラーが発生しました 生成されたサーブレットのエラーです: [javac] Compiling 1 source file C:\Program Files\Apache Group\Tomcat 4.1\work\Standalone\localhost\*****\*****_jsp.java:43: シンボルを解決できません。 シンボル: クラス ○○ 場所 : org.apache.jsp.*****_jsp の クラス ***** ***** = (*****)request.getAttribute("*****"); ^ -------------------------- といった感じです。 tomcat3.2.3ではちゃんと動いたのですが、 4.1.10では他に何かしなければいけないのでしょうか。 よろしくお願いします。

  • jspからjarを参照したいのですが

    /usr/local/tomcat/webapps/jsp-examples/の下にあるjspから jarを参照したいのですが、上手くいきません。 /usr/local/tomcat/webapps/jsp-examples/WEB-INF/classes/testPkgの 下にそのままクラスを置けば参照できます。 クラスには次のように宣言してありますし package jalanClass; jspの先頭でパッケージをインポートしてあります。 /usr/local/tomcat/webapps/jsp-examples/WEB-INF/classes上で jar cvf testPkg.jar testPkg jar cvf testPkg.jar testPkg/* などとして作ったjarを /usr/local/tomcat/webapps/jsp-examples/WEB-INF/classesに置いたのですが、NoClassDefFound エラーとなってしまいます。 CLASSPATHに/usr/local/tomcat/webapps/jsp-examples/WEB-NF/classes を通してみましたが駄目でした。 jarは今まで使った事がないので、根本的な事が分かっていないのかも知れませんが、教えてください。 宜しくお願いします。

    • ベストアンサー
    • Java
  • サーブレットとJSPのディレクトリ指定について

    現在WebサーバーとしてTomcatを使用しているのですが、題記の通り質問があります。 JSPのディレクトリ構成は C:\Program Files\Apache Tomcat 4.0\webapps\(JSPを保存するディレクトリ) というようにwebappsのしたにディレクトリを作成しました。 JSPからサーブレットを呼ぶために、 現在は C:\Program Files\Apache Tomcat 4.0\webapps\(JSPを保存するディレクトリ) \WEB-INF\classesディレクトリに格納しています。 できれば、sevletディレクトリを作りわかりやすい構成にしたいのですが、 そのようにやることはできるのでしょうか?

  • 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
  • クラスにアクセスできません。

    いつもお世話になっております。 ・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
  • tomcat、apacheにてJSPが表示されない

    http://localhost:8080/ と入力したときにtomcatの画面がでるので tomcatの設定はできていると思っているのですが eclipseでJSPを作成し、 \Program Files\apache-tomcat-6.0.13\webapps\bihinkanri\WEB-INF にJSPファイルを置き、 http://localhost:8080/bihinkanri/Itiran.jsp とURLに入力したのですが HTTPステータス404が出てしまいました。 なぜでしょうか・・・。 初心者で原因がわかりません・・。 お願いします。

  • JSPのJava部分が読まれない問題について・・・

    いつもお世話になっております。 今回JSPについて質問させていただきます。 JSPのJava部分<% %>でくくられる部分が読み込まれなくて困っています。 Tomcatについて詳しくないので、それが問題だとは思いますが。。。 前提をお話しますと、Windowsサーバで動作していたjspファイル群をLinuxサーバへ移行しました。 なお、Linuxサーバで以下の確認は取れています。 Apacheの動作確認(htmlファイルなどを置いてWebページ確認) Javaの動作確認(javaファイルを作りコンパイル、classファイルの実行確認) Tomcatの動作確認(jsp-examples等のWebページ確認) たぶん問題かなと思うのは、ファイルの位置、および設定ファイルだと思います。 が、何がどう間違っているのやら。 Windows時のディレクトリ構造は以下の通りです。 webapps + website ++ css ++ img ++META-INF ++ view +++ sample.jsp ++ WEB-INF ++++ web.xml +++ lib +++++ mysql-connector-java-x.x.x-bin.jar +++ classes ++++ sample_servlet.class ++++ beans +++++ database_access.class (スペースが認識されなかったので、+がディレクトリの深さだと思ってください。) このような階層構造です。 webappsの階層はconfなどがある階層です。 何が問題かご教授お願いします。 ちなみに、 移行前サーバWindows XP 移行後サーバ Cent OS Tomcatバージョン:同様に5.0 です。 よろしくお願いします。

  • JSPのJava部分が読まれない問題について・・・

    いつもお世話になっております。 今回JSPについて質問させていただきます。 JSPのJava部分<% %>でくくられる部分が読み込まれなくて困っています。 Tomcatについて詳しくないので、それが問題だとは思いますが。。。 前提をお話しますと、Windowsサーバで動作していたjspファイル群をLinuxサーバへ移行しました。 なお、Linuxサーバで以下の確認は取れています。 Apacheの動作確認(htmlファイルなどを置いてWebページ確認) Javaの動作確認(javaファイルを作りコンパイル、classファイルの実行確認) Tomcatの動作確認(jsp-examples等のWebページ確認) たぶん問題かなと思うのは、ファイルの位置、および設定ファイルだと思います。 が、何がどう間違っているのやら。 Windows時のディレクトリ構造は以下の通りです。 webapps + website ++ css ++ img ++META-INF ++ view +++ sample.jsp ++ WEB-INF ++++ web.xml +++ lib +++++ mysql-connector-java-x.x.x-bin.jar +++ classes ++++ sample_servlet.class ++++ beans +++++ database_access.class (スペースが認識されなかったので、+がディレクトリの深さだと思ってください。) このような階層構造です。 webappsの階層はconfなどがある階層です。 何が問題かご教授お願いします。 ちなみに、 移行前サーバWindows XP 移行後サーバ Cent OS Tomcatバージョン:同様に5.0 です。 よろしくお願いします。

専門家に質問してみよう