JAVA+JSP+Struts+Tomcat Part3
■ このスレッドは過去ログ倉庫に格納されています
0001965
2006/10/26(木) 20:41:360300デフォルトの名無しさん
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();
みたいな感じで肝心のメソッドの中身が書いてありません。
メソッドの中身が書いてあるソースは公開されていないのでしょうか?
0337デフォルトの名無しさん
2007/03/17(土) 01:40:450338デフォルトの名無しさん
2007/03/17(土) 04:56:20まずはフォームから入力したデータを読み込んで(ここまではできます)
GIFかJPEGで動的に円グラフを描いて表示することを目標にしようかと思ったのですが、
これにかかわるキーワードをいくつか提示して頂けませんか?
(それを手掛かりに調べてみようと思います)
Java自体まだ始めたばかりでして、何から始めたらいいのかよく分からないのです。
0339デフォルトの名無しさん
2007/03/17(土) 06:35:23JSPとSVGでググればそれっぽいサンプルが見つかるがこれくらいのでいいのか?
0340デフォルトの名無しさん
2007/03/17(土) 08:38:29まずはここから始めようと思います、ありがとうございました。
0341デフォルトの名無しさん
2007/03/17(土) 19:25:43struts-taglib.jarみたいにtldがjarにまとめられていて
JSP上でtaglib指定したいんだけど、どーすりゃいいの?
tldがバラけてたら
<%@ taglib uri="/WEB-INF/lib/struts-bean.tld" prefix="bean" %>
な感じでいいんだけど
<%@ taglib uri="/WEB-INF/lib/struts-taglib.jar/struts-bean.tld" prefix="bean" %>
じゃimport出来てないみたいだし…
わざわざjarファイルバラすの?それだと確かに問題ないんだけど、なんか
違う気がするし…
0342デフォルトの名無しさん
2007/03/17(土) 19:41:33http://struts.apache.org/tags/struts-bean とか。
0343デフォルトの名無しさん
2007/03/17(土) 19:50:15あーあー、そうか、すごい勘違いしてたかも。どうもありがとう
0344デフォルトの名無しさん
2007/03/17(土) 19:59:00それって、Servlet2.3以降くらいじゃなかったけ?
いまどきtomcat3を使ってるとは思わないが
0345デフォルトの名無しさん
2007/03/17(土) 21:47:41JARファイルの名前から、質問者はstruts1.3を使っていると推測する。
struts1.3はServlet2.3以降が動作条件なので問題ないだろう。
0346デフォルトの名無しさん
2007/03/18(日) 01:15:23とりあえず資料よみまくって実際にサンプル書いたりして
概要は把握できたんですけど、ちょっとよくわからない部分が…
struts-config.xmlですけど、ちょっと省略しますが
<form-beans>
<form-bean name="hogeForm" type="foo.bar.HogeForm"/>
</form-beans>
<action-mappings>
<action name="hogeForm" type="foo.bar.HogeAction" path="/HogeForm">
<forward name="next" path="/2.jsp"/>
</action
</action-mappings>
actionタグのpath属性って何を指してるの?
nameが私用するform-beanで、typeがクラスで…ってのは解ったんだけど
pathがよくわからん。ようするにこのactionを実行する際のURLってことかな?
任意でいいってこと?
0347デフォルトの名無しさん
2007/03/18(日) 01:30:24そゆこと。
path属性に指定したURLパターンがリクエストされたら、このactionを実行するということ。
0348デフォルトの名無しさん
2007/03/18(日) 01:48:38なるほど。ありがとう。
やっとなんとか自力で書けそうだ。
これ、struts-configから書いて行くのが一番よさそうなんだね
configが出来てしまえば、あとは形にそってそれぞれを用意していく
だけって感じだな。
0349デフォルトの名無しさん
2007/03/18(日) 02:34:52なんかjspが生で吐き出されてしまうのだけど。。。
0350デフォルトの名無しさん
2007/03/18(日) 11:50:03「jspが生で吐き出されてしまう」がわからんが、
HTMLフレームも使えるし、JavaScriptも使える。
Strutsだからという問題は特にない。
0351デフォルトの名無しさん
2007/03/29(木) 19:22:47というコテコテな開発をする予定ですが、
お勧めバージョン&プラグイン等はありますか?
特にTomcatはレスポンスに優れたものが良いです。
3年くらい開発現場を離れていたもので…
All-In-One-EclipseとWTPを使っておけばいいのかな。
#当時はTomcatプラグインが主流でした。
以下が安泰ですかね?
All-In-One-Eclipsev3.0.1 (Eclipsev3.2)
JDK1.5.0.11
Tomcat5.5.23
Strtus1.2.7 (2.0 1.3は変更が大きい)
log4j1.2.14
0352デフォルトの名無しさん
2007/03/29(木) 23:58:090353デフォルトの名無しさん
2007/03/30(金) 01:25:01>特にTomcatはレスポンスに優れたものが良いです
ttp://tomcat.apache.org/tomcat-5.5-doc/apr.html
あたりのことか?
レスポンスをあげるにはマシンパワーをあげることを考える俺は負け組か
0354デフォルトの名無しさん
2007/03/30(金) 01:39:40NetBeans
Strutsは1.2.9が出てなかったっけ?
0355デフォルトの名無しさん
2007/03/30(金) 09:34:42でも、普通インターネットで公開されているものってルート直下じゃないですか。
公開するときってアプリケーションごとのフォルダの中身を
そのままルートにコピーすればいいんですかね?
0356デフォルトの名無しさん
2007/03/30(金) 09:50:170357デフォルトの名無しさん
2007/03/30(金) 10:23:320358デフォルトの名無しさん
2007/03/30(金) 19:27:470359デフォルトの名無しさん
2007/03/31(土) 12:51:32Apacheの設定ファイルです。
0360デフォルトの名無しさん
2007/03/31(土) 23:26:09InitialContextのlookupってどこでやってる?
SQL投げる度に毎回ってわけではないでしょ?
initメソッドでlookupして、datasourceをstaticな変数に格納?
0361デフォルトの名無しさん
2007/04/01(日) 01:34:58Tomcat6もリソースアノテーションつかえるようになったはずだし
0362デフォルトの名無しさん
2007/04/01(日) 02:22:34webアプリの話なのかなんなんかのわかんねぇ
>InitialContextのlookupってどこでやってる?
>SQL投げる度に毎回ってわけではないでしょ?
って意味がわかんないし、
>そのへんはDIでやるのでは?
ってのもわかんねぇ
おれはもう引退すべきか???
0363デフォルトの名無しさん
2007/04/01(日) 03:58:01>>361は質問無視して知識をひけらかしたいだけだろ。
「下着は外に干します?中で干します?」
「そのへんは乾燥機でやるのでは?
最近の洗濯機は簡易乾燥つかえるようになったはずだし」
0364デフォルトの名無しさん
2007/04/01(日) 04:37:01簡易乾燥だけ違和感を感じる。
でも代替案が出てこない。
0365デフォルトの名無しさん
2007/04/01(日) 05:46:40フィルター作ってやる。
0366デフォルトの名無しさん
2007/04/01(日) 11:40:58勉強してわからなかったら引退していいよ
勉強しないでわからないのは当たり前
0367360
2007/04/01(日) 11:43:05フィルターってのはServletフィルター?
全リクエストでlookupしてservletにdatasourceを引数で渡すってこと?
質問の意図はlookupの回数を減らすにはどうすればよいか?です。
きっと答えがあると思うんだけど、どこにも紹介されてないんだよね。
それとも素直にSQL投げる度でいいのかな。
0368デフォルトの名無しさん
2007/04/01(日) 12:04:52あとはアプリの種類や開発環境によって違うが
0369デフォルトの名無しさん
2007/04/01(日) 12:09:48そのlookupした結果をどこにおいておく? static変数?
0370デフォルトの名無しさん
2007/04/01(日) 12:17:42以前はHibernate+springでDAOでやってたし
詳しくは調べていないが、seamだとListenerで初期化して
Application ScopeにEntityManagerは登録されていると思う
JBOSS-EJBはHibernateによる実装なので、たぶんemを呼び出すごとに
sessionFactoryがDataSourceを使ってコネクションを張っているのだと思う
そのあたりで考えると
1)ListenerでFactoryをApplicationScopeに登録
2)FactoryでDataSourceをLookupしてSessionを返す
(トランザクションがいらなければConnectionになるかも)
って感じか?
しかし、J2SE 5.0以降ならspringかJPAを使う方が手っ取り早いと思うが
0371370
2007/04/01(日) 12:30:17を書き忘れた
0372951
2007/04/01(日) 12:32:14掲示板のサンプル作ってみたんですがvewerの見た目が宜しくありません。 何かアドバイスください。
<h1>掲示板</h1>
<form action="../servlet/myplay.BbsController" method="post">
<table border="false">
<tr>
<td>名前</td>
<td><input type="text" name = "name" maxlength="10" size="40"></td>
</tr>
<tr>
<td>題名</td>
<td><input type="text" name="title" maxlength="50" size=40"></td>
</tr>
<tr>
<td>本文</td>
<td><textarea name="text" cls="40" rows="5"></textarea></td>
<input type="submit"value="送信">
</tr>
</table>
</form>
<br>
<%
ResultSet rs = (ResultSet)request.getAttribute("crs");
while(rs.next())
{
%>
<table border="true">
<tr>
<td><%=rs.getInt("id")%></td><td><%=rs.getString("name")%></td></tr>
<tr><td><%=rs.getString("title")%></tr></td>
<tr><td><%= rs.getString("context")%></td></TR>
0373372
2007/04/01(日) 12:36:15これってMVCに反するのであまり宜しくないのでしょうか?
0374デフォルトの名無しさん
2007/04/01(日) 12:37:41>vewerの見た目が宜しくありません
の意味がわからん
0375372
2007/04/01(日) 12:39:000376372
2007/04/01(日) 12:43:240377デフォルトの名無しさん
2007/04/01(日) 12:44:50どんな見た目を期待してるんだ?
例えばこんな感じで〜みたいな画像上げてみ
0378372
2007/04/01(日) 12:49:20不細工すぎorz
0379デフォルトの名無しさん
2007/04/01(日) 13:01:14若干すれ違いのレスになるが、俺は好かん
JSF+faceletsを使っているんでstrutsのlogic置き換えて読んでくれ
<ui:repeat value="#{myBean.rows}" var="row">
<h:outputText value="#{row.c1}"/>
<h:outputText value="#{row.c2}"/>
</ui:repeat>
みたいな方法を勧めている
とくに<jsp:scriptlet>の使用は厳禁だ
0380デフォルトの名無しさん
2007/04/01(日) 13:07:05CSS
ttp://www.stylish-style.com/csstec/basic/b-table-deco.html
みたいなサイトで勉強するしかないだろ
見た目は自分でどうしたいか決めないと他人の頭の中は見えん
具体的に「xxするには?」には答えることができるかもしれんが
038110
2007/04/01(日) 13:12:570382378
2007/04/01(日) 14:01:40後スタイルシートを配備するフォルダーは、使用するhtml,jspがあるフォルダーで
良いのですか?CSSを知って、新たな世界が見えた気がしました。
本当にありがとうございます。
0383378
2007/04/01(日) 14:17:190384378
2007/04/01(日) 14:28:460385デフォルトの名無しさん
2007/04/01(日) 14:30:590386360
2007/04/01(日) 14:42:04#古くて申し訳ない。Hibernateとか、もうどうでもよくて…
public class DataSourceFactory {
private DataSource datasource = null;
private static singleton = new DataSourceFactory();
public static getInstance() {
return singleton;
}
private DataSourceFactory() {
InitialContext ic = new InitialContext();
datasource = ic.lookup(jndiName);
}
private DataSource getDataSouce() {
return datasource;
}
}
0388デフォルトの名無しさん
2007/04/02(月) 22:01:020389デフォルトの名無しさん
2007/04/02(月) 22:33:190390デフォルトの名無しさん
2007/04/02(月) 23:41:44Applicationスコープに入れて、Actionクラスで参照できるようにするって
ごく普通?
0391デフォルトの名無しさん
2007/04/02(月) 23:42:34特に目新しい機能を使うつもりはないです。
0392デフォルトの名無しさん
2007/04/03(火) 00:17:45別にだめではないと思う。
アプリケーションスコープだと、J2EE依存になるから
俺ならResourceBundle使うけど。
0393デフォルトの名無しさん
2007/04/03(火) 02:03:20勉強なら3月に安定版が出たばかりの6でいいと思われ
実運用だとしたらいつごろ運用するのかによる
JavaEE5ベースの仕様は便利
0394デフォルトの名無しさん
2007/04/03(火) 02:45:08Tomcat6の方がJSPコンパイルが早くて幸せ。
ただWebアプリを動かすだけなら、設定方法も変わってないし。
0395659
2007/04/03(火) 08:43:08tomcat起動しなくなって、焦った思い出が。
0396デフォルトの名無しさん
2007/04/03(火) 14:19:08http://journal.mycom.co.jp/special/2007/tomcat6/menu.html
0397デフォルトの名無しさん
2007/04/03(火) 15:10:50これでJavaSE5.0+JavaEE5が加速しそうだ
0398デフォルトの名無しさん
2007/04/03(火) 16:37:07使わない方が良い。
俺の経験した痛い経験:ウィンドウズメディアプレイヤー11のβが出てたから
おwと思って注意書きも見ず早速インスト。GYAOが見れねぇ;;;;
ということで正規板が出るまでGYAO見られませんでした。orz
注意書き見なかった漏れが悪いんだけどねΣ(´∀`;)
0399デフォルトの名無しさん
2007/04/03(火) 16:44:49その記事読んでみたがtomcat6ベータじゃねぇよ
開発中なのはNetBeansとEclipseだろ
それよりDBのコネクションすべてのサンプルでcloseしていないのはわざとだろうか
0400デフォルトの名無しさん
2007/04/03(火) 16:47:17漏れはマニュアルをちゃんと見るのがヘタというプログラマーとしては欠陥品orz
■ このスレッドは過去ログ倉庫に格納されています