- PR -

JSPでBeanの中身を使用するには…

投稿者投稿内容
ペコ
会議室デビュー日: 2003/08/14
投稿数: 7
投稿日時: 2003-08-14 17:33
たーぞう様

引用:

たーぞうさんの書き込み (2003-08-14 17:23) より:
まぁ確かにjsp:タグなんて使わなくてもスクリプトレットで記述すれば動くわけですが・・・
でもやっぱそれじゃJSPの機能を駆使しているとは言い難いような^^;




すみません、一つ質問よろしいでしょうか?
まだ<JSP:>タグというのに慣れていないが故の、愚問と思ってご勘弁ください。

JSPにてBeanを呼ぶ際にたーぞう様のおっしゃっているように

<jsp:useBean id="MasterBean" class="<MasterBeanのクラス名>" scope="session" />

と書いた方が良い利点…というようなものは何になるのでしょうか?
上記のタグを入れなくとも、一応動くことには動いたのですが…;;
たーぞう
ぬし
会議室デビュー日: 2003/08/08
投稿数: 317
お住まい・勤務地: お花畑
投稿日時: 2003-08-14 17:51
引用:

ペコさんの書き込み (2003-08-14 17:33) より:

<jsp:useBean id="MasterBean" class="<MasterBeanのクラス名>" scope="session" />

と書いた方が良い利点…というようなものは何になるのでしょうか?
上記のタグを入れなくとも、一応動くことには動いたのですが…;;




実際の開発においては、JSPはプログラマではなくWebデザイナーに作成してもらう場合があります。プログラマーが美的センスに優れているとは限りませんので^^; その場合、処理をスクリプトレットで記述するとなると、今度はWebデザイナーさんがJavaに精通しているとは限りません。そこで、できる限りスクリプトレットではなくてXML形式で記述できるタグを用いてJSPを作成するようにすれば、Webデザイナーさんにとって理解しやすいのではないかな〜という考え方に基づいています。

まぁ「とにかく動けばよい」という方針で開発を行うのであれば、好みの方式で作成されればいいのではないかと思います。
ペコ
会議室デビュー日: 2003/08/14
投稿数: 7
投稿日時: 2003-08-14 19:54
引用:

たーぞうさんの書き込み (2003-08-14 17:51) より:

実際の開発においては、JSPはプログラマではなくWebデザイナーに作成してもらう場合があります。プログラマーが美的センスに優れているとは限りませんので^^; その場合、処理をスクリプトレットで記述するとなると、今度はWebデザイナーさんがJavaに精通しているとは限りません。そこで、できる限りスクリプトレットではなくてXML形式で記述できるタグを用いてJSPを作成するようにすれば、Webデザイナーさんにとって理解しやすいのではないかな〜という考え方に基づいています。




たーぞう様

あぁ、はい!
↑の話は少し聞いたことがあります。
そうですよね。Webデザイナーさんたちのことをスッカリ忘れておりました。

今がただ己のローカル上でやっている、という気の緩みもあったかと、思います。
大変参考&勉強になりました。
今後は実際のプログラミングのことも、考えて課題をこなすよう、いたします。

ありがとうございます。
山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2003-08-14 21:53
解決しているようですが、当初あったコンパイルエラーはJDK1.4.0 からのコンパイラの仕様変更によるものです。JDK1.3.1ではコンパイルできたかもしれません。

SunMicrosystems社の bugParade には Bug Id 4361575 として同様の現象が報告されています。
・[Bug Id 4361575]
-[Synopsis: Correct scoping and diagnostics for import declarations]
http://developer.java.sun.com/developer/bugParade/bugs/4361575.html

無名パッケージクラスのインポート文は JDK1.4.0 以降では不正とみなされるようで
すので、MasterBean クラスをクラスを適切なパッケージに移せばコンパイル出来たのではないでしょうか。
もちろん、import しなくてもJSPディレクティブで直に参照するのでも良いかもしれませんが。パッケージに収める癖を付けておくことをお勧めします。
ペコ
会議室デビュー日: 2003/08/14
投稿数: 7
投稿日時: 2003-08-15 09:19
インギ様、情報提供ありがとうございます。

引用:

インギさんの書き込み (2003-08-14 21:53) より:
解決しているようですが、当初あったコンパイルエラーはJDK1.4.0 からのコンパイラの仕様変更によるものです。JDK1.3.1ではコンパイルできたかもしれません。

SunMicrosystems社の bugParade には Bug Id 4361575 として同様の現象が報告されています。
・[Bug Id 4361575]
-[Synopsis: Correct scoping and diagnostics for import declarations]
http://developer.java.sun.com/developer/bugParade/bugs/4361575.html

無名パッケージクラスのインポート文は JDK1.4.0 以降では不正とみなされるようで
すので、MasterBean クラスをクラスを適切なパッケージに移せばコンパイル出来たのではないでしょうか。
もちろん、import しなくてもJSPディレクティブで直に参照するのでも良いかもしれませんが。パッケージに収める癖を付けておくことをお勧めします。



早速、アカウント等の登録をして上記のページを覗いてみました。
アカウントをとる際に、もしや・・・とは思っていたのですが
やっぱり英語なのですね…;;

折角教えていただいたので、後学のためにもなんとか解読しようと試みております。
何はともあれ、ありがとうございました。

そして、パッケージなのですがBeanを最初はデフォルトパッケージに置いたままの
状況でしきりに、<% import しようとしていたのですが、これでは上手くいかなかったので
インギ様もおっしゃるとおり現状では一つ新しくパッケージを作り、
その配下にBeanを置いてそのパッケージを指定するようにしたら上手く動いています。

[ メッセージ編集済み 編集者: ペコ 編集日時 2003-08-15 09:28 ]

スキルアップ/キャリアアップ(JOB@IT)