■■ 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
0116+++
04/07/29 18:03ID:???そんなに難しいことかな?
更新しようとしたけど、更新された行が無かった場合、データ定義文の場合、0(個)。
そもそも更新文やデータ定義文でない場合には-1(無効)。でないの。
011790
04/07/30 16:43ID:yLc4dhHnついでにもう一つ教えて頂けますでしょうか?
TomcatとApacheの連携を試みているんですが、ttp://www2s.biglobe.ne.jp/~yuuki_ki/index.htm
で説明されている連携モジュールmod_jk2の最新版を落として解凍しようとするんですが
エラーが発生してうまく解凍できません。どなたかお分かりの方いらっしゃいますでしょうか?
0118nobodyさん
04/07/31 15:46ID:tUzKMz6s0119nobodyさん
04/07/31 16:39ID:???0120nobodyさん
04/08/03 21:28ID:VbQ2TKow日付を意味する文字列をString型で
20040101のように保持していて、これを
2004/01/01や2004/01のようにいろいろなフォーマットで表示したい
のですが、カスタムタグをつくるしかないでしょうか?
JSTLのDateFormatもDate型しか表示できないし。
0121nobodyさん
04/08/03 22:03ID:???0122nobodyさん
04/08/03 22:41ID:???何使うの?
0123nobodyさん
04/08/03 23:06ID:???0125nobodyさん
04/08/03 23:47ID:???その部分が大変だから聞いてるんですが。
入力は2000/01/01だがDBに格納する形式は/なしの形式。
その変換をどこでやるかっていうのが考えどころで。
プレゼンテーション層でやるのか
ActionFormにgetter,setterを複数用意して形式を変えられるようにする
のかBusinessObjectにその変換ロジックをいれるのか、
どれがいいのかなぁと。
0127nobodyさん
04/08/04 00:10ID:???むしろjavaでやらなきゃいけないような処理ですらなく
へたすりゃSQLで事足りる
0131nobodyさん
04/08/04 08:36ID:???0132nobodyさん
04/08/04 19:27ID:???フィルターServletか?
0133nobodyさん
04/08/04 20:03ID:???継承して使ってんだろ。
0134nobodyさん
04/08/04 20:21ID:???せいぜいリクエストのエンコード設定くらいだと思うが。
それでもフレームワークに依存しすぎるからあんまりやらないと思うけど。
0135nobodyさん
04/08/04 21:03ID:???0138nobodyさん
04/08/04 22:19ID:???そもそもActionServletに処理書こうとするな。
で、カスタムタグ作るにしても
結局Javaソースの中で処理しなくちゃいけないのは変わらないから
それができない>>120には無理だろう。
0139nobodyさん
04/08/04 22:29ID:???0140nobodyさん
04/08/04 22:41ID:???ActionFormにIntegerとかDateとかで定義すると
かなり問題出るぞ
0142nobodyさん
04/08/04 22:57ID:???理由書け
0144nobodyさん
04/08/06 02:16ID:m1crs8XBWebSphere+Apache+SSLでWEBアプリケーションを開発しているものです。
クライアントからのPOST要求でサーバの処理が行われ最終的にクライアントに
JSPがフォワードされるプログラムがあります。
ここで何らかのサーバの問題で処理が遅くなり1時間以上サーバ側の処理が続く
状態が発生しました。
それは問題ではないのですが、問題はちょうど1時間後に1時間前に行われた
クライアントからの直前のPOST要求がGET要求でサーバに送信されてしまいます。
Apacheの設定ファイル、SSLの設定ファイル、WebSphereの設定ファイル、
ブラウザの設定を確認しましたが、1時間もしくは60分というキーワードの設定を
見つけることができませんでした。
これは、何のタイムアウトが発生しているのでしょうか?
また、どうしてPOST要求がGET要求として再度要求されてしまうのでしょうか?
初心者なものでどう調べていけばよいか方向性がわかりません。
ご存知の方ご教授お願いします。
サーバ
OS:RedHatLinux AdvancedServer 2.0
easサーバ:WebSphere AES 4.0.5
webサーバ:apache1.3.20
クライアント
OS:Windows2000 SP4
ブラウザ:IE6.0 SP1
0145nobodyさん
04/08/06 22:26ID:???0146nobodyさん
04/08/07 00:50ID:Zg5LLU2K1時間以上サーバ側の処理が続く状態が発生すること自体プログラムが悪いと
認識しています。
それはじゅうじゅう承知の上で、1時間以上サーバ側で処理が続いた状態で
ちょうど1時間後に1時間前に行われたクライアントからの直前のPOST要求が
GET要求でサーバに送信されることがなぜ行われているのかを知りたいのです。
0147nobodyさん
04/08/07 08:32ID:???GET要求
ってAPサーバーのほうの問題か?
こんな動作きいたことねえ
0148nobodyさん
04/08/07 13:18ID:s4CRkah5こういう問題は実際にブラウザからリクエストしてみないとわかんないな
URLは?
0150nobodyさん
04/08/07 22:21ID:???0151nobodyさん
04/08/11 00:04ID:ElKnDymWデータベースアクセス部分はサーブレットにやらせて、
表示だけをJSPにやらせるのがいいの?
簡単なデータベースアクセスとかその結果にもとずくロジックくらいならJSPに埋め込んじゃって(となると全部jspになりそう)もいい?
0152nobodyさん
04/08/11 00:28ID:???JSPは表示のみ。表示以外の仕事はServletとJavaBeansの役割。
データベースへアクセスするのはJavaBeansがいいよ。
JavaBeansにデータベースへアクセスする処理をメソッドとして実装しておく。
0153nobodyさん
04/08/11 00:56ID:???V→JSP
C→Servlet
で設計すれば大体間違いない。
0154nobodyさん
04/08/11 01:05ID:???0155nobodyさん
04/08/12 02:03ID:yCeAYIgq<% %>でHTMLコードに埋め込むのやめて、すべて新規タグで
コントロールするってことでいい?
0156nobodyさん
04/08/12 22:08ID:vrm/xuIg起動しようとすると「service not found」というメッセージが出て起動できません。
原因わかるという方いたら助言を・・・お願いします。
0157nobodyさん
04/08/12 23:27ID:???などを書かずに誰に答えられようか。
ここまで厨な質問だと、JAVA_HOME環境変数などの環境設定もまともにできているのかアヤシイ。
0158156
04/08/12 23:50ID:vrm/xuIgOS:Win2000、tomcat:5.0.19.exe、J2SDK1.4.2_04、Eclipse2.1.3
を使ってJSPを動かそうとしています。
環境変数はPATH、CLASSPATHを変更していて、
JAVA_HOMEは変えていません。(ここが原因っぽいですか?)
「EclipseではじめるJavaプログラミング入門」-秀和システム-
を参考にしてるんですが、詰まってしまい色々
(http://www.eclipsewiki.net/eclipse/ ←こことか)調べています。
0159nobodyさん
04/08/13 00:20ID:???> 環境変数はPATH、CLASSPATHを変更していて、
> JAVA_HOMEは変えていません。(ここが原因っぽいですか?)
どう設定されてんだよ?
TomcatはWindowsのサービスとして起動されていないよな?
ウィンドウ→設定→Tomcatの設定はどうなってる?
0160156
04/08/14 14:35ID:8nnsgsjWご指摘の通りで、Eclipseの設定を
--------------------------------------------------
バージョン5.x
[tomcat ホーム]、[tomcat ベース]
C:\Program Files\Apache Software Foundation\Tomcat 5.0
[設定ファイル]
C:\Program Files\Apache Software Foundation\Tomcat 5.0\conf\server.xml
--------------------------------------------------
にしたらEclipseからtomcatが起動できました、ありがとうございます。
http://localhost:8080/ の表示を確認。
スタート→プログラム→Apache tomcat→start tomcat
からだと起動できないのですが、その辺とJAVA_HOMEが関係してるのでしょうか?
試しにjspファイルを
http://localhost:8080/○○/○○.jsp
で置いてみたのですが表示はうまくいかず・・という状況です。
ひとまずtomcatが起動できたので、もうちょっと勉強してみます。
0161nobodyさん
04/08/14 22:37ID:???導入先を\opt\tomcatとか短めのパスにしておくと便利。
5.0.19はアンインスコして5.0系の最新版をとってこよう。
それとCLASSPATH環境変数は未設定の方が無難です。
0162nobodyさん
04/08/19 01:06ID:yKd1d6+Ewebアプリにアクセスするのを防ぐために
webserverの発行するセッションIDを使うかと思うのですが、
複数ブラウザを立ち上げてそれぞれRequestをとばすと
みんな違うセッションIDになってしまうのですが
これはどうにかして同じセッションIDにすることは出来ないのですか?
webserverはtomcatです。
0163nobodyさん
04/08/19 01:16ID:???> webserverの発行するセッションID
Servletコンテナが発行するセッションIDじゃなくて?
> みんな違うセッションIDになってしまうのですが
そうとは限らんだろう。ブラウザの実装による。
ネスケやMozilla使えばおまいの望み通り。
0164162
04/08/19 01:20ID:yKd1d6+EIEではどうやったら取れるのですか?
またtomcatやjavaアプリ側での実装は特に無いですか?
0165nobodyさん
04/08/19 01:52ID:???IEとMozilla以外にもブラウザがあるわけでCookie(=セッションID)を共通にはできない。
インターネットサービスではダメだけど、
特定のイントラ用ならIPアドレスベースで制限はできる。
具体的にはServletContextにIPアドレスとセッションIDの組み合わせを保存して、
同じIPアドレスで違うセッションIDがきたらどちらかを無効とする、とかね。
0168nobodyさん
04/08/19 22:22ID:MlLVsLbp"hoge.jsp"の部分を動的に生成させて実行させたいんですが
何か方法はありませんか?
0170nobodyさん
04/08/22 23:12ID:???<jsp:include page="hoge.jsp" />
を含むJSPを変換したソースを見たらヒントになるよ。
0171nobodyさん
04/08/23 23:41ID:???a.jsp をthread.sleepとかで停止しておいて
b.jsp で何らかの条件を満たしたときに a.jspの処理を再開するようなことが
したいのですが
0172nobodyさん
04/08/24 00:16ID:???でもその設計はHTTP的にどうかとはおもう。
よくわからんけどJavaScriptでやりたいことを実現できない?
0173nobodyさん
04/08/24 00:21ID:???インチキっぽい処理であることはわかってるんですが、
これじゃないとダメなんですよ・・・
共有ロックですか、できるかもしれないですね。
ヒントどうもです。調べてみます。
他にも案があったら教えてください〜
0174nobodyさん
04/08/24 21:35ID:???>a.jsp をthread.sleepとかで停止
この意味が分かんないんだけど。
ブラウザへの返信を一時的に止めるのか?
0176nobodyさん
04/08/25 19:06ID:5mR4N6EBTomcat5
Redhat9
を使ってますが、tomatってserver.xmlを変更したのを
反映させるのにshutdown.sh→startup.shする以外に
方法は無いんでしょうか?
0178DLLの呼び出しについて
04/08/26 18:23ID:4hodo1PVコーディングはどのようにしたらよいのでしょうか?
初心者ですが、お願いします。
0179nobodyさん
04/08/27 11:38ID:???初心者って怖いねー
0180nobodyさん
04/08/27 12:04ID:???それをServletからも利用したいってだけじゃない?
怖いってのは直接DLL呼ぼうとするとJNIになるからかな。
商用のミドルウェアで仲介してくれるものはありそうだけど、
まんどくさくなければDLL側をXML-RPCかSOAPに対応させるとか。
0181nobodyさん
04/08/27 17:12ID:wHOJNHLn何でserver.xmlをいじるの?
META-INF/context.xmlで処理できない内容なのか?
0183nobodyさん
04/08/27 21:45ID:3FMq/ALV毎回(ファイルを書き換えるたびに)読み直すには、どうやれば良いのでしょうか。
0185nobodyさん
04/08/29 00:01ID:pEpPey9PEcripseを強制終了、PCを再起動させたのですが、
そのあとからjsp(Serveletのファイルもインポートしています)を実行させると
[exception]
javax.servlet.ServletException: org/apache/jsp/main_jsp (wrong name: org/apache/jsp/typing/main_jsp)
[root cause]
java.lang.NoClassDefFoundError: org/apache/jsp/main_jsp (wrong name: org/apache/jsp/typing/main_jsp)
というエラーが発生するようになってしまいました。
強制終了する前までは問題なく動いていました。
強制終了後はEclipce、Tomcat、Apacheを起動させただけで、
ほかに何もいじってはいません。
どこが原因か分かる方がいたら教えてください。
環境:Eclipse2.12 Tomcat4.1+Apache2(ApacheとTomcatを連携させています。)
0186185
04/08/29 00:56ID:???work\org\apache\jsp内のクラスファイルを削除したら
動くようになりました。
0187nobodyさん
04/09/02 05:57ID:lvO3lvlSTomcat+StrutsでWebアプリケーション作ってて,
その一部のクラスをWebサービスとして公開したいんですけど,
そんなとき何を使うのがイイですかね?
できれば,クラス情報からWSDLを自動で出力してくれるような
ヤツがうれしいんですけど...Axis?WSDP?何を使えばいいか
よくわかりません.
0188nobodyさん
04/09/03 16:31ID:DRxnB3uTprivate String mode2;
public void setMode(String mode) {
mode2 = mode;
}
public String getMode() {
return mode2;
}
public void setSql() {
if(mode2.equals("high")) {
(略)
}
else {}
}
}
このようなServletのソースで、JSPからsetMode()を呼び出して
mode2にhighという文字を代入したあと、
JSPでgetMode()を呼び出した場合はちゃんとhighという文字が
表示されます。
しかしsetSql()のif文で使っているmode2がnullになってしまって
います。
どこに原因があるのでしょうか?
0189nobodyさん
04/09/04 00:07ID:???0190nobodyさん
04/09/12 00:17:55ID:???hoge.jspで別のフォームからPOSTされたものを処理するテストをしてるんですが、
直で hoge.jsp を呼び出すとヌルポが出てしまってどうしたらいいでしょうか。
0191nobodyさん
04/09/12 00:37:30ID:???そのPOSTされると期待しているデータが、存在するかどうか調べてから使えばよろし。
JSPだけで組むならサニタイズなども自前でしないといけないので、
そのあたりのセキュリティホールには十分気をつけてくださいね。
0192nobodyさん
04/09/12 00:47:28ID:???なるほどー、ありがとうございます。
if (request.getParameter("mona")==null){}
てな感じでできるんですねー。
Perlとはちょっと使い勝手が違うので戸惑ってました。
サニタイズもちょっと調べてみます。
やっぱり参考書なしだときついなorz
0193nobodyさん
04/09/17 12:44:39ID:E+OusJmI連携させようとしてるのですが、
http://www.atmarkit.co.jp/fjava/rensai2/jspservlet03/jspsevlet03_1.html
とかを見ると、mod_jk2.「dll」となってますが、どこにいってもそんなファイルがなく
mod_jk2.soしかありません。apacheのmodulesにも.soのファイルばかりです。
で、mod_jk2.soをmodulesに入れて
LoadModule jk2_module modules/mod_jk2.so
って書いて起動すると、
「指定されたモジュールが見つかりません」
といわれてapacheが起動しなくなります。
.dllのmod__jk2じゃないとダメなんでしょうか?.soので使えてる人いますか?
0196nobodyさん
04/09/21 09:22:01ID:x433gLZEがEJBのいい本だと教えてもらいますた
が、金無いのでJbossでやろうとしてます。
上記の本は、JBossユーザにとっても結構役に立つでしょうか?
それともWebLogicユーザに特化した内容でしょうか?
内容をご存じの方がいたら教えてください
0197nobodyさん
04/09/21 17:28:53ID:ofc0HygHをエンコードする前にもどしてもらえませんか??
0199nobodyさん
04/09/21 17:52:16ID:ofc0HygHそうですか…すみませんでした
0200nobodyさん
04/09/21 17:53:21ID:???0203nobodyさん
04/09/21 18:47:37ID:ofc0HygH0204nobodyさん
04/09/21 21:53:10ID:y/lpdeTT優しいお兄さんが教えてあげる。
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/net/URLDecoder.html
ここを読め
0208nobodyさん
04/09/27 19:04:40ID:OBdtZp+8考えてます。
--------------------
ブラウザからjspを呼び出す
(jspへのリクエストには引数がついており同時にいくつか違う処理が流れます)
↓
jspでDBデータの処理(10分ぐらい)
↓
処理終了後、ブラウザに結果を表示
--------------------
で、途中でjspのバッチを止めたい場合の止め方でいい案は無いでしょうか?
シグナルとか例外とかでとめられるといいんですけど、
どうやってjavaで発生させたらいいかわかりません
全部とめるのではなく特定のもののみ止めたいのです。
環境としてはtomcat5.0.28でクライアントからはProxy経由でアクセスしています。
0209nobodyさん
04/09/27 20:21:11ID:???ていうかストップするタイミングとかはどうやって決めんだよ、それ
どこが引き金になって止まるんだ?
0210nobodyさん
04/09/27 20:30:57ID:OBdtZp+8ストップするのは別のリクエストを出したら、それを受信したjspから
何らかのイベントを発生させることでストップしたいと思ってます。
が、それで例外発生させると全部同時に止まって特定のジョブだけ
止めるとかできないですよね。
ってとこらへんで悩んでます・・・なんかいい方法ないですかね
0211nobodyさん
04/09/27 22:21:52ID:???セッションに止める画面から値を保存して、動く画面のプロセスから
それを読むという方法はどうだろう。
俺も興味があるから解決したら報告してね。
0212nobodyさん
04/09/27 22:43:10ID:???>動く画面のプロセスから それを読むという方法はどうだろう。
処理中に割り込めないので、読み込める状態になったときには
処理が終わってそうです。
なにか割り込める方法があればいいんですけど・・・
0213nobodyさん
04/09/27 23:23:40ID:???どのプログラムがいくつ起動してるかとか
どのプログラムが負荷が高いかとか
任意のプログラムを強制終了させるとか
いうような管理機能っぽい機能って無いですか?
ありそうで無い感じなんですが。
0214nobodyさん
04/09/28 00:05:56ID:???プログラムとして起動しているのは常にJVMひとつだけ。
OSの管理機能を使ってJVMの負荷を調べればよい。
強制終了するにはJVMのプロセスをkillすればよい。
■ このスレッドは過去ログ倉庫に格納されています