JAVA+JSP+Struts+Tomcat Part3
■ このスレッドは過去ログ倉庫に格納されています
0001965
2006/10/26(木) 20:41:360237デフォルトの名無しさん
2007/02/25(日) 14:55:40むしろwar化しないメリットを教えてくれ
0238デフォルトの名無しさん
2007/02/25(日) 15:31:060239デフォルトの名無しさん
2007/02/25(日) 15:42:020240デフォルトの名無しさん
2007/02/25(日) 17:09:56war化するのはサーバにデプロイする必要があるからだろ?
開発中はそれこそEclipseでやってればデプロイなんて意識してやら無いだろうし。
0241デフォルトの名無しさん
2007/02/25(日) 17:18:23違う方法でデプロイしても
”ファイルが見つかりません”(TT)
どうすればいいの?
0242デフォルトの名無しさん
2007/02/25(日) 17:24:110243デフォルトの名無しさん
2007/02/25(日) 17:27:02環境は?
そもそもファイルが見つかりませんと言っているのは誰?
0244デフォルトの名無しさん
2007/02/25(日) 17:35:24サーバにデプロイするのになんでwar化するの?
warにしてもデプロイできるけどwarにしないでもデプロイできるよ。
0245デフォルトの名無しさん
2007/02/25(日) 17:55:27war・earデプロイは商用鯖では良くある事
0246デフォルトの名無しさん
2007/02/25(日) 18:04:010248デフォルトの名無しさん
2007/02/25(日) 18:15:21Tomcatが言ってる
Tomcat5.5 Struts1.2.9
0249デフォルトの名無しさん
2007/02/25(日) 20:52:52精神衛生上良い
0250デフォルトの名無しさん
2007/02/25(日) 22:04:39log4j.xml のパスを明示しなくても、クラスパスから勝手に探してくれますよ
Log logger = Logfactory.getLog( XXX.class );
logger.info( "おしらせ" );
とやると、WEB-INF/classes/log4j.xml が読み込まれる。
0251デフォルトの名無しさん
2007/02/25(日) 22:46:320252デフォルトの名無しさん
2007/02/25(日) 22:49:08LinuxサーバでWEB-INF/classes/log4j.xmlを書き換える場合は?
warじゃないほうが簡単に書き換えられるじゃん。
それともIDEでwarを作り直してFTPでアップですか?
0253デフォルトの名無しさん
2007/02/25(日) 23:11:43本来server.xmlなどで対応できるべき。
0254デフォルトの名無しさん
2007/02/25(日) 23:15:29Struts2を落としたものの、どうにも入力補完がorg.apacheに対応してない
なぜだ?と思っていたら別物?
Struts2のところにBest Availableって書いてあったのに?
もしおかしなことを言っているようでしたら、ご指摘をお願いします
こんなことに時間かけ過ぎだ>俺
0255デフォルトの名無しさん
2007/02/25(日) 23:22:340256デフォルトの名無しさん
2007/02/25(日) 23:35:47ちがう。
以前はShaleがStruts2と呼ばれていたが、
今のStruts2.xはWebWorkから引っ越してきた、全くの別物。
ShaleはStrutsプロジェクトから独立して
Apache Shaleプロジェクトで開発が進んでいる。
0257デフォルトの名無しさん
2007/02/25(日) 23:36:28>本来server.xmlなどで対応できるべき。
特定の製品依存にしろと?
0258デフォルトの名無しさん
2007/02/26(月) 00:07:19テスト鯖だったらwarじゃない方が簡単って意見もわかるが。
まあ、漏れはear派だけど。
0259デフォルトの名無しさん
2007/02/26(月) 09:46:02違ってましたか。ありがとうございます
何がなんだかわけがわからない
0260デフォルトの名無しさん
2007/02/26(月) 23:30:5754,57で少し出ていたのですが、strut-validaorで、
Aフィールドが「電話」のとき、Bフィールドでは電話番号のチェックを
Aフィールドが「mail」のとき、Bフィールドではメールアドレスのチェック
と言う風に、Aフィールドの値によってBフィールドの検証方法を動的に
変えることは可能なのでしょうか?
できれば、具体的な例で教えてほしいです。
54,57見ていると1つのフィールドに対しチェックをするというものだと
思っていた自分からすると目から鱗なのですが、
もう少し進んだこともできたりするのではないかと思い
書き込みました。
上記ができると、非常に便利なのですが・・・
0261デフォルトの名無しさん
2007/02/26(月) 23:41:29それはさすがに標準のルールのみでは無理。
ルールを自作するしかない。
でもロジックは標準のものを呼び出したり流用したりでいけると思うから
そんなに難しくないと思うよ。
0262デフォルトの名無しさん
2007/02/27(火) 08:17:16log4j.xml は適当な場所(conf/とか)に置いてるね。
0263デフォルトの名無しさん
2007/02/27(火) 12:16:540264デフォルトの名無しさん
2007/02/27(火) 22:04:06画面のちらつきを抑えるという理由で、全画面Ajax対応です…
複雑なAjaxを余り意識せず、Strutsの開発イメージで
構築できるライブラリってないですか?
探しても見つからなかったもので。
そもそも、ちらつきを抑える方法がAjax以外にないものかと…
0265デフォルトの名無しさん
2007/02/27(火) 22:05:040266デフォルトの名無しさん
2007/02/27(火) 22:38:22ページ遷移する時にタラタラ描画がされるというのなら
単に回線インフラとか鯖のレスポンスの問題だと思うが。
0267264
2007/02/28(水) 02:15:33ピカッと光るようなものがちらつきです。
自画面を再表示時に、画面が更新されていないようなイメージを
目指しています。
0268デフォルトの名無しさん
2007/02/28(水) 06:40:24ヤフオクの残り時間表示もそういう意味では多少チラついたりするんだが、
かなり無駄というか本質的でない事に体力使えて羨ましいというか
なんというか・・・。
0269デフォルトの名無しさん
2007/02/28(水) 07:41:00画面内で実際に更新する内容が限られてるのなら
Ajaxは有力な選択肢になる
Strutsで作っているのなら、手っ取り早いのはServletResponseから
Readerを取得して、そこにJSON型の結果データを出力すればいい
0270デフォルトの名無しさん
2007/02/28(水) 08:14:57meta refreshかなんかで無理やり実装してるってことか。新しいな。
しかし、Ajaxの自動実行はどうやるつもりだ?
JavaScriptにsleepはないが・・・
0271デフォルトの名無しさん
2007/02/28(水) 08:58:510272デフォルトの名無しさん
2007/02/28(水) 09:16:54027336
2007/02/28(水) 09:49:28すまん。レス番間違えた。
なんでwar化しないのか俺が知りたかった。
>>244
warにしないと汚くなるじゃないか。
ゴミが溜まって処理できなくなるし
他のバカ顧客が勝手な配備をさせしないためにも
意図的にwar化しておくべき。
所定のディレクトリ以外に置いた場合は保証をしないと
そうやって、顧客に圧力をかけておかないと
0274デフォルトの名無しさん
2007/02/28(水) 09:51:17もっと頭使えよ。
log4jは別のとこに置け。
といっても、どっちみちclassに自動展開されれば勝手に弄れるし
0275デフォルトの名無しさん
2007/02/28(水) 11:31:470276268
2007/02/28(水) 15:10:54まぁ、そんなとこです。
>>271
それ使います。
>>272
JavaAppletも検討しましたが、Ajaxになりました。
・要員が集まりにくい→工数増
・Ajaxより重い?微妙です。
>>267
なるほどJSONという型があるのですか。
最大で、縦10列、横行列のHTMLテーブル全ての値を更新するデータ量です。
JSONはオブジェクト型のようで、この辺りが心配です。
まぁ、XMLよりは早いでしょうけど。
ActionクラスでReaderを使うというのも参考になりました。
サーバー側は画面遷移機能と開発のしばりという意味で
Strutsを使っておきたいですので。
(それほど強い縛りではないですが…)
他にも助言あれば頂きたいです。
0277デフォルトの名無しさん
2007/02/28(水) 22:39:40サーバー側でXML・XSLとか直接テーブルのHTMLを文字列で作ってinnerHTMLでいいやん。
どうしてもJSONで受けたいならJSON渡すだけでテーブル作ってくれるようなjavascriptのライブラリを探せば?
特定列を固定できてスクロールできるようなテーブルとか作ってくれるのもあるし。
0278268
2007/03/01(木) 00:33:18確かに。JSONで受けて、クライアントでゴリゴリする必要はないですね…
クライアント側が複雑になりそうですし。
>JSON渡すだけでテーブル作ってくれるようなjavascriptのライブラリを探せば?
探しましたが見つからなかったです。
ActionクラスでDB検索→HTML生成→Reader書き込み→return nullってやつですかね。
0279デフォルトの名無しさん
2007/03/01(木) 00:38:24そもそもapacheって必要? セキュリティや詳細なアクセスログをとりたい
のなら別ですが、オールインワン構成であれば、余計な負荷をかける
だけになると思うのですが、実際のところどうでしょう。
書籍等で、apache + Tomcat の連携が多かったものですから。
0280デフォルトの名無しさん
2007/03/01(木) 01:23:40悪い、ReaderじゃなくてWriterだったw
というか、XML or HTMLなら、Writerに書くんじゃなくてJSPやVelocityを
テンプレートで使ったほうがいいと思う
0281デフォルトの名無しさん
2007/03/01(木) 01:28:11とある事情があってWebアプリごとにTomcatのホームディレクトリ配下以外の場所に
Jarとか設定ファイル類をおきたいんだけど。
0282デフォルトの名無しさん
2007/03/01(木) 01:51:09つ[WEB-INF/classes or WEB-INF/lib]
0283デフォルトの名無しさん
2007/03/01(木) 21:59:47ログに残すことってできないでしょうか?
0284デフォルトの名無しさん
2007/03/01(木) 22:10:07つ TCPモニタ
0285デフォルトの名無しさん
2007/03/01(木) 23:04:57感動しますた。ありがとうございます。
0286デフォルトの名無しさん
2007/03/02(金) 01:20:02そこ以外でWebアプリごとにJarファイルを置く場所はやっぱり無理なのかな。
リビジョン違いのWebアプリを1台のマシン環境で確認できる環境を作りたいから
環境変数CLASSPATHでもできないし。
Tomcatそのものを環境分分けるとかしないとダメかな
0287デフォルトの名無しさん
2007/03/02(金) 09:17:27Apacheとの連携でできる
0288デフォルトの名無しさん
2007/03/02(金) 09:43:520289デフォルトの名無しさん
2007/03/02(金) 17:56:300290260
2007/03/05(月) 00:20:42ってことは、struts-validatorを利用することは可能なのですね。
独自のvalidatorルールズ作れば良いと。
ただ、フィールドの値を2つないし3つチェックする為には
validator-rules.xmlに追記しないといけないと思うのですが、
どのようにすればよいのでしょうか?
それとも、各プロパティに適用するValidatorルールをvalidation.xml
なんかに記述してそれを見るのか・・・
ググッても2つのフィールドをっていうのが出てこないので困ってます。
validation.xmlにform名とフィールどと対応するjavaクラス(チェッククラス)
を記述し、validator-rules.xmlにvalidation.xmlの呼び出し部分を記述する
見たいな感じなのでしょうか?
上記みたいな説明でわかりやすく教えていただけないでしょうか?
お願いします。です。
0291デフォルトの名無しさん
2007/03/05(月) 00:37:44StrutsとCommons Validatorのソースとにらめっこすれば、
そう難しいことではないんだけどね・・・
ここで手取り足取り教えるのは正直めんどいので・・・
ぐぐより先に、公式ドキュメント。
http://struts.apache.org/1.3.5/faqs/validator.html
↑このへんからリンクのある
http://www.raibledesigns.com/rd/date/20030226#struts_validator_validating_two_fields
このへんを参考に汁。
あくまで、参考だから、応用が必要。
ズバリ正解そのものではないので注意。
0292デフォルトの名無しさん
2007/03/05(月) 13:30:48classes12.jarが10gに入ってないみたいなんですけど
どうしたらよいでしょうか?
0293デフォルトの名無しさん
2007/03/05(月) 13:43:02otnからDL
0294デフォルトの名無しさん
2007/03/05(月) 13:58:58というかjarファイル名いい加減変えろよな。classesじゃ何のjarかわかんね。
0295デフォルトの名無しさん
2007/03/05(月) 15:26:270296デフォルトの名無しさん
2007/03/05(月) 15:42:29いけないんですか?
0297デフォルトの名無しさん
2007/03/05(月) 20:12:590298デフォルトの名無しさん
2007/03/05(月) 22:28:120299デフォルトの名無しさん
2007/03/05(月) 22:31:14ファイルとかDBとかにインスタンスを保存する場合じゃないの?
0300デフォルトの名無しさん
2007/03/05(月) 22:38:29HttpSessionそのものがシリアライズ対象だから、
HttpSessionに入っているオブジェクトがシリアライズされていないと、
例えばコンテナ起動・停止時やクラスタリングのレプリケーション時に
HttpSessionのシリアライズ・デシリアライズに失敗して
正常にSessionを維持できなくなる。
0301デフォルトの名無しさん
2007/03/06(火) 00:58:54とっくに変わってるが。
0302デフォルトの名無しさん
2007/03/08(木) 03:13:30途中で切れるのですが、これはJVMの問題でしょうか?
0303デフォルトの名無しさん
2007/03/08(木) 07:41:030304デフォルトの名無しさん
2007/03/08(木) 07:45:240305デフォルトの名無しさん
2007/03/08(木) 11:00:45変えたり、他のパターンに変えようかなと思っているのですが、一般的にはどの
ように変えることが多いでしょうか。
静的なページも含めすべてのページの拡張子を.jspに統一して、Actionを.doで
はなく.htmlにしている人がいるのですが、こういうのもありでしょうか。
0306デフォルトの名無しさん
2007/03/08(木) 11:11:410307デフォルトの名無しさん
2007/03/08(木) 16:29:59久しぶりにtomcatをダウンロードして(5.5.20)サンプルを作り始めました。
質問:
以下の○1.と、○2. はやっていることは同じだと思ってよいですか?
みなさんは○2.をいつもやっていますか?
○1.
ある web アプリの中で
input.html (HTML form があって、適当に日本語を入力させる) → ResultServlet.java
みたいにつくったとします。
input.html の form のテキストボックスで日本語を入力して、
ResultServlet.java のなかで String name = (String) request.getParameter("name") すると、日本語が化けてしまいます。
input.html は Shift_JIS で作っているので、ResultServlet.java の request.getParameter() の前に
request.setCharacterEncoding("Windows-31J");
を入れたことで回避できました。
0308307
2007/03/08(木) 16:30:29○2.
http://www.nihon-eng.co.jp/c-break/TechNote/tomcat/TCAT55_Inst.htm#web.xml
(リンク元は http://www.nihon-eng.co.jp/c-break/TechNote/tomcat/TCAT55_MnFrm.htm )
をみると、自分の web アプリの web.xml に以下を追記せよとあります。
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>filters.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>Shift_JIS</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
これは、その web アプリへ飛んできた全ての http request に対して、
filter がまず横取りして、文字コードを全て Shift_JIS (Windows-31Jのほうがいいかなと思いますが)に
変換してから、各 Servlet や jsp に処理が移るというように理解してます。
0309デフォルトの名無しさん
2007/03/08(木) 23:41:21>以下の○1.と、○2. はやっていることは同じだと思ってよいですか?
一緒だと思ってもらっていいともいます。
>みなさんは○2.をいつもやっていますか?
はい。普通はそうすると思います。
以上です。よろしくお願い島す。
0310デフォルトの名無しさん
2007/03/09(金) 15:38:36どのようなものがあるでしょうか?
0311デフォルトの名無しさん
2007/03/09(金) 15:46:030312デフォルトの名無しさん
2007/03/09(金) 16:05:19えっとASPの場合はリンクのような方法があるのですが
JSP/Servletにも同様のものがあるかなと思いまして。
http://www.katch.ne.jp/~h-inoue/tips/asp/0001.html
0313デフォルトの名無しさん
2007/03/09(金) 16:57:11こんなのがあったぞ
0314デフォルトの名無しさん
2007/03/09(金) 17:04:03よさげですね。ありがとうございます。
0316デフォルトの名無しさん
2007/03/10(土) 09:12:30再送信しますか?っていうダイアログ出ますか?
基本forwardだから出ると思うんですが
0317デフォルトの名無しさん
2007/03/10(土) 10:31:410318デフォルトの名無しさん
2007/03/10(土) 10:56:36フォームをPOST送信した後、forwardした場合の話かな?
それなら、出るよ。
>>317
使えます。
0319デフォルトの名無しさん
2007/03/10(土) 11:19:52出ないようにするとStruts使う意味なくなりますか?
0320デフォルトの名無しさん
2007/03/10(土) 11:43:48べつにかまわんよ
0321デフォルトの名無しさん
2007/03/10(土) 12:26:09案件次第
0322デフォルトの名無しさん
2007/03/11(日) 04:07:55どっかのOSS系のベンチマークを取ってる協会?によると、
tomcat4系までは遅く、5系から劇的に速くなるらしい。(高負荷時)
0323デフォルトの名無しさん
2007/03/11(日) 17:17:37formからpostするときには
postされたservletが次のservletにredirectして
そのservletからjspにforwardするのがいいですかね
0324デフォルトの名無しさん
2007/03/11(日) 20:56:03なぜそんな回りくどいことをしたいのか理解に苦しむが、
そもそもこのスレのお題であるStrutsを使ったら、普通はそうはならんけどね。
0325デフォルトの名無しさん
2007/03/11(日) 21:25:200326デフォルトの名無しさん
2007/03/13(火) 16:08:54シリアライズがimprementsされていないのですが
なぜでしょうか?
0328デフォルトの名無しさん
2007/03/13(火) 18:11:420329デフォルトの名無しさん
2007/03/13(火) 21:39:19雑誌に掲載されているものが全て正しいと思ってはいけない
0330デフォルトの名無しさん
2007/03/14(水) 21:15:39ttp://itpro.nikkeibp.co.jp/article/NEWS/20060515/237790/
0331デフォルトの名無しさん
2007/03/16(金) 21:46:12その中に置いてあるファイルがあたかもルートにおいてあるかのように動くんだけど、
これってTomcatの設定とかでできるもんなの?
0332デフォルトの名無しさん
2007/03/16(金) 23:05:390333デフォルトの名無しさん
2007/03/16(金) 23:33:55Eclipse+WTPで開発してる人はまったく問題がないんですよ。
Tomcatの起動もEclipse上からするわけだし。
そうじゃない人がいるのよ。Eclipse重いから嫌なんだと。
で、その人がアプリを落としてきて
/APP名/WebContent/index.htmlのファイルに
http://...../APP名/index.htmlでアクセスしたいわけです。
で、Eclipseの人達はWebContentの下にあるindex.htmlはあたかもAPPの直下に置いてあるかのようにアクセスできるけど、
後者の人はhttp://..../APP名/WebContent/index.htmlじゃないと開けない。
これをなんとかしたい。
うまく説明できんな。
0334デフォルトの名無しさん
2007/03/17(土) 00:11:370335デフォルトの名無しさん
2007/03/17(土) 01:05:00http://tomcat.apache.org/tomcat-5.5-doc/config/context.html
ただ、コンパイルした.classはどうすんの?
WTPはワークスペース内にアプリケーションの構成を作成してそれをデプロイしてるからいいけど
xdocletでも使うのかい?
もし、そうならwarにしてデプロイしてしまえばいいじゃないの?
何がしたいのさっぱりわかrん
0336デフォルトの名無しさん
2007/03/17(土) 01:13:46apache-tomcat-5.5.23-src.tar.gz
をダウンロードしてきたのですが、
servletapi/jsr154/src/share/javax/servlet 以下のソースは
public String getPathInfo();
みたいな感じで肝心のメソッドの中身が書いてありません。
メソッドの中身が書いてあるソースは公開されていないのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています