トップページ⇒php
1001コメント334KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2005/06/01(水) 09:09:00ID:???
質問する前に最低でもGoogleで検索するように

前スレ
■■ Servlet/JSP(EJB含む) 質問スレ Part3 ■■
http://pc8.2ch.net/test/read.cgi/php/1087331455/l50
前前スレ
■■ 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
0709nobodyさん2006/03/18(土) 14:52:56ID:???
Windows-31J
0710nobodyさん2006/03/18(土) 15:16:24ID:???
新規で作るなら、
全部UTF-8にしたほうがいろいろ幸せだよ
0711nobodyさん2006/03/18(土) 15:23:11ID:???
全部をUTF8にすると…

IEだとUnicode用のフォントが割り当てられるから、お客さんからクレーム orz
またPostしたデータがUTF8で取れないケースがある
0712nobodyさん2006/03/18(土) 16:47:27ID:???
>>711
UTF-8に変換すれば?>送信データ
0713nobodyさん2006/03/18(土) 16:48:57ID:???
>>708
日本語使えない文字エンコーディングが一般的なわけないだろ
0714nobodyさん2006/03/19(日) 15:12:54ID:R+Ibm8gi
一つのサーブレットに対して一つのインスタンスを作って
リクエスト分スレッドを立てて処理してる、であってる?
0715nobodyさん2006/03/19(日) 16:56:03ID:???
>>714
スレッドプールという仕組みがあるので
リクエスト分のスレッドというのは正しくない。
もっと多くスレッドが用意されているかもしれないし、
足りなければ増やされるし。Servletコンテナの設定次第。
0716nobodyさん2006/03/19(日) 18:29:16ID:R+Ibm8gi
一つのサーブレットに対して複数のインスタンスが作られることはない?
ないとすると
同じインスタンス変数を全てのスレッドが参照できる?
0717nobodyさん2006/03/19(日) 18:45:21ID:???
>>716
その通り
0718nobodyさん2006/03/19(日) 18:52:03ID:???
ソースに日本語埋め込むと保守性悪いよ。
まさかコメントに日本語使えないと困りますか?
0719nobodyさん2006/03/19(日) 21:29:17ID:???
>>718
後に誰が見るかわからないし、客が見るかも知れないから
日本語でコメント書けた方がいいな。
0720nobodyさん2006/03/19(日) 22:07:11ID:???
トラブル起こすくらいなら避けるだろ。
本末転倒。
0721nobodyさん2006/03/21(火) 00:10:02ID:???
英語のコメントが読めない/書けないトラブルが発生します。
0722nobodyさん2006/03/21(火) 07:37:52ID:???
読めないのは他の人に頼めるが、書けないのは致命的だな。
brokenでもいいんだけど、書けない=>書かないは絶望的
0723nobodyさん2006/03/21(火) 09:18:03ID:wSge3oRZ
jspやhtmlからサーブレットにベクトル画像を渡して、
サーバ側でベクトル画像をビットマップ画像に変換するような事を
考えています。phpやperlではGDというグラフィックライブラリを使う
みたいなのですが、javaではそういったライブラリは無いのでしょうか??
0724nobodyさん2006/03/21(火) 09:42:31ID:???
>>723
ベクトル画像というのがSVGならApache Batikというのがありますが。
0725nobodyさん2006/03/21(火) 10:02:21ID:wSge3oRZ
>>724
ベクトル画像はvmlで描いたものです。
vmlではだめでしょうか??
0726nobodyさん2006/03/21(火) 14:14:47ID:???
あんまり鯖側でやりたくない処理だな。
利用者が多くなるとスケールしなくなるよ。
0727nobodyさん2006/03/23(木) 10:06:58ID:???
>>708
UTF-8。
それがJava標準。
XMLもUTF-8が標準、
最近のLinuxもUTF-8が標準、
あのM$ですらドトネトでShift_JIS(Windows-31J)ではなく
Unicodeを推奨している。
そして最近のデータベースサーバもUTF-8が標準になった。

よってUTF-8で統一。
さもないとエンコーディングの手間が省けない。


