トップページ⇒php
982コメント347KB

■■ Servlet/JSP(EJB含む) 質問スレ Part2 ■■

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん03/05/14 11:32ID:RETM9b3/

前スレ
■■ Servlet/JSP(EJB含む) 質問スレ ■■
http://pc2.2ch.net/test/read.cgi/php/1023501812/l50
0272nobodyさん03/07/03 22:12ID:wYy/fb79
Stringの配列をStringに戻すスマートなやり方って
どんなのがありますか?
getParameterMapが値をStringの配列で返すみたいで、
Stringに戻すやり方がわからんのです。
配列をぐるぐる回して組み立てるくらいしか思いつかないのですが、
化けちゃって・・・
基礎すぎるのか、Web調べてもわかりませんでした。
0273nobodyさん03/07/04 09:27ID:???
>>271
ServletRequest#getAttribute()で、
"javax.servlet.error.request_uri" かな。

>>272
Jakartaになってしまうが、
http://jakarta.apache.org/commons/lang.html
StringUtils#join()
で出来るんじゃないかな。

質問の意味が、ちと分かってないかもしれんが。
027427103/07/04 10:24ID:???
>>273
ありがとうございます。
<%= request.getAttribute("javax.servlet.error.request_uri") %>
で表示させてみましたが、nullでした。
apache+tomcatではセットされないのでしょうか?
ちなみに、javax.servlet.error.status_codeもnullでした。
うーん。やり方が悪いんですかねぇ...
027527303/07/04 12:04ID:???
>>274
おかしい、ですね。
TOMCAT単体で値が取れています。
もっとも吐き出し先は、Velocityですが。
0276nobodyさん03/07/04 14:16ID:nf207VCo
他のServletで生成したコネクションプールのクラスを呼びだすにはどうすればいいですか?

