■■ Servlet/JSP(EJB含む) 質問スレ Part3 ■■
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
04/06/16 05:30ID:XUmu9/tY前スレ
■■ Servlet/JSP(EJB含む) 質問スレ Part2 ■■
http://pc5.2ch.net/test/read.cgi/php/1052879533/l50
過去スレ
■■ Servlet/JSP(EJB含む) 質問スレ ■■
http://pc2.2ch.net/test/read.cgi/php/1023501812/l50
関連スレ
【初心者】Java質問・相談スレ47【大歓迎】
http://pc5.2ch.net/test/read.cgi/tech/1086716004/l50
JSP/Servletで構築されたサイト
http://pc5.2ch.net/test/read.cgi/php/1063121571/l50
◆JSP◆
http://pc5.2ch.net/test/read.cgi/php/984840356/l50
関連は>>2-10
0313nobodyさん
04/11/21 13:30:58ID:???0315nobodyさん
04/11/26 00:43:01ID:1PPB6FSrEclipseでtomcatプロジェクトを下記に作成して表示用にクラスを作ったのですが
C:\eclipse\workspace\Servlet\WEB-INF\classes\servlet
実際に画面に出すとき
http://localhost:8080/Servlet/WEB-INF/classes/servlet
と思いきやパスが見つかりませんとでます
http://localhost:8080/Servlet/
までは画面が出せるのですが、それ以降のパスがよくわかりません。
サイトとか見ても、途中のパス名が変わっていたりしているので
どこかでパス名を設定する場所があると思うのですが
どこでするのでしょうか?教えて下さい
0316nobodyさん
04/11/26 03:39:12ID:???WEB-INF/web.xmlの中でクラスとURLのマッピングを指定します。
あとは
ttp://localhost:8080/manager/html
ttp://www.atmarkit.co.jp/channel/jspservlet/jspservlet.html
ttp://www.google.co.jp/
とかを参考にがんばってください。
0317nobodyさん
04/11/26 12:18:03ID:9IIMg8+8何か問題があるのでしょうか?
0319
04/12/02 13:10:31ID:/bfokzpIげっ、それってどういう場合でしょうか??
0320nobodyさん
04/12/02 14:08:03ID:???ブラウザから直接ソースを閲覧されるから。
拡張子jspならコンテナがJSPとして処理するが、.inc等はそのまま内容をレスポンスしてしまう。
0321nobodyさん
04/12/03 23:30:59ID:J1wDZcQzttp://msugai.fc2web.com/java/servlet/BeansServlet.html
など参考にして
web.xml,server.xmlなどでマッピングさせて
WEB-INF\classes直下にクラスファイルを置きましたら表示させる事が出来ます
しかしパッケージ化(jp.co〜)などその下にさらにフォルダを作ってしまうと
表示されなくなります。
この場合どうすればいいのでしょうか?
クラスパスなどについても一回一回設定するしかないのでしょうか?
0322nobodyさん
04/12/04 02:05:58ID:???<servlet>
<servlet-name>myservlet</servlet-name>
<servlet-class>jp.co.〜.MyServlet</servlet-class>
</servlet>
のようにservlet-classの部分でパッケージを完全修飾すればよいだけかと。
0323nobodyさん
04/12/04 22:34:45ID:???webコンテナ外からlookupできますか?
weblogicだとコンテキストにパラメータを設定すればイケると思ったけど。
0324nobodyさん
04/12/05 02:02:46ID:???それぞれで、複数のフレームに区切られた画面を表示していると、
フレームのセッションが他のIEになってしまうことがあります。
なぜでしょう。
0325324
04/12/05 02:06:05ID:???です。
0326nobodyさん
04/12/05 02:24:29ID:???複数のIEを起動するとき、どうやって起動していますか?
CTL+N または、[新規作成]->[ウィンドウ]を使っている場合、
[スタート]->[インターネット]等、IEのアイコンから直接起動する
方法でもう一度同じことをやってみてください。
現象は同じですか?
0328nobodyさん
04/12/11 01:04:14ID:???tableをjspから作るにはどうしたらいいんでしょうか?
qにはCREATE TABLE文が入っているのですが、以下のやり方だとダメでした。
ResultSet rss=sttSql.executeQuery(q);
(Can not issue data manipulation statements with executeQuery()というエラー)
tomcat 5.0.28,mysql-connector-java-3.0.16
0329nobodyさん
04/12/11 02:06:59ID:???mysqlは知らんけど多分。
executeQuery ではなく、executeUpdate。
で ResultSet じゃなく int で結果を受け取る( 0 が戻るだけだけど)。
0330nobodyさん
04/12/11 03:30:49ID:???レスどうもです。
intでexecuteUpdateしてみたのですが、エラーが出てしまい、
適当にexecuteだけにしたら別なエラーでboolenで受ければよいと出てきたので、
結局boolenでexecuteでうまくいきました。
ありがとうごさいました。
0331nobodyさん
04/12/14 19:01:50ID:???セッションIDをURLに付加したりCookieを使用せずに
POSTデータとして送りたいのですが・・。
コンテナが自動でやってるぽいので無理ぽ?(´・ω・`)
0332nobodyさん
04/12/14 20:57:18ID:???0333nobodyさん
04/12/15 22:45:59ID:cHQ+sEWtいろいろやっているのですが、以下のようなエラーがでます。
PostgreSQLがわをコード変換つきでmakeしなおせばよいのでしょうが、
それができないため、JDBCがわでなんとかする方法がないでしょうか。
500 Servlet Exception
Something unusual has occured to cause the driver to fail. Please report
this exception: Exception: java.sql.SQLException: ERROR: Conversion between
UNICODE and EUC_JP is not supported
Stack Trace:
java.sql.SQLException: ERROR: Conversion between UNICODE and EUC_JP is
not supported
0334nobodyさん
04/12/18 01:48:32ID:???public class Client {
public static void main(String[] args) {
TreeSet treeSet = new TreeSet();
treeSet.add("1");
treeSet.add("2");
treeSet.add("3");
treeSet.add("4");
Iterator iterator = treeSet.iterator();
while(iterator.hasNext()) {
System.out.println(iterator.next());
}
}
}
このサンプルでwhileが終わった後、
特定の要素を指定して取り出したいのですが、どうやったらいいんでしょうか?
できるなら、ある特定の条件に一致する要素の要素番号?を
while中で取り出しておいて、後ほど要素を指定して取り出したいと思っています。
whileの処理が終わらないと評価できない処理なので苦戦してます。。。
0335nobodyさん
04/12/18 05:19:31ID:???阿呆
0336nobodyさん
04/12/19 01:05:06ID:???MySQLはデフォルトではトランザクション機能は有効になっていないため、
複数同時アクセスがあった場合、おかしくなります。
A B
読(a) /
/ 読(a)
書(a+1) /
/ 書(a+2)
トランザクション機能を使わずに、整合性を保つにはどうすればいいのでしょうか?
もしかして、スレ違いでしょうか・・・
実システムを作るわけではなく、単なる宿題です。
0337nobodyさん
04/12/19 01:42:21ID:???有効にしろよ。
0338336
04/12/19 14:49:52ID:???ロックで排他処理をさせることを思いついたんですが、
Servlet/JSPでのロックの定石ってあるんですか?
perlとかだとflockという関数がありますが。
0339nobodyさん
04/12/19 17:49:35ID:???それは、より深く理解するために、トランザクション処理を一度手前で考えてみろ。
という意図なのか、
それとも、担当講師が、昔トランザクションを知らなかった事を
馬鹿にされた事があって、それを根に持って使うなといっているのか。
前者なら、Servlet/JSP ということではなくて、
ロック処理、競合解決処理一般という探し方をしたほうがええんでは。
(いっそのこと、PostgerSQLのソースとかをハックしたりしたほうが、
より実践的な知識が身につきそうな気がする)
あるいは、トランザクション処理の重要性を教えるために、
無いとどれだけ大変かを体験させようとしてるんだろうか。
0341nobodyさん
04/12/30 08:42:10ID:???<%@ page contentType="text/html; charset=shift_jis"%>
と出力する文字コードを指定しますがそれせずに後から
response.setContentType("text/html; charset=" + enc);
のように書いて動的に出力する文字コードを変える方法は
無いでしょうか?
上記のようにやってみたらエラーがでて出力できなかったので・・・
0342nobodyさん
04/12/30 08:55:20ID:???事故レス
すいません、そのままでできますた。
@pageのとこって、<%〜%>にいれてコメントアウトしてもダメなんですね・・・OTL
0344nobodyさん
05/01/02 20:45:57ID:???workers2.propertiesのuriで仮想ホストを指定すると
効かない。
ありがちな見落としを列挙してくれ。
正直mod_jk2あたりのバグも疑ってる。
Tomcat5-5.0.30-1jpp
mod_jk2-4.1.27-13
httpd-2.0.51-2.9
0345nobodyさん
05/01/03 09:42:49ID:???vmは複数でもvmを動かす鯖は1台?
適当なファイルを作っておいて、ロックをかけてオープンしてから
DBの処理を実行して、DBの処理が終了すればロック開放する。
排他される側の別のプロセスはロック中であれば待機する。
そんなんじゃだめかな。
0346nobodyさん
05/01/03 13:52:47ID:???とか
あほらし
0348nobodyさん
05/01/14 03:15:01ID:???サーブレットのメモリとjavaコマンドで起動したバッチは
プロセスが異なるから(?)Singletonでもオブジェクトを
共有できないことがわかりました。
で、コネクションプーリングを自作で実装していたのですが
オブジェクトを共有できる方法はありますか?
またはデータソースを使用すればサーブレットとバッチのコネクションの
管理ができるのでしょうか?
0349nobodyさん
05/01/14 03:30:01ID:???0350nobodyさん
05/01/14 07:36:10ID:???サーブレットでURLに日本語パラメータを付加したリンクからのGETから
日本語パラメータがどうしてもちゃんと取り出せません。
charsetも設定してますし、requestもresponseもsetCharacterEncoding
でShift_JISを設定してますし、
<A>タグを書き出す時にもURLEncoder.encodeしたり、
パラメータを取り出してからURLDecoder.decodeしたりもしてみましたが
どうしても駄目です・・・
ブラウザもIEとFirefoxで試しました。
もうオテアゲな状態です・・・
他に何かチェックするべき所はあるでしょうか?
0351nobodyさん
05/01/14 10:00:22ID:???Tomcat5.0.19からはGETはsetCharacterEncoding()の適用範囲外。
APIドキュメントによればsetCharacterEncoding()は、リクエストのボディの
文字エンコーディングをオーバーライドする、とある。
GETのパラメータはリクエストのヘッダにあるからsetCharacterEncoding()の適用範囲外になる。
responseのsetCharacterEncoding()もURLEncoderもURLDecoderも関係ないぞ。何やってんだ。
Tomcatの場合はGETでもsetCharacterEncoding()を有効にするオプションが
用意されている。↓このページのuseBodyEncodingForURIの説明を嫁。
http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/http.html
ただし、将来はGETでもsetCharacterEncoding()が有効になるように
実装が変わるという話もあるし、Servlet仕様も変更になる可能性がある。
0352nobodyさん
05/01/14 14:08:56ID:???どっかのスレで話題になってなかったっけ?
0353350
05/01/14 21:43:39ID:jVtqm1ln>responseのsetCharacterEncoding()もURLEncoderもURLDecoderも関係ないぞ。何やってんだ。
面目ないです・・・
ですがおかげさまでナントカできそうになりました。
要するにヘッダのエンコードは自分で処理しないといけないという事なので、
setCharacterEncodingメソッドが出来る前にやっていたという
getBytesして新たにエンコードを指定してString作り直すという方法でいけそうだと分かりました。
それで試してみたところちゃんと日本語パラメータが取り出せました!
useBodyEndodingForURIについては、あまりデフォルトの振る舞いを変えたくないので使わない事にします。
ありがとうございました。
0354nobodyさん
05/01/16 01:09:23ID:UULMlX6Sどっちともフォームの要素の値を取得できて、同じように思えるんですが。
どう使い分けるんでしょう?
お願いします。
0356354
05/01/16 01:30:27ID:UULMlX6Sテキストボックスの名前をnamにした場合、
request.getParameter("nam")とか、
(String)request.getAttribute("nam")
で取得できませんか?
0358354
05/01/16 01:48:44ID:UULMlX6Sよく分からなくなってきました。
いや、初めから分かってないんです。
JSP/サーブレットサンプル集を見ていたら、
スレッド式掲示板を作ろうみたいのがあったんです。
if(request.getAttribute("sbm") == null){
//新規投稿フォームを表示
}else{
objBbs.setArticle((String)request.getAttribute("title"),
(String)request.getAttribute("nam"),(String)request.getAttribute("article")
・・・・・・)
}
bbs_beanのsetArticleメソッドでフォームに
入力された情報をbbs_masterテーブルに登録する・・・
っていうのがあったんです。
sbm、title、nam、articleはそれぞれ、フォームの要素名で、
送信ボタン、件名、名前、本文なんです。
今まで、request.getParameter("nam")で取得していたので、
これはどういうことだろう・・・と思ったんです。
0360nobodyさん
05/01/16 02:51:42ID:???あとは、まず自分で調べることだ。
いや、その前に、そのサンプルが何をやっているか確認しろ。
0361354
05/01/16 03:24:48ID:UULMlX6Srequest.getAttributeの戻り値がオブジェクト型なので、キャスト必要
ということ
くらいしか調べきれませんでした。
サブミットボタンが押下
⇒名前/値でフォームの要素の内容がrequestオブジェクトに格納
⇒それを取り出してbbs_masterに掲示板の投稿内容を登録
するときに、
なぜ、request.getParameter("title")ではなく、
(String)request.getAttribute("title")なんだろう・・・と思ったんです。
もう少し調べてみてから出直します!!
0363nobodyさん
05/01/16 07:33:11ID:???調べる前に、そのサンプルが何やってるか確認しろ。
で、なに調べたら、そんなことだけがわかるんだ?
単純にrequest.getAttributeでググっても、それなりに見つかりそうなもんだが。
0364nobodyさん
05/01/16 07:36:47ID:???0365nobodyさん
05/01/16 15:15:58ID:???0366nobodyさん
05/01/17 00:10:37ID:q9aZ0Owf現在Apache2とTomcat4.1.31を連携させて動かせています。
<jsp:include ...>を使い、メニュー領域を読み込ませているんですが、
これのファイル指定は、Tomcatの制御下にあるファイルしか呼び出せないのでしょうか?
例えば、
http://localhost/menu.html (Apacheの制御領域に存在)を
http://localhost(:8080)/web/index.jsp から<jsp:include ...>で呼び出したいのですが・・・
調べても、呼び出し先ファイルは、相対パスで指定としか書いていなく、このような使い方はできないのでしょうか?
このmenu.htmlは、全ページ共通のメニューページになるので、Javaを使ったページのみ別のファイルにする事は避けたいのです。
よろしくお願いいたします。
0367nobodyさん
05/01/17 00:36:01ID:???無理。<jsp:include>はRequestDispatcherを使ってるから。
Tomcatの制御下というより、同一アプリケーション内のリソースのみ。
0368nobodyさん
05/01/17 00:45:08ID:???そうなんですか・・・仕方ないですね。
別のアプローチを考えて見ます。
menu.htmlに更新があった場合には複数の場所にあるファイルの同期をとる方向で・・・かなり強引ですが・・・
0370nobodyさん
05/01/17 01:34:36ID:???0371nobodyさん
05/01/17 14:02:14ID:???jspなどのTomcatが配信するページを圧縮転送したいのですが、どうすればいいのでしょうか?
Apache側には、gzipが組み込まれていて、Apacheが処理するページやPHPのページは圧縮転送できているのですが、
Tomcatが配信するページが圧縮されずに転送されてしまいます。
Tomcatの処理するページに対して圧縮をかける方法を教えていただきたいです。
ApacheとTomcatの連携も取れています。
0372nobodyさん
05/01/17 14:33:41ID:???0373nobodyさん
05/01/17 17:12:42ID:rh8cuFh5ResultSet result = statement.executeQuery("SELECT ID FROM ID_masterORDER BY DATE");
%>
<%
while(result.next()){
%>
<tr>
<td><%= result.getString("ID") %></td>
こうあった時にを
DBからどんどんIDを読み込んで表示させたいのですが
IDがnullの場合、読み込まずに飛ばして表示されてしまいます
IDがnullの場合、その部分は空白として表示させるのにはどうすればいいのでしょうか?
if文とかを使っているのですが、どうしてもうまくいきません
ご教授をお願いします
0374nobodyさん
05/01/17 17:25:47ID:???意味不明
> if文とかを使っているのですが、どうしてもうまくいきません
どう書いたらどうなるのか読み手にさっぱりわからないから回答できない。
「うまくいきません」も漠然としすぎ。
どういう結果を期待して、実際にはどうなっているのかがわからないから
回答不能。
0375nobodyさん
05/01/18 01:02:20ID:???使用できなくなるんでしょうか?
Windows+Cygwin+PostgreSQLの環境ではJSPのキャラクターセットをMS932にするだけで
出せたんですが、Linuxに移植したら入らなくなってしまいました。
〜 は replaceAll("\u301c","\uff55e"); で出せるようになりましたが、
�@ は replaceAll("\u2460","?"); をやっても意味ありませんでした。
0376nobodyさん
05/01/18 01:04:15ID:???"&#9312" の半角です。
0377nobodyさん
05/01/18 01:33:41ID:???> サーバにLinuxを使った場合ってどうやっても�@とかの機種依存文字って
そんなことはない。
しかも、MS932じゃなくて正しくはWindows-31Jだ。
環境をちゃんと書いていないのでわからないが
LinuxはPostgreSQLが7.2と推測してみる。
PostgreSQL7.2のJDBCドライバがタコなだけだろ。
Shift_JISとWindows-31Jがちゃんと区別できない。
0378nobodyさん
05/01/18 01:41:39ID:???ありがとうございます。
Cygwin環境ではPostgreSQL7.4.5
RedHat8.0環境ではPosgreSQL7.4.6を使用しています。
JDBCドライバは pg74.215.jdbc3.jar なんで普通だと思うのですが、
MS932がいけないのかもしれないですね。
サーブレットで
new String((request.getParameter("name")).getBytes("8859_1"),"JISAutoDetect")
で読み込むのは問題ないと思ってるのですが。
0379nobodyさん
05/01/18 09:08:59ID:???> サーブレットで
> new String((request.getParameter("name")).getBytes("8859_1"),"JISAutoDetect")
> で読み込むのは問題ないと思ってるのですが。
釣りか?と思うぐらいに問題あり。
JISAutoDetectではShift_JISと誤認される。
今時JISAutoDetect使うのは糞。
0380nobodyさん
05/01/18 09:44:57ID:x8xIxcUMありがとうございます。server.xmlのcompressionを指定する事で、
http://localhost:8080/~では、転送量が約1/5になり、圧縮が確認できました。
しかし、ApacheとTomcatを連携させて動かすと圧縮ができません。
<Connector className="org.apache.ajp.tomcat4.Ajp13Connector"
port="8009" minProcessors="5" maxProcessors="75"
acceptCount="10" debug="0" compression="on"/>
という感じで8009番のConnectorにも書いてみましたが、圧縮が確認できませんでした。
Apache2とTomcat4.1の連携には http://www.ryouto.jp/linux/linux_12.html を参考に
jakarta-tomcat-connectors-jk2-2.0.2を使っているんですが、
連係動作下での圧縮転送はどのようにすればいいでしょうか?
何度もすみませんが、よろしくお願いいたします。
0382375
05/01/18 12:27:26ID:???ありがとうございました
0383nobodyさん
05/01/18 12:49:13ID:???0385nobodyさん
05/01/18 18:17:11ID:???どうせなら解決手段を書くべし。
0386nobodyさん
05/01/18 18:33:14ID:???0387375
05/01/18 20:51:45ID:???0388nobodyさん
05/01/18 21:07:58ID:???PHPに乗り換えたほうがいいですよ!
0391nobodyさん
05/01/19 17:15:05ID:gpHRwNH/この本のサンプルの通りに打ち込んでコンパイルしようとしたんですが
以下のようなエラーがでます。
略:シンボルを見つけられません。
シンボル: 変数 KanjiConv
このKanjiConvを使っている行、全てが引っかかります。
なにか特別にパスを通す必要があるとか
importする必要があったりするんでしょうか?
今のところimportしてるのは
java.io.* javax.servlet.* javax.servlet.http.*
の三つです。
本が少し古いのでSDKが1.2の頃のサンプルなのですが、
現在使用しているのが1.5なので、仕様変更があったとかでしょうか?
よかったら教えてください。お願いします。
0392nobodyさん
05/01/19 17:34:25ID:???・コンパイル時にKanjiConv クラスがあるパッケージツリーまたはjarファイルに
クラスパスが通ってない
・KanjiConvクラスがインポートされてない
・変数KanjiConvが宣言されていない
どれか。
エラーは略すな!大原則。
0393391
05/01/19 18:24:26ID:gpHRwNH/ありがとうございます、そしてすいません。
エラーは詳しくは↓のような感じです。
BBSServlet.java:90: シンボルを見つけられません。
シンボル: 変数 KanjiConv
場所 : BBSServlet の クラス
item.deleteKey = KanjiConv.ConvJStr(request.getParameter("pass"));
これと同じものが複数行でます。
で、このKanjiConvってのは標準のクラスじゃないんでしょうか?
検索してもほとんどヒットしなかったんですが、
かといって特に本文中に記述もないっぽいので
この本の独自のクラスってこともなさそうなんですが・・・
0394nobodyさん
05/01/19 18:47:00ID:???KanjiConv は標準のAPIには含まれないのでその書籍独自のクラスか
その書籍のサンプルで扱っているライブラリに含まれているのだろう。
0395391
05/01/19 19:02:31ID:???なんかこの本は初心者に厳しくて色々苦労しているのですが、
やっぱそうでしたか。。
そうであれば必ずどっかに載ってるんでしょうから探してみます。
ありがとうございました。
0397nobodyさん
05/01/20 09:09:15ID:???俺もその本持ってるかも・・・でも、おれの持ってる本で特別わかりにくいって思った参考書はないんだけどなぁ〜
キミが、最初から読まずに途中から見よう見まねでソース書いてるだけじゃないか?
0398nobodyさん
05/01/20 22:29:32ID:???ブラウザからpostしてDBに書き込み、DBの内容をブラウザに表示するっつー
仕組みをMVCmodel2ぽく作ってみました。
で、日本語化けに散々悩まされたんですが
-- in Controller --
doPost(HttpServletRequest request, ・・・) {
request.setCharacterEncoding("EUC_JP"); //<-ここに書けば文字化けは直る
Model.updateDB(request);
}
--
-- in Model --
updateDB(HttpServletRequest req){
req.setCharacterEncoding("EUC_JP"); //<-ここに書いても文字化けは直らない
//ここでgetParameterで取得してDBに書き込む処理
}
なんでsetCharacterEncodingをモデル内に書いても機能しないのか理解できません。
javaの仕様なんでしょうか?
0399nobodyさん
05/01/20 22:42:15ID:???それと"EUC_JP"はエイリアスだから新規のコードからは使うのやめるのと、
setCharacterEncoding自体もサーブレットフィルタに任せたほうがすっきりするよ。
0400nobodyさん
05/01/20 22:46:44ID:???> javaの仕様なんでしょうか?
ControllerとModelの間で一回でもHttpServletRequestから
パラメータは取り出されてないのか?
setCharacterEncodingは初回のパラメータ取り出しの前に呼ばれなければならない。
(そうしなくても動いてしまうコンテナもあるが)
フィルタ使え。
0402nobodyさん
05/01/20 23:01:06ID:???回答ありがとうございます。
確かに、400氏の言うように、コントローラ内で1回だけgetParameterしている個所がありました。
その部分を修正すれば、確かにモデル内でsetCharacterEncodingしてもちゃんと機能しまし
た。アドバイスありがとうございます。
ていうか、「サーブレットフィルタ」という単語を初めて知ったのでググって見ましたが、
TOPに来たページで「文字エンコーディングを指定するフィルタ」の説明が・・・
そうか、こんな便利な使い方があったのか・・・ orz アドヴァイス感謝です
0403nobodyさん
05/01/20 23:13:35ID:???0404nobodyさん
05/01/20 23:55:52ID:???質問させて下さい。
古い話ですが、EJB1.x系では特にCMPのパフォーマンス
の低さが 問題視されていましたよね。
その原因を調べる過程で、以下の記事を見つけました。
ttp://www.atmarkit.co.jp/fjava/special/ejb20/ejb20.html
この記事の中段付近でコンテナによるダーティーフラグや
キャッシュについて述べられています。しかし、ダーティ
フラグやキャッシュが有効なら、パフォーマンスにそれほど
問題が出ないような気がします。
EJB1.x系のCMPのパフォーマンスが低い原因について、
より詳細な 説明をして頂けないでしょうか?>識者の皆様
0405nobodyさん
05/01/21 00:41:28ID:???余計なことしてるんじゃねぇの?
0406part1
05/01/22 03:06:57ID:???文法的に間違っている所は無いと思うのですが・・・
↓
---- Controller.java
package test;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import test.*;
public class Controller extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException {
Model md = new Model();
String loginUser = "HAHAHAHAHA";
md.setUser(loginUser);
request.setAttribute("model", md);
RequestDispatcher rDispatcher = request.getRequestDispatcher("/view2.jsp");
rDispatcher.forward(request, response);
}
}
0407patrt2
05/01/22 03:07:41ID:???package test;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.text.*;
public class Model {
private String login = null;
public Model () {
}
public String getUser() {
return login;
}
public void setUser(String user) {
this.login = user;
}
}
0408part3
05/01/22 03:09:12ID:???<html>
<head>
<jsp:useBean id="md" class="test.Model" scope="request" />
<body>
<jsp:getProperty name="md" property="user" />
</body>
</html>
0409nobodyさん
05/01/22 03:13:36ID:???> jspを表示させてもnullしか出力されません。
ブラウザから直接 /view2.jsp をリクエストしてるとか?
0410nobodyさん
05/01/22 03:37:43ID:???いやさすがにそれは。Controllerを直接リクエストしています。
ちなみにtomcat4.1.31です。
0411nobodyさん
05/01/22 04:33:14ID:???---- Model.java
package test;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.text.*;
public class Model {
private String user = null;
public Model () {
}
public String getUser() {
return user;
}
public void setUser(String anUser) {
this.user = anUser;
}
}
0412406
05/01/22 14:46:46ID:???setAttributeとjspの"<jsp:useBean id=〜"が理解できていなかったです。
0413nobodyさん
05/01/23 03:14:00ID:???質問します。
通常、WEB-INF/libディレクトリ以下に各種Jarファイルを全て配置しますが、大規模なWebアプリなどの場合、
多数のコンポーネントを利用するために相当数のJarファイルがWEB-INF/lib以下に配置されることになると
思います。
ここで、各プロダクト毎に関連するjarファイルをWEB-INF/libディレクトリ以下にサブディレクトリを掘ることによって
論理的に分けて配置したいと思います(以下参照)
WEB-INF/lib
|
+subdir1
| + hogehoge.jar
+subdir2
+ foo.jar
+ foobar.jar
しかしながら、WEB-INF/lib以下のサブディレクトリにはclasspathが通りません。どのようにして解決すればよろしいでしょうか。
実行環境は今のところTomcat5.x系を想定しています。
■ このスレッドは過去ログ倉庫に格納されています