0728nobodyさん2006/03/23(木) 10:12:12ID:???
>>718
日本語入りStringはすべてResourceBundleまたはJakarta Commons Configuration
または Spring Framework で外部ファイルに記述する。

コメントは
コンパイルオプションに-encodingを追加して
native2ascii.sh(.exe)またはApache Antの<native2ascii>タスクで
ASCIIコードに変換してからコンパイルなりJavadoc生成なりすれば
万事解決。
0729nobodyさん2006/03/23(木) 18:10:08ID:???
でもメールはISO-2022-JPだからね。
UTF-8で処理するとどうしても化ける。
0730nobodyさん2006/03/23(木) 22:51:59ID:mJKQp3xR
レベルの低いことをおたずねしてすみません。
今、jspのjavascript中に定義した変数を
submitによりサーバ側に渡して、処理を行うことを考えている
のですが、うまくサーブレットに渡りません。
教えていただけましたら大変助かります。
以下がそのプログラムです。
プログラム中のdocument.getElementById("l_x").value =
buf_x;
およびdocument.getElementById("l_y").value = buf_y;をサ
ーブレット側のrequest.getParameter()等で読み込めないので
しょうか??


<form name="fm" method="POST" action="../../Servlet">
<input type="submit" value="保存" OnClick="return
save();"/><br>
</form>
<script>
function save(){
var buf_x="";
var buf_y="";
buf_x += LogX[i] + "|"
buf_y += LogY[i] + "|"
document.getElementById("l_x").value = buf_x;
document.getElementById("l_y").value = buf_y;
document.fm.submit();
}
</script>
0731nobodyさん2006/03/24(金) 00:03:44ID:???
これはまた色々とツッコミどころ満載ですね


とりあえずスレ違いな
0732nobodyさん2006/03/24(金) 12:50:30ID:???
>>729
MIMEタイプで指定すれば問題なし
0733nobodyさん2006/03/24(金) 15:57:15ID:xohjbFYV
>>732
730です。ご返答ありがとうございます。上のプログラムは多少間違っていました。
MIMEタイプの指定ですが、具体的にどのようにすればよいのでしょうか??

先ほど、一度試しましたが、どうしてもサーバ側でrequest.getParaを行うと
nullが出てしまいます。
JSP初心者なもので、大変困っております。
プログラムの詳細を言っていただけると大変助かります。
どうか、おたすけ下さい。
0734nobodyさん2006/03/24(金) 23:04:23ID:???
MIMEで設定しても、メーラにその機能がなければ見れないし。残念。
utf-8対応メーラって少ないよ。RFCにないし。
0735nobodyさん2006/03/25(土) 09:27:55ID:???
>>734
何かほかに対策はないのでしょうか??
0736nobodyさん2006/03/25(土) 12:27:10ID:???
日本語メールはJISで送る。それがRFCだし、ほとんどのメーラの仕様。
0737nobodyさん2006/03/25(土) 21:07:16ID:???
apacheとTomcatを連携させたのはいいのですが、その環境に
.htaccessを有効にすることはできないのでしょうか?
0738nobodyさん2006/03/25(土) 23:43:51ID:???
>>737
できる。
もし、本題が.httaccessを有効にすることではなく
基本認証を有効にすることであるなら、Servletコンテナの認証機能を使えばよい。
0739nobodyさん2006/03/27(月) 14:00:29ID:???
>>734
つHTMLメール
0740nobodyさん2006/03/27(月) 14:01:00ID:???
>>737
つserver.xml, context.xml
0741nobodyさん2006/03/27(月) 16:57:09ID:???
HTMLメールはゴミ。
メール鯖で捨てられる所も多いよ。
0742nobodyさん2006/03/27(月) 22:13:28ID:???
MUAでも捨てられるな。うちがそう
0743nobodyさん2006/04/09(日) 16:53:39ID:w+aWNdK3
携帯でショッピングサイトを製作していて困ったことになっているので質問させてください。

