- - PR -
JSPから普通のクラスを使う
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2004-11-17 15:13
ServletやEJBを使わずに、普通のJAVAクラスをJSPから使いたいと思っています。サンプルを下に出します。
JSP <%@ page import="パッケージ名.クラス名(例:ClassA).*" %> <% ClassA a; %> この時点ではエラーが出ません。しかし、 ClassA a = new ClassA(); と変更するとEclipseの方からエラーメッセージが出ます。 メッセージ:"cannot be resolved or not a type" ClassA.javaは 場所:WEB-INF/src/パッケージ名/ClassA.java に収容してあります。プロジェクトはTomcatプラグインを使ってます。Eclipseの設定の問題もしくはXMLの編集の問題なんだろうと思いますが、解決法が分からず往生しています。 宜しくお願いします。 |
|
投稿日時: 2004-11-17 15:17
<%@ page import="パッケージ名.クラス名(例:ClassA)" %>でしょう。
|
|
投稿日時: 2004-11-17 16:30
返信ありがとうございます。
一番最初の書き込みに問題がありましたので訂正しておきます。 例1: <%@ page import="パッケージ名.クラス名(例:ClassA)" %> <% ClassA a; %> 例2: <%@ page import="パッケージ名.*" %> <% ClassA a; %> 上記二つの例ではエラーが出ません。しかし: ClassA a= new ClassA(); と変更するとエラーが出ます。ということでまだ解決に至っていません。ご指摘お願い致します。 |
|
投稿日時: 2004-11-17 16:36
ClassAにはデフォルトコンストラクタはありますか? また、publicになっていますか?
|
|
投稿日時: 2004-11-17 17:00
lomboz Pluginを使っていますか?
私もEclipse3.0を使う時同じ現象が起こったことがあります。 でも無視しました。 問題は本当のソースの問題じゃなくてEclipseの環境の問題です。 WEBに配置してそのJSPファイルをブラウザで読んでみてください。 問題ないはずです。 もし気になりましたらEclipseのbinフォルダの中身をクリアしてすべてを 再コンパイルしてください。 |
|
投稿日時: 2004-11-17 17:39
返信ありがとうございます。
UKさんへ: publicの設定でデフォルトコンストラクタを付けてあります。 影フリーさんへ: Tomcatプラグインでプロジェクト製作、LombozでJSP製作をしています。ClassAは普通のファイルで、パッケージに入れてあります。無視してJSPを閲覧すれば: HTTPステータス 500 のエラーがTomcatから返ってきます。TOMCAT_HOME下のbinフォルダーのファイルをTomcat運転中に動かそうとするとWin側から怒られ、Tomcatを止めてbinを空にすると再起動できませんでした。 なんだか手も足もでません。影フリーの以前の対処法が自分の環境では駄目なのかもしれません。ご指示していただければ嬉しく思います。 |
|
投稿日時: 2004-11-17 18:05
1.クリアするのはTomcatのbinじゃなくEclipseのbinです。
Eclipseの内部でコンパイルされたクラスが入ってます。 (最初プロジェクト作成時決める場所) 2.Eclipseコディング中に表示さるメッセージはTomcatとは関係有りません。 あくまで環境の問題です。 3.もし最初質問の時、タイピングのミスですか? >ClassA.javaは >場所:WEB-INF/src/パッケージ名/ClassA.java WEB-INF/classes/パッケージ名/ClassA.classでしょう。 |
|
投稿日時: 2004-11-17 18:40
返信ありがとうございます。
今日の自分には少々時間が足りませんので、 <jsp:useBean id="myBean" class="パッケージ名.ClassA" /> として、Bean扱いとして本日の代用案としました・・・(涙)。 こうすると普通のクラス扱いよりもリソースを取るんでしょうか? |