0277nobodyさん03/07/04 17:46ID:???
Static領域にあれば、どこからでも呼び出せますよ。
027827203/07/04 23:12ID:???
>>273
ちと余裕がないので、自前でrequestの内容を
Hashtableに格納することで逃げてしまいました。
教えていただいた機能は余裕ができたら見させていただきます。
ありがとうございました。
返事が遅くなってすいません。
0279nobodyさん03/07/06 01:25ID:???
JSPのサンプルなんかを見ると、例えば
File file=new File(略
のようにイコールの前後に半角スペースが入っておりませんが、
JAVAから入った私には違和感を感じます(特に入力するときのリズムが・・)。

セオリーとして空白を入れてはいけない、というようなことがあるのでしょうか?
0280nobodyさん03/07/06 01:57ID:???
>>279
サンプルの作者に聞けば?

勝手な想像だがHTMLに合わせているのかも、とか
<img src="…"/>←こういう場合=の前後にスペース入れないからそれに合わせてとか。
知らんけど
0281nobodyさん03/07/06 02:01ID:???
>>279
たまたまあなたが見たサンプルがそうだっただけなのでは?
どれを見ても必ず、じゃないでしょ?

> セオリーとして空白を入れてはいけない、というようなことがあるのでしょうか?
そんなことはない
0282nobodyさん03/07/07 03:27ID:???
俺はスペース入れる派
0283nobodyさん03/07/07 06:26ID:???
俺はゴム付ける派
0284nobodyさん03/07/07 07:06ID:???
>>283
ビョーキ怖いもんね
0285nobodyさん03/07/10 00:38ID:yTg7a9KK
jspで、includeしたファイルに日本語を使うと、文字化けが起こります。

<%@ page contentType="text/html; charset=euc-jp" %>
を書かなかったかのようなタイプの文字化けです。

もとのファイルにこれが書いてあるので、include先のファイルに
これを書くと、2重に書いてるとのエラーが起こりますが、
どうしたらいいのでしょうか。

環境は
redhat
apache
jdk1.3
です。
0286あぼーんNGNG
あぼーん
0287nobodyさん03/07/10 01:51ID:???
>>285
includeの方法を書け。ディレクティブでincludeしてるのか、
アクションでincludeしているのか、Strutsのカスタムタグ等でしているのか。
で、すべてのファイルの保存文字コードを確認すれ。
0288nobodyさん03/07/10 02:01ID:???
>>287
<%@ include file="test.jsp" %>
と書いています。アクションっていうんでしたっけ。
ファイルの文字コードは全てEUCになってます。
0289nobodyさん03/07/10 02:09ID:???
>>288
そいつはディレクティブ。
include元のファイル一カ所のみに <%@ page contentType="text/html; charset=euc-jp" %>が必要。
test.jspには <%@ page contentType="text/html; charset=euc-jp" %>は不要。
化けている文字はJSPに直接書いているのか?
リクエストパラメータから取り出したり、DBから取り出した文字が
化けているのではなく?
0290nobodyさん03/07/10 02:21ID:???
直接Stringに代入した文字が化けます。
test.jspで定義したクラスのフィールドに
String s = "日本語";
と書いて、out.printで表示させました。
0291nobodyさん03/07/10 02:21ID:???
> include元のファイル一カ所のみに <%@ page contentType="text/html; charset=euc-jp" %>が必要。
> test.jspには <%@ page contentType="text/html; charset=euc-jp" %>は不要。

じゃあ、ここは問題ないみたいです。
0292nobodyさん03/07/11 13:12ID:???
いまサーブレットの勉強を少しづつ始めているのですが、
最初に練習でつくるアプリケーション(これくらい作れれば初心者脱出だね、という程度の)
としてどんなものを目指せばいいんでしょうか?

普通の言語(JAVAとかC++とか)だと例えば電卓作れ、とかブロック崩しつくれ、とか
あるんですが。
サーブレットは手段であって目的ではないというのはここ数日の勉強でよくわかった
つもりなんですがそれでもなんか指針をお願いします。
0293nobodyさん03/07/11 13:30ID:???
>>292
漏れは業務系なんでそっち方面しか思いつかないんだが、
まずはユーザ登録、認証、登録内容変更あたりかな。

で、次がデータの検索、表示、編集、削除とか。
こんな感じでセッションやロールの使い方、画面遷移のパターンなんかを習得する。


もうちょい簡単なところでいくと……ベタだが掲示板とか。
0294nobodyさん03/07/11 16:07ID:nfu8obQl
>>292
メンバー認証ありの掲示板でいいんじゃない?
メンバーのデータベースをPostgreSQLかMySQLで作っとけ。
もしくはCDショップ。買物かごをつくって、sessionの勉強しなさい。

いや、マジでベタです。
0295nobodyさん03/07/11 16:28ID:oyWk8qiv
ログインしているユーザ名や人数を管理したいのですが、
どう実装するのが良いのでしょうか?

サーバ側にコンテナの起動中は消えないオブジェクトを作るとか
出来るのでしょうか?

データベースとか利用した方が簡単なのかな…。

お知恵拝借。
0296nobodyさん03/07/11 18:23ID:???
>>295
現在ログイン中の、ってことだよね?
ならサーブレットコンテキストに保存しておくのがいいんでない?
0297nobodyさん03/07/11 19:51ID:vRLerH2G
>253

http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/http/HttpSessionListener.html

は知ってるよね?
0298nobodyさん03/07/13 23:38ID:???
>>294
俺も最初は掲示板だったな。
んで、認証して書き込み削除/編集。
やっぱり練習としてはセッションとデータベースを使わないとね。

>>292
がんばってねん。
余力があればツリー式掲示板で登録されたユーザしかトピック(ツリーのルート)
を作れないとかも楽しいかもね。

ばいちゃ!
0299初心者でスマソ03/07/14 00:41ID:2NcxKTnh
文字化けの質問です。ガイシュツだったら叱ってください。

Apache 2.0.45 と Tomcat 4.1.24 と mysql 4.0.13
をWindowsXP上にインストールしました。
mysql-connector-java-3.0.8-stable と mod_jk2 で連携させました。

hoge.htmlからフォームで日本語文字列を入力してhage.jspに送り、データをinsertしました。
正常にデータが追加されたのを表示した後に、hoge.htmlに<A HREF=...>で戻って
再度入力をしようとしたのですがhoge.htmlが文字化けを起こして読めなくなってしまいます。

hoge.htmlはmetaタグでcontent文字コード指定済み、
hage.jspはpageディレクティヴで同じく指定しました。

InternetExplorerのエンコードを日本語(自動選択)に設定しておいたのですが、
一周してくると西ヨーロッパ言語に切り替わってしまいます。

どこかの設定が悪いのでしょうが、どうやって原因を特定すればいいのか悩んでいます。
漏れはいったい何にはまっているのでしょうか?
0300nobodyさん03/07/14 08:18ID:???
>>299
Javaの問題ではなく、Apacheの問題。
Apacheスレ逝ってこい。
0301nobodyさん03/07/14 11:53ID:???
>>299
AddDefaultCahrsetで日本語のCharsetを指定しろ。
したか?

じゃあとっととうせろ。
0302初心者でスマソ03/07/14 13:21ID:???
>>300>>301
レスありがとう。Apacheを調べています。

AddDefaultCharsetをshift_jisに設定したり、offにしたりしましたがダメでした。
DefaultLanguage ja を付け加えて
AddLanguage ja .ja を他言語より前の行に持ってきて
LanguagePriority でjaを先頭に持ってきてみたり

まだダメです。typoでもしたのかなあ?
スレ違いのようなので泣きながら逝ってきます。
0303初心者でスマソ03/07/14 14:04ID:???
逝ったとたんに解決しますた。
メモ帳で名前をつけて保存する際に文字コードがANSIになってたようです。
UTF-8で保存したら無事表示できました。漏れが悪かった…。

スレ汚し失礼しました。改めて逝ってまいります( ´・ω・`)       
0304山崎 渉03/07/15 11:06ID:???

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
030529503/07/15 14:25ID:???
>>296
ありがとうございます。

ブラウザを落としたりした際に、ServletContext に格納した
情報を削除するにはどうするのでしょうか?
0306nobodyさん03/07/15 15:03ID:???
>>305

>>297
0307nobodyさん03/07/15 17:07ID:mN7Rw2O3
apache 2.0.46にtomcat4.1.24を連携させて動かそうとしています。
http://localhost/examples/でサンプルのディレクトリ一覧を表示するとこまでは行けたのですが、
jsp、servletsのディレクトリの内のhtmlが404エラーが出て読み込みません。
サンプルプログラムに直接アクセスしたりtomcat単体で動かすとちゃんと実行できますし、
apacheと連携させないでtomcat単体で動かすとhtmlも表示できます。
どうやったらapacheとの連携でhtmlファイルを読み込むことができますか?
0308nobodyさん03/07/16 23:08ID:???
>>307
httpd.confでjspをAddHandlerは何かしてるくさい
0309nobodyさん03/07/17 00:27ID:Y3bgPGhT
WebLogic6.1SP4でSSLなサイトを作っているのですが、
テストでHttpUnit1.5.3を使用してみようとサンプル通りに
やってみたところ、httpsでの動作がうまくできませんでした。
(IOExceotionが出てWebResponseが取れない。)

HttpUnitのFAQ[http://httpunit.sourceforge.net/doc/sslfaq.html]を
見たところJSSEを使っていろいろとやるとうまくいくようなのですが、
その辺疎いものでよくわかりませんでした。

httpsにはhttpUnitによるテストは一般的ではないのでしょうか?
それとも単に設定をすればサクサク使えるものなのでしょうか?
0310nobodyさん03/07/17 11:25ID:???
>>307
mod_webappじゃなくてmod_jkで繋いでるんだよな、きっと。
jspしかマッピングしてないとしたら、ちゃんとexamplesのあるディレクトリを見るように
Apacheの方も設定しないといかんよ。

例えばAliasで
Alias /examples/ "Tomcatディレクトリ/webapps/examples/"
みたいな感じに。
0311nobodyさん03/07/17 21:20ID:???
いま、JSPを使ってホームページを作っているのですが、
Htmlファイルをダウンロードさせる方法ないでしょうか?

htmlから普通にリンクを張ると当然ですがブラウザが読み込んでしまいます。
ブラウザが読み込んでしまう.TXTや.htmlをユーザー側で「対象をファイル
に保存」としなくても普通にクリックして、圧縮ファイルや.exeファイル
のようにダウンロードさせたいのですが、うまくいきません。
よい方法があったら教えてください
0312nobodyさん03/07/17 22:52ID:???
>>311
Content-typeをtext/downloadにしてみるとか。
0313nobodyさん03/07/18 09:28ID:???
IEだとMIMEじゃなく、拡張子で見てんじゃなかったっけ。
拡張子が、htm、htmlの時点でアウトな気が。
0314nobodyさん03/07/18 12:27ID:???
オールWindows環境だけど、ちと試してみた。

Windows2000 SP4
Apache1.3.27
.htaccessにてAddType text/download htmlを設定

IE5.5    :ダウンロードするものの、関連付け起動でIEが開くw
NN4.7   :ダウンロードできた
Mozilla1.45:ダウンロードできた
Opera7.11 :ダウンロードできた
0315nobodyさん03/07/18 12:28ID:???
>>314
スマソ、NN4.75、Mozilla1.4
0316nobodyさん03/07/18 15:25ID:???
>314
IEだとダウンロードした後に開くの?
ローカルファイルとして開くなら、セキュリティの壁を越えられそうな予感。
0317nobodyさん03/07/18 15:44ID:???
.rmとか.mpgなんかで勝手に立ち上がるような感じ。

<script language="VBScript">
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "notepad.exe"
</script>

で試してみたら「ActiveXコンポーネントオブジェクトを作成できません」と言われ、

<script type="text/javascript">
var shell = new ActiveXObject("WScript.Shell");
shell.Run("notepad.exe");
</script>

で試してみたら「オートメーションサーバーはオブジェクトを作成できません」と言われた。
.jsにして読み込むような形にしても同じ。

どうやらTemporary Internet Files以下にあるとダメらしい。
外にコピーすると正常に動く。
0318nobodyさん03/07/18 17:11ID:kChAvAKQ
すみません質問なのですが、
現在TOMCATを使って勉強を初めてるんですが解らない所があります
HTMLの画面で日付を選んでボタンを押すとサーブレットがHTMLファイル
(日記です)を表示させると言うのを作りたいんですが、表示されるHTMLに
画像(jpg)が表示されません。

jpgは何処に置けば良いんでしょうか?現在はドキュメントルートの直下に表示させる
HTMLファイルと一緒に置いてあります。
基本的な質問で申し訳無いのですがよろしくお願いします。
0319nobodyさん03/07/18 17:24ID:???
>>318
どういう構成なのかがわからんと、回答しようがないな。
とりあえず>>310を読んでみてくれ。
0320nobodyさん03/07/18 18:25ID:???
>>318
sendRedirectしてる? forwardしてる?
それともファイル読み込んでストリーム吐き出し…?
0321nobodyさん03/07/19 17:44ID:???
みなさん、ServletやJSPは何を使ってコーディングしてますか?
エディタ使うにしても色分けとかどうするものですか?
0322nobodyさん03/07/19 18:24ID:???
秀丸でC言語/Javaモード
0323nobodyさん03/07/19 21:29ID:o3qmFC14
Emacsで各modeにあわせたelisp
032431803/07/20 11:47ID:LK8F8DJ2
>>319
ありがとうございます、Apacheは使ってません
>>320
ありがとうございます、sendRedirectしています。
0325nobodyさん03/07/20 13:06ID:???
>>324
それ、Servletを介さずに直接HTML見に行っても画像は表示されないと思う。
<img src="〜">のパスを見直してみたらどうかな。
0326nobodyさん03/07/20 13:16ID:???
>>324
sendRedirectならもはやServletは無関係だな。
<img>のsrcはどう書いてる?
0327nobodyさん03/07/20 15:46ID:KthA/9UD
Y本興業のF井隆ら6人が名誉毀損で2ちゃんねるを告訴
http://tv3.2ch.net/test/read.cgi/geinin/1058512767/12
0328あぼーんNGNG
あぼーん
0329あぼーんNGNG
あぼーん
0330あぼーんNGNG
あぼーん
0331nobodyさん03/07/25 22:02ID:ysYjFk43
Red Hat 9 に J2SDK 1.4.1.02、Tomcat 4.1.24、Eclipse 2.1 を入れましたが
Eclipse から Tomcat が
Catalina.start: LifecycleException:キー UserDatabase でユーザデータベースコンポーネントが見つかりません
のエラーメッセージが出て動きません。
root で ログインすると正常です。
設定を弄ればいいと思うのですが、具体的にどうすればいいのか教えてください。
0332nobodyさん03/07/26 03:26ID:lzXWAOIy
2chをServletで処理したら、
鯖問題(人大杉とか)は解決しますか?
0333あぼーんNGNG
あぼーん
0334nobodyさん03/07/26 06:06ID:???
>>233
しないだろう。システム構成そのものに問題がある。あと財政的にも。
0335nobodyさん03/07/26 13:39ID:???
CGIよりは負担が軽いかもよ
JNIとか使えば更にいいかも
0336nobodyさん03/07/27 02:10ID:???
サーブレットってひとつのサーブレット呼び出しが終了した時点で、
そのサーブレットクラスはガーベッジコレクトされると考えていいんですか?

それとも呼び出し自体は終了しても、大元のスレッド(?)(TOMCATなど?)
が生きている間はガーベッジコレクトのタイミングは不明ですか?
0337nobodyさん03/07/27 03:08ID:Zq9/jufa
「10日で覚えるJSP & Servlet」使っている人います?
0338nobodyさん03/07/27 09:23ID:???
>>336
後者
0339nobodyさん03/07/28 14:08ID:???
>>331

ちみの問題と関係あるかどうかはわからんが、
RedHat9の場合はJDK1.4.2でないと不具合があるらしいよ。
1.4.2ってまだβなんか?しらんけど入れ替えてみる価値は
あるとおもうぞなもし。
0340nobodyさん03/07/29 18:49ID:DmqWmLcT
>>339
おまえ、java.sun.com見てないだろ
0341nobodyさん03/07/29 21:16ID:03yM9rCp
>>340
いまどきはjava.comかjava.netもいいな。
0342nobodyさん03/07/30 15:17ID:OG3NfWBB
質問させていただきます
ServletConfig#getInitParameter()メソッドと
ServletContext#getInitParameter()メソッドはどんな違いが有るんですか?

よろしくお願いします
0343あぼーんNGNG
あぼーん
0344nobodyさん03/07/30 19:32ID:???
>342
JavaDocに書いてある記述で理解できないのか?君は?
0345nobodyさん03/07/30 20:44ID:3CWQHBkI
>>344
読むのがめんどくさいから教えなさい。
0346nobodyさん03/07/30 20:52ID:???
>>345
ServletConfig#getInitParameter()メソッドはServletConfigクラスのメソッドで
ServletContext#getInitParameter()メソッドはServletContextクラスのメソッドである。
0347あぼーんNGNG
あぼーん
0348あぼーんNGNG
あぼーん
0349nobodyさん03/07/30 22:12ID:MgvHusb0
ttp://www.〜〜〜.com/index.htmlをトップページにしています。
このindex.htmlにJavaのテキストカウンターを設置したいのですが、
鯖の仕様上、Java関連のファイルは/Java/以下に格納しないといけません。
indexをJSPにできるなら<jsp:include page="/servlet/counter" flush="true" />とかでいいのですが、
HTMLファイルからJavaのカウンターを呼ぶことはできますでしょうか?

カウンターはサーブレットで書いており、JSPからincludeされた場合は
IPアドレスやら何やらをログに書き出して、最後にカウンターの値をprintするというものです。
/Java/index.jspから呼べば当然動くのですが、なにかいい案はありますでしょうか…?
0350あぼーんNGNG
あぼーん
0351nobodyさん03/07/30 22:14ID:???
>>349
あなたは、あほですよね。
0352nobodyさん03/07/30 22:15ID:???
>>349
iframeで呼べば
0353nobodyさん03/07/30 22:33ID:JdrsXnik
http://book-i.net/ad06/
035434203/07/30 23:04ID:KH9yF9Ba
>>346
それ以外に違いは無いって事ですか?
それともあなたも解らない?
0355nobodyさん03/07/30 23:09ID:???
>>354
>>351
035634203/07/31 00:28ID:SHH1KtXs
ちゃんと答えてくださいよ〜
0357nobodyさん03/07/31 05:02ID:???
>>356
そんなにわからないならいろいろ試して自分で納得しろ。
そしてもう来るな。
0358nobodyさん03/07/31 12:58ID:???
>>349
JavaScript の外部ソースとして呼び出すとか。
0359あぼーんNGNG
あぼーん
0360あぼーんNGNG
あぼーん
0361nobodyさん03/07/31 23:23ID:Ibo2eO4h
Postgres+JSPがうまくいきません。どなたかご教授をーー!

RedHat7.3 + tomcat4.0.6 + jdk1.3.1_08 + postgresql-7.2.3
TOMCAT単体か、jspのみも動作確認済み。Postgresとの連携でつまずく。

$TOMCAT_HOME/lib/にpg72jdbc2.jarをおいて、TOMCATリスタート
で、次のようなエラーです。
javax.servlet.ServletException: org.postgresql.Driver
036236103/07/31 23:31ID:Ibo2eO4h
ここで勉強しました↓
http://www.atmarkit.co.jp/fjava/rensai/jsp10/jsp10.html

posgresqlでselect * from tableの出力もOKなのです。
0363あぼーんNGNG
あぼーん
0364nobodyさん03/08/01 01:57ID:???
>>361
エラーを勝手に省略されたらわからんよ
036536103/08/01 07:01ID:fLmmiO+8
自レスです。
javax.servlet.ServletException: org.postgresql.Driver
↑に関してはJDBCドライバーへのパスが間違っていました。
解決いたしますた。m(_ _)m

0366nobody03/08/01 16:29ID:o8aFm5PP
HTMLタグをprintln文で出したくないので、
サーブレットはデータ処理だけして次のページに遷移する、
ってしたいんですけど、サーブレットでページ遷移を制御する
クラスorメソッドってありますか?あれば名前教えてもらいたいんですが。
0367山崎 渉03/08/02 02:21ID:???
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0368nobodyさん03/08/02 03:26ID:???
jsp使えよ。
0369ぼるじょあ ◆ySd1dMH5Gk 03/08/02 04:49ID:???
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ
0370nobodyさん03/08/10 21:47ID:O/tDTKXD
age。
0371nobodyさん03/08/13 17:51ID:NzpiL6o6
質問です。
Beanをsessionで使用すると、ある程度の時間はそのidのBeanはいつでも呼び出せるのでしょうか?
例えば、jsp内で

<jsp:useBean id="bean" scope="session" class="○○○">

として使ったら、しばらく2、3ページリンクを飛んだ後で
再び、これを呼び出すことは可能なんでしょうか?
0372nobodyさん03/08/13 18:28ID:???
>>371 Beanによる。
■ このスレッドは過去ログ倉庫に格納されています