ショッピングカートはセッションで保持しています。
携帯ではクッキーが使えない?のでjsessionidをURLに付加してリクエストを送信しています。
ここまでは問題ないのですが、
カート情報を保持した状態でHTMLの静的ページからカートに商品を入れるようなことをしたいのです。
どういうことかというと、
商品を検索、一覧から選択→カートにいれる→買い物を続ける の流れの中で
"今週のおすすめ品"みたいなページ(客がつくるらしい)がHTMLでつくってあって
それを選ぶと先ほどまでと同じようにカートに追加されるようにしたいのです。
HTMLからsessionidは渡せないのでどうしたものかと・・・。

よい解決法がありましたらご教授ねがえないでしょうか?
0744nobodyさん2006/04/10(月) 02:42:39ID:???
俺なら HTML を include して JSP で表示を行う。
これなら jsessionid は死なないで済む。
ブラウザの URL に拘る必要がある場合は交渉して不要にしてもらう
0745nobodyさん2006/04/10(月) 09:23:46ID:???
URLにjsessionidがついてる時点であれだから、URLの問題はokな気がする
07467432006/04/10(月) 14:22:44ID:a6jXcl8b
url-patternで*.htmlだったらインクルード用のjspを呼び出すようにしてみました。

<jsp:include page="<%=request.getServletPath()%>"/>

するとincludeしたときにもurl-patternにマッチするらしく
1 〜〜.htmlを呼び出す
2 インクルードjspへ遷移する
3 インクルードで*.htmlにマッチ、1に戻る
で無限ループになってしまいました。(100週くらいすると勝手にエラーで落ちる)


ほかの方法として
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=13526&forum=12&4
のようにhtmlに対してフィルターをかけることができないか模索中です。
レベルの低い質問で申し訳ありませんが引き続きおねがいいたします。
0747nobodyさん2006/04/12(水) 18:12:19ID:???
Tomcat5.5について質問なのですが、
JSP+Beanで動かす場合のclassファイルの置き場所はどこでしょうか。
4系とは違うのですか?
0748nobodyさん2006/04/13(木) 04:39:25ID:???
>>747
違いません。
0749nobodyさん2006/04/13(木) 07:42:43ID:???
>>747
Tomcat5.5についての質問ではないし、マルチだし。
消えろ
0750nobodyさん2006/04/16(日) 16:36:24ID:???
とぉーんまキャット
0751nobodyさん2006/04/29(土) 18:32:04ID:kQOF8iLN
サーブレットのプログラム内でファイルを出力すると
環境によってファイルの位置が微妙に変わってしまいます。
例えばeclipseからコンテナを起動してファイルを出力するとeclipseのホームディレクトリに出力されます。
これをどのような場合でも
コンテキストルート/WEB-INF/file
に出力したいのです。
そのためにコンテキストルートまでの絶対パスを取得したいのですが方法がわかりません。
わかる方教えてもらえませんでしょうか。
0752nobodyさん2006/04/29(土) 19:57:46ID:???
getRealPathかなんか。
0753nobodyさん2006/04/29(土) 21:55:14ID:???
TomcatとEclipseでOKならいいけど、
「どのような場合でも」となるとコンテナによっては
アプリケーションのディレクトリには出力できないこともあるよ。
そういうときはデータ用としてどこか外部のディレクトリを使った方が
ポータビリティが高い。
0754nobodyさん2006/04/29(土) 22:41:54ID:???
サーブレットからなら
getServletContext().getRealPath("");
でいいんでない?
0755nobodyさん2006/04/29(土) 22:55:56ID:???
getServletContext().getRealPath("/");
じゃないの?
0756nobodyさん2006/04/30(日) 12:57:03ID:???
getRealPathってサーバ上のディレクトリか。
もう一つURLを表すパスを返すメソッドもあったよな
0757nobodyさん2006/05/02(火) 14:46:43ID:???
JSP2.0に対応していないとELは使えませんが、JSTLは使用できるのでしょうか
0758nobodyさん2006/05/02(火) 18:39:08ID:???
> JSP2.0に対応していないとELは使えませんが、

JSP1.2でも使えます。ただし、JSPボディ部に直接書けるのは2.0からです。

> JSTLは使用できるのでしょうか

