- PR -

TomcatでJSPのコンパイルを止めるには?

投稿者投稿内容
貧乏人&&恐妻家
会議室デビュー日: 2004/06/18
投稿数: 6
投稿日時: 2004-06-18 15:35
いつも大変参考にさせていただいております。

さて、(多分初歩的な)ご質問だと思うのですが、
Tomcat:Tomcat3.3.1a上にて
JSPをjspcでコンパイルしclassファイルまで作成したのですが、

@アプリケーションが明示的にそのクラスファイルをpathを指定したい
(現在はTomcat3.3.1a\work\DEFAULT\applicationName)
ATomcat上で明示的にJSPのコンパイルを止めたい

上記二点を試みているのですがうまくいきません。
色々と調査しているのですがいきづまっている状況です。
どなたかご教授いただけないでしょうか?よろしくお願い致します。
Edosson
ぬし
会議室デビュー日: 2004/04/30
投稿数: 675
投稿日時: 2004-06-18 16:48
JSPに直接、Javaのコードをばりばり書いていて、
それを、他のJSPやJavaクラスから利用したいということでしょうか?
jspfile.jsp上のメソッドなら、jspfile.targetMethod()てな
感じでは無理ですかね?(いや、試しても調べてもいませんが)

もし上記のとおりと仮定して話を進めますが・・・。
まず不可能ではないかと。話せば長くなりますが
「Tomcatというか、JSP&Servletとはそういうもの」ですし。
Tomcatの改造ができるというのなら話は別ですが。

質問の答えにはなっていませんが。
コードの再利用がしたいのなら、JSPに埋め込まれているコードを抽出して
普通のJavaプログラムとして再構成し、
それぞれのJSPは、それを利用するようにするべきかと。
貧乏人&&恐妻家
会議室デビュー日: 2004/06/18
投稿数: 6
投稿日時: 2004-06-18 17:08
Edossonさん、コメントありがとう御座います。
>JSPに直接、Javaのコードをばりばり書いていて、
>それを、他のJSPやJavaクラスから利用したいということでしょうか?

質問@の書き方に言葉足らずがありました、大変すみません。少々質問の意図が異なります。
目的として
・Tomcatで動いているアプリケーションの初期表示を少しでも早くしたい
なので
→JSPのプリコンパイルをしておいてあるディレクトリにあるclassファイルを参照させたい。
→JSPのコンパイルを明示的にやめさせたい
というのが意図なのですが。

■Web上や@IT 会議室のログも見たのですが具体的な設定に関しては乗ってなかったもので、、、
WSADやWebLogicの設定方法を参照すると
多分web.xmlやserver.xmlかなんかどっかに初期化パラメータを追加するか、
なんかするんではないかとはおもうのですが、、、というわけで困っている次第です。
貧乏人&&恐妻家
会議室デビュー日: 2004/06/18
投稿数: 6
投稿日時: 2004-06-18 17:13
たびたびすみません。
>・Tomcatで動いているアプリケーションの初期表示を少しでも早くしたい
×初期表示→○画面表示の誤りでした。

よろしくお願い致します。
MINE
会議室デビュー日: 2003/07/02
投稿数: 17
投稿日時: 2004-06-18 17:17
JSPってコンパイルされるのは最初の一回で
後はキャッシュされるのではなかったでしたっけ?
Edosson
ぬし
会議室デビュー日: 2004/04/30
投稿数: 675
投稿日時: 2004-06-18 17:35
誤読があったようで、失礼致しました。

サーブレット・エンジンの設定については、OHPに下記のものがありました。
「設定」のdevelopmentの項にあるものはいかがでしょ。
(私はいじったこと無いですが)
AntによるWebアプリのコンパイルも詳しく載ってますし。

http://www.jajakarta.org/tomcat/tomcat5.0/mix/docs/tomcat-docs/jasper-howto.html#%E8%A8%AD%E5%AE%9A

[ メッセージ編集済み 編集者: Edosson 編集日時 2004-06-18 17:37 ]
貧乏人&&恐妻家
会議室デビュー日: 2004/06/18
投稿数: 6
投稿日時: 2004-06-18 17:43
MINEさん、お言葉ありがとうござます。
>JSPってコンパイルされるのは最初の一回で
>後はキャッシュされるのではなかったでしたっけ?

最初上記も考えたのですが、
1.「最初の一回」と言われているのは多分Tomcatを起動した際のことではなく、
その画面を開いた際ではないか。と考えた場合、
今回のアプリは画面数が膨大なのですべての画面を開くのはしんどいのと抜けなどが発生しやすいのでやめたい。
2.<ページURL>?jsp_precompileに関して
JSPへのpathに一個ずつ指定するやり方は避けたい。
3.明示的にやったほうが精神的に安心
の理由でご質問させていただいております。

たびたびですみません、よろしくお願いします。
Cluster
ぬし
会議室デビュー日: 2003/03/06
投稿数: 289
お住まい・勤務地: 大阪
投稿日時: 2004-06-18 17:44
引用:

貧乏人&&恐妻家さんの書き込み (2004-06-18 17:08) より:

目的として
・Tomcatで動いているアプリケーションの初期表示を少しでも早くしたい
なので
→JSPのプリコンパイルをしておいてあるディレクトリにあるclassファイルを参照させたい。
→JSPのコンパイルを明示的にやめさせたい
というのが意図なのですが。




ならば、これが答えではないかと。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=1091&forum=12&6

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