« JDBCデータソースを使おうとしてハマる | トップページ | Apache1.3とTomcat5を連携させる »

2004/10/11

カスタム・タグを作ろうとしてハマる

Webアプリケーションの作成項目も、のこりわずかになってきました。

今回は、カスタム・タグを作ってみるのが目的です。
サーブレット、JSPと勉強してくると、JSPではできるだけスクリプトレットを追い出すのが良いみたいなんだけど、それって返って処理を複雑にしている気がしてならない今日このごろです。(笑)
タグのみで処理を行えば、結局は同じような気がするんだけど・・。
Javaのコードが読めるなら、カスタムタグは返って手間隙掛かるような。

とまあ、感想は置いておいて、今回はタグ・ハンドラをコンパイルできなくて悩みました。
コンパイル時に、import文でエラーが出るのです。
javax.servletまでは認識しているのですが、javax.servlet.jsp以降が見つからない様子。
これって、あきらかにCLASSPATHが通っていないのが原因なんだろうけど、本にはどうしろとか特に書いてありませんでした。
本では、CLASSPATHは$CATALINA_HOME/common/lib/servlet.jarに通すことになっていましたが、今は$CATALINA_HOME/common/lib/servlet-api.jarに通っています。(いつ通したんだろ?コンパイルできなくていろいろ試したんだっけ??)
なんかPATHが微妙に違うから怪しいと思ってcommonディレクトリを見てみると、いました!それらしいのが!
jsp-api.jar ってなファイルを見つけたので、そっちにもCLASSPATHを通したところ、うまくいきました。

が、自己流は怖いのでネットで検索したところ、やはりCLASSPATHを2つ通す必要があったようです。
本に載っていたのはTOMCATのWindows版5.0.18、使っているのはLINUX版の5.0.28です。
昔のJavaの本を見たところ、TOMCAT3.3のころは$CATALINA_HOME/lib/common/servlet.jarに通すように書いてあった。これも微妙にPATHが違うなあ。
う~ん、ヴァージョンが変わるごとにこういう所がコロコロ変わるので、ついていけないです・・・。

|

« JDBCデータソースを使おうとしてハマる | トップページ | Apache1.3とTomcat5を連携させる »

JAVA」カテゴリの記事

コメント

Trackbackありがとうございました。
ClassPathの設定については、私もまだまだわかっていないです。駄目だったら無理やり通すというやり方なので...。
カスタムタグはStrutsが出て間もない頃、IF-THEN-ELSEタグがないので、作った記憶があります。(当時はIF-THENしかなかったので。)
でも、誰もが使う機能って、誰かがどこかで作ってくれるので自分で苦労して作る必要はないんですよね。
#JSPにスクリプトレットを書くのは絶対に反対です(笑)。
ちゃんと語れる理由なんてないんですけれど、MVCに対するこだわりかも??

投稿: megu | 2004/10/12 00:50

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/54336/1654938

この記事へのトラックバック一覧です: カスタム・タグを作ろうとしてハマる:

« JDBCデータソースを使おうとしてハマる | トップページ | Apache1.3とTomcat5を連携させる »