使えます。
0759nobodyさん2006/05/02(火) 19:32:13ID:???
>>758
ありがとうございます。
現在weblogicを使用していますが、weblogicのjarファイルにjavax.servlet.jsp.elパッケージがありません。
この場合このバージョンのweblogicでは、elは使用できないのでしょうか。
0760nobodyさん2006/05/02(火) 19:43:10ID:???
>>759
JSP仕様に含まれるのは2.0から。
JSP1.2まではデフォルトで追加ライブラリ無しで使えるわけではない。
0761nobodyさん2006/05/03(水) 01:48:24ID:kMBht7v/
くだらない質問なんですけど、
Googleの検索エンジンの実装ってServlet使ってたりするんでしょうか
0762nobodyさん2006/05/05(金) 05:05:46ID:???
>>761
聞いたタイミングがGWってこともあるのかもしれんが、まだ誰もレスしないってことは
中の人に聞くしかないってことかと。
0763nobodyさん2006/05/05(金) 09:54:55ID:???
>>761
使ってません。
0764nobodyさん2006/05/05(金) 09:55:27ID:???
なぜなら、Servletはエンジンを実装する技術じゃないからです。
0765nobodyさん2006/05/05(金) 12:12:04ID:???
さすがに検索だけならPerlやCでやったほうがいいだろう。
株価や銀行預金、ネットワークストレージといった、
データをサーバに頻繁に間違いなく確実に保存するサービスを
行使するならServletのほうがうってつけだが。
0766nobodyさん2006/05/05(金) 12:19:41ID:???
「やったほうがいい」とまでは思えない。
すごく単純な検索ならやってもまあいいか、ぐらいには思うこともないこともない。
0767nobodyさん2006/05/09(火) 10:11:18ID:???
>>759
ありがとうございます。
設定の参考になるサイトとかはあるでしょうか。
0768nobodyさん2006/05/10(水) 10:01:08ID:???
>>760
すいません。いまいちやり方がわからないのですが、
commons-elのjarをクラスパスに通すだけで使用できるのでしょうか。
web.xmlにも設定が必要なのかなと思い調べてみましたが、
jsp2.0のものばっかりだったので・・・
0769nobodyさん2006/05/10(水) 11:18:10ID:???
768です。
758が言っていた、「JSPボディ部」とは、HTMLをべたで書いている場所ということですね。
勘違いしてました。
jsp1.2では、タグリブのアトリビュート内にしかかけないんですよね。
0770nobodyさん2006/05/14(日) 13:09:01ID:???
<a href="ウェブアプリ自身のパス/hoge.jsp">
と出力したいんだけど、ウェブアプリのパスってどうやって得るのが良いでしょう?
0771nobodyさん2006/05/14(日) 17:03:02ID:???
>>770
HttpServletRequest#getContextPath()。ServletAPIをもっと読もうよ
07727702006/05/14(日) 21:44:46ID:???
<%=request.getContextPath()%>/hoge.jsp
とか、いちいち書かないといけないわけがないと思ってたんだが・・・
標準のtaglibsでなんかないのかね。
0773nobodyさん2006/05/14(日) 21:51:00ID:???
Strutsならhtml:linkタグを使うし
どちらかというと、Webフレームワークに頼る部分なのかも
0774nobodyさん2006/05/15(月) 16:34:07ID:???
質問です。
レスポンスのHTMLをゆっくり出したいのですが、できますか?
0775nobodyさん2006/05/16(火) 02:31:23ID:???
${request.contextPath}/hoge.jsp
0776nobodyさん2006/05/16(火) 02:32:28ID:???
>>774
56kのモデムを使う
0777nobodyさん2006/05/16(火) 10:29:51ID:???
>>774
JSPでは無理。JavaScriptでdocument.writeでhtml1行筒出力
数行ごとにウェイトいれるとか?
0778nobodyさん2006/05/16(火) 16:06:58ID:???
ゆっくり出したいなんて要件、初めて見た。
簡易アニメとかパラパラマンガなのかな?
0779nobodyさん2006/05/16(火) 16:14:39ID:???
そこでAjaxですよ。
0780nobodyさん2006/05/16(火) 23:31:45ID:???
EJBやサーバーサイドJava技術を学習するのにお勧めの書籍ってどんなものがありますか?
0781nobodyさん2006/05/17(水) 00:20:25ID:???
ない。仮に現時点での良書があっても、Java EE 5で上書きされちゃう。
ネットの情報探したほうがいいよ。SunのSDCとかIBMのdeveloperworkとか@ITとかさ。
0782nobodyさん2006/05/17(水) 00:33:15ID:???
>>777
JSPで無理なら、サーブレットでやればいいじゃない


マジレスすれば、フィルター作って出力中にウェイト入れてやればいい。
0783nobodyさん2006/05/17(水) 21:21:53ID:???
>>781
サンクス。
0784nobodyさん2006/05/21(日) 01:39:53ID:yJz5Uytv
初めまして。Java初心者です。
ここで質問すべき内容では無いのかももしれませんが・・。
HTTPヘッダ(リクエストヘッダ)に値をセットするには
どうしたら良いのでしょうか?

JavaのServlet側では、req.getHeader("hoge")で値が取り出せるのは
分かりました。
が、送信側でどうやったら良いのか解りません。
他のHTTPヘッダ(user-Agentとか)と同じ感じでデータを取り出したいのですが・・。

METAタグを使用したらHTTPヘッダに値がセットできるというような事を見つけて、
<META name="hoge" content="abcde">
<META http-equiv="hoge" content="abcde">
とか試して見ましたが、もしかして全然見当違いな事をしてるんでしょうか・・?

試してみたのは以下のような環境です。
1.test.htmlに上記METAタグを記述してPOST
2.POST先にはローカルのTOMCAT上で動いているServletを指定
3.servletでreq.getHeader("hoge");としてみたが、値取り出せず(NULL)

どなたかご存知な方、ご教授いただけないでしょうか?
宜しく御願いします。
0785nobodyさん2006/05/21(日) 02:03:12ID:???
response.setHeader
0786nobodyさん2006/05/21(日) 02:15:56ID:???
ありがとうございます。
それはつまり、「次にリクエストを投げようとする画面」を出力する際の
レスポンスに、予めsetHeader()で値をセットしておけという事でしょうか?
0787"2006/05/21(日) 02:37:14ID:???
>>786
状況的には、自分がブラウザでアクセスしてるんでしょ?
そのブラウザが値を送ってないなら、サーバ(Servlet)側で値が取れるわけないよね。
LiveHttpHeadersとかIEHttpHeadersとかで、やり取りを観察してみたらいいと思う。

あとhtmlのmetaタグは関係ない。
0788nobodyさん2006/05/21(日) 03:00:35ID:???
>>786
次のリクエスト時に値abcdeをリクエストヘッダhogeで送ってくれ、と
ブラウザに指示を出すにはどうしたら良いか?

ということかな。
で、それによって何をしたいんだ?

何をしたいのかによってはCookieが使えそうだが。
0789nobodyさん2006/05/21(日) 03:00:54ID:???
Javaのプログラムからリクエストを発行するなら
URLConnection#setRequestProperty
0790nobodyさん2006/05/21(日) 03:09:07ID:???
皆さんありがとうござます。
やりたい事というのは、認証のみのポータル画面(新規作成)があり、
既存のアプリへシングルサインオンを行いたいんです。
このポータルと各アプリへの情報引渡しにHTTPヘッダを使おうと思っていました。

なので、処理の順番を書くと、
1.ポータルでログイン
2.サーバ側で認証を行い、メニューを表示
3.メニューのリンククリックで、各アプリの処理へ遷移し、
  遷移先のサーブレットでユーザ情報を受け取り、
  今までのログイン処理を行わずに各アプリのメニューを出す
といった感じです。
で、まだポータルの方の処理が出来上がっておらず、とりあえず既存のアプリに
対してベタ書きのHTMLからリンクしてみて、HTTPヘッダに情報を渡せるかどうかを
試していたところです。
0791nobodyさん2006/05/21(日) 05:11:54ID:???
なぁ、Javaのエンジニアってさぁ
「方法」が目的になってるよね。
いちど目を覚ましたほうがいいよ。
自分たちでどんどん面倒なことを増やしているだけの馬鹿です。
会社(顧客)から金をもらって、パズルを解くのが趣味の連中ですよ、お前らは。
0792"2006/05/21(日) 06:08:52ID:???
Javaのエンジニアと誰を比較してそう言ってるの?
0793nobodyさん2006/05/21(日) 07:13:22ID:???
そういう傾向があるのは認めるがスレ違いなのでよそでやってくれ
0794nobodyさん2006/05/21(日) 09:44:44ID:???
>>791
なぜJavaエンジニアに限定されていると思うのか
0795nobodyさん2006/05/21(日) 16:12:04ID:???
>>794
方法が目的になっている(ことが多い)ってことじゃないのかと。
0796nobodyさん2006/05/21(日) 16:35:22ID:???
素直に目的を達成しようと思えば、
当然のように出来てるからってのもあるな。
0797nobodyさん2006/05/21(日) 20:33:52ID:???
>>795
VB屋もC++屋も同じ。
0798nobodyさん2006/05/21(日) 22:09:49ID:???
>>797
おなじじゃねーよ。
0799nobodyさん2006/05/22(月) 03:28:39ID:Oh8EsbuK
>>791
同感。
Javaでプログラミングすると、本来ちからを入れるべきのアルゴリズムの方に頭を使う余裕がなくなるんだよね。
昔のVBの時代は、アルゴリズムに集中できてよかったよ。
0800nobodyさん2006/05/22(月) 04:34:45ID:???
>>799
本当にそれはJavaのせいか?
0801nobodyさん2006/05/22(月) 05:17:29ID:???
Javaでは新しい開発手法がどんどん出てくるから
修得して効率が上がってくるころに陳腐化してしまう
というのはあると思う。
0802nobodyさん2006/05/22(月) 05:31:31ID:???
JSF+EJB3でやっと落ち着いたけどね。
0803nobodyさん2006/05/22(月) 05:47:41ID:???
EJBは糞。絶対流行らん
.netの方が10000倍マシ
0804nobodyさん2006/05/22(月) 06:27:19ID:???
>>803
まあ、2.1までのEJBは糞だと思うけど
EJB3のどのあたりが糞?
0805nobodyさん2006/05/22(月) 07:03:56ID:???
JSFで落ち着くかなぁ。
あれで皆満足するとは思えないよ。
0806nobodyさん2006/05/22(月) 08:26:45ID:???
JSFもEJB3も、もうちょっと現場で鍛えられる必要がありそう
Servlet/JSPの初期バージョンの頃みたいに、標準仕様に加えて実装が提供する拡張機能を使うことになるのでは?
ただし、EJB2まではそもそも現場の実情とかけ離れたものだったから
ようやくJ2EE(JavaEE)が、使える統合環境になるきっかけにはなりそうな気がする
0807nobodyさん2006/05/22(月) 09:03:06ID:???
単にVBだと制限多くてあるもの使うしか無いからアルゴリズムに専念するしか無いのと、
Javaではまともなフレームワーク使ってないから、面倒な所まで実装する手間が多くてアルゴリズムまでたどり着けずに疲れちゃうってだけでは?

まあVBが簡単にできるってのはそう言う製品だし当たり前。
VBだと制限多くて使いにくいと思わないほうが、スキルの低さを露呈している。

Cもまともなフレームワークが無いという点ではVBと同じだ。
JavaのEJBは結構いいとおもうけど。JSPはあんまりメリット無い。JSP使うくらいならPHPで十分だ。
0808nobodyさん2006/05/22(月) 09:30:08ID:???
> JSPはあんまりメリット無い。JSP使うくらいならPHPで十分だ。

はぁ?
0809nobodyさん2006/05/24(水) 01:00:59ID:???
さくっと作りたいならPHPでいいんじゃないか。
ただ堅いシステム作るなら、やっぱJavaだ。Javaのが軽いしね。
■ このスレッドは過去ログ倉庫に格納されています