JAVA+JSP+Struts+Tomcat Part3
■ このスレッドは過去ログ倉庫に格納されています
0001965
2006/10/26(木) 20:41:360106デフォルトの名無しさん
2007/01/11(木) 23:34:10<message-resources parameter="resources.aaaaa" key="aaaa" />
<message-resources parameter="resources.bbbbb" key="bbbb"/>
とすればおk。
0107デフォルトの名無しさん
2007/01/11(木) 23:35:13<message-resources parameter="resources.aaaaa" key="aaaaa" />
<message-resources parameter="resources.bbbbb" key="bbbbb"/>
でした。orz
0108デフォルトの名無しさん
2007/01/11(木) 23:55:49早速のレスありがとうございます。
「message-resources」にkeyを設定してやらなければならないのですか・・・
さっぱり気づきませんでした。明日早速やってみます。
jspの記述は「<bean:message bundle="bbbbb" key="aaa.bbb.ccc" />」
のままで良いのでしょうか?
0109デフォルトの名無しさん
2007/01/13(土) 23:37:540110デフォルトの名無しさん
2007/01/13(土) 23:47:04style属性は、"style"でいいんじゃね?
http://struts.apache.org/1.x/struts-taglib/tlddoc/html/button.html
0111デフォルトの名無しさん
2007/01/14(日) 00:10:49その2ちゃんねるが閉鎖されるなんていやだ。
そのためにはどうすればいいか?抗議をすればいい
いまこそ2ちゃんねるを守るために俺は秋葉原駅電気街出口で抗議をしようと思う。
みんな、手を貸してはくれないか?
手を貸してくれる同志は下記参照
日時 2007年1月13日
日程 午前10時から秋葉原駅電気街出口にて民衆に訴えかける、午後1時終了予定
必ず「2ちゃんねるが閉鎖されるのを黙ってみていられません、どうか2ちゃんねるが閉鎖されるのに反対してください」と言ってください
どうかコピペして広い範囲に知らせてくれ。
0112デフォルトの名無しさん
2007/01/16(火) 23:24:37UIの部分のは、普通にブラウザからアクセスし、テストしているのですが
裏側のLogic部分の単体テストで、普通にTestLogicみたいなクラスをつくり、その中の
main()からテストをしようとしてるのですが、これってスタンダードですかね?
この方法だとTestLogicが入っているPackageにlog4j.xmlをCopyしないとエラッタリしるので。。
Logic部分のテスト、みんなはどうしてますか?
0113デフォルトの名無しさん
2007/01/16(火) 23:37:360114デフォルトの名無しさん
2007/01/17(水) 00:23:50main っていつの話だよw
テストの基本は JUnit だろ。
間違っても Test クラスからログとか出して目視で確認するなよw
0115デフォルトの名無しさん
2007/01/17(水) 23:35:50JUnit って、Log4Jが動いているWebAppに対しても上手く動きますかね。
自分が試したところ、log4j.xml の置き場所を移動させたりしないとできなかったのです。
jp+
+logic
+action
+util
のようなSrcの階層で、WebAppを起動するときは、jpと同列のフォルダー(src直下)
にlog4j.xml を入れているのを、いちいちlogicフォルダーとかに移してたので、
上手い方法があるのかなと。
0116デフォルトの名無しさん
2007/01/18(木) 00:14:56諦めろ
この業界を諦めろ
0117デフォルトの名無しさん
2007/01/18(木) 01:05:31src直下でいけるだろ。
っつーか、JUnitにログなんか関係ないだろ。
0118デフォルトの名無しさん
2007/01/18(木) 01:48:41発生してページが開けなくなる上にTomcatをシャットダウンしても
Javaプロセスが残っちゃってkillコマンドでそのプロセスを切らなきゃならない
事があるんだけど、これって何かやり方が悪いのでしょうか?
0119デフォルトの名無しさん
2007/01/18(木) 03:34:100120デフォルトの名無しさん
2007/01/18(木) 05:09:59正しく動いた。
感動した。
0121デフォルトの名無しさん
2007/01/18(木) 09:42:48StrutsIDEよりも便利だったら乗り換えようかと思ってるんですが。
0122デフォルトの名無しさん
2007/01/19(金) 23:23:090123デフォルトの名無しさん
2007/01/20(土) 06:41:440124デフォルトの名無しさん
2007/01/20(土) 15:34:460125デフォルトの名無しさん
2007/01/20(土) 15:52:180126デフォルトの名無しさん
2007/01/21(日) 10:00:57action.form.HelloWorldFormはちゃんとあるのですが原因ってなんでしょうか?
<例外>
javax.servlet.jsp.JspException: クラス action.form.HelloWorldForm のbeanを生成する際の例外: {1}
at org.apache.struts.taglib.html.FormTag.initFormBean(FormTag.java:487)
at org.apache.struts.taglib.html.FormTag.doStartTag(FormTag.java:457)
at jsp_servlet.__index._jspService(__index.java:133)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:225)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:127)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:272)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:165)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3153)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:1973)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1880)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1310)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:179)
0127デフォルトの名無しさん
2007/01/21(日) 12:44:34Struts1.1用のコードや設定ファイルをStruts1.2で使っている為では?
例えばStruts1.2なのにHelloWorldFormでActionErrorを使っているとか。
0128デフォルトの名無しさん
2007/01/21(日) 14:46:06前のページでパスワードとIDを入力させ、一致したらemberlistM.jspへ
一致しなかったらemberlistU.jspへ飛ばそうと考えてたのですが
うまくいきません、どのようにすればいいのでしょういか?
プログラムはこんな感じです
最終的には、パスワードとIDによって、それぞれ別のページへ飛ばそうと考えているので
Whileで回しています、使用ソフトはTOMCATとMysqlです
while の中にout.println(rs.getString("password"));
out.println(rs.getString("id"));を入れて、id password共に表示されたことは確認しています
0129ソースです
2007/01/21(日) 14:46:47<html>
<head>
<title></title>
</head>
<body>
<%
String pass = request.getParameter("pass");
String username = request.getParameter("username");
Context ctx=new InitialContext();
DataSource ds=(DataSource)ctx.lookup("java:comp/env/jdbc/Jsp10");
Connection db=ds.getConnection();
Statement sttSql=db.createStatement();
ResultSet rs=sttSql.executeQuery("SELECT * FROM memberlist ");
while(rs.next()){
String password = rs.getString("password");
String id = rs.getString("id");
if(pass == password && username == id){response.sendRedirect("memberlistM.jsp");}
}
sttSql.close();
db.close();
response.sendRedirect("memberlistU.jsp");
%>
</body></html>
0130デフォルトの名無しさん
2007/01/21(日) 14:57:170131デフォルトの名無しさん
2007/01/21(日) 14:59:31×
if(pass == password && username == id){response.sendRedirect("memberlistM.jsp");}
○
if (pass.equals(password) && username.equals(id) {.......}
0132デフォルトの名無しさん
2007/01/21(日) 15:24:31ありがとうございました、やってみます
0133デフォルトの名無しさん
2007/01/25(木) 22:40:56行いたいと思いましたが、Strutsのvalidator機能で提供されている
ルールに無かったので独自ルールを作ろうとしましたがうまくできませんでした。
field propertyを2つ設定することが出来れば比較も可能だと思うのですが
実現方法を教えていただけないでしょうか?
googleで調べましたがpropertyを2つ設定しているサンプルが
見当たらなかったのでもしかして実現不可能なのでしょうか。。。
このあたりを参考に独自ルールを作りました。
ttp://www.techscore.com/tech/ApacheJakarta/Struts/15-2.html
0134デフォルトの名無しさん
2007/01/25(木) 22:50:16Strutsのオフィシャルページ
http://struts.apache.org/1.3.5/faqs/index.html
↑の"External FAQs and HOWTOs"の項
からリンクのあるこの辺を参考に汁。
http://www.raibledesigns.com/page/rd/20030226#struts_validator_validating_two_fields
0135133
2007/01/25(木) 23:46:35ありがとうございます!さっそく試してみます。
大小比較のclassとvalidation.xmlは教えて頂いたサイトと
近いところまで作れていたのですが、validator-rules.xmlが
まったく違いました。
validation.xmlでToDateの設定をして
大小比較のclassで以下のように値取得を試みましたが
sProperty2には「ToDate」というただの文字列が代入されて
value2はnullとなってしまい、諦めてしまいました。
validation.xml
<var-name>secondProperty</var-name>
<var-value>ToDate</var-value>
大小比較class
String sProperty2 = field.getVarValue("secondProperty");
String value2 = ValidatorUtil.getValueAsString(bean, sProperty2);
教えて頂いたサイトのvalidator-rules.xmlにある
<javascript>以降に関しては試していなかったので
試してみます。
また明日、報告します。
0136デフォルトの名無しさん
2007/01/25(木) 23:58:55あるなら俺も知りたいが。無理じゃねーの?
0137デフォルトの名無しさん
2007/01/27(土) 22:43:12それぞれ別のActionを実行させたいのですが、
<html:form> をボタン毎に分ける以外に方法はありますでしょうか?
もしくは、複数のSUBMITを区別する方法があったら教えてください。
なんとなく、VALUEで判定するのは気がひけます。。。
0138137
2007/01/27(土) 22:51:390140デフォルトの名無しさん
2007/01/28(日) 00:47:39http://www.javaroad.jp/opensource/js_struts14.htm
これみてわかんなきゃさっさと公務員にでもなったほうがいいよ。
0141デフォルトの名無しさん
2007/01/28(日) 00:56:20つ org.apache.actions.LookupDispatchAction
0142デフォルトの名無しさん
2007/01/28(日) 01:05:290144デフォルトの名無しさん
2007/01/29(月) 14:17:12そのままWebLogicなどに持っていけるものなのでしょうか?
0145デフォルトの名無しさん
2007/01/29(月) 17:02:05TomcatとWeblogicでは、一部設定ファイルが違うから無理
0146デフォルトの名無しさん
2007/01/29(月) 23:47:13いやいけますよ。。。
データソースの指定等でtomcat独自の指定していなければ
0147デフォルトの名無しさん
2007/01/30(火) 01:26:370148デフォルトの名無しさん
2007/01/30(火) 01:40:25アプリ登録でTomcatにない設定なかったけ?
0149デフォルトの名無しさん
2007/01/30(火) 03:51:21データソースとか。
データソースの指定は、Tomcat4とTomcat5でも違うしな
0150デフォルトの名無しさん
2007/01/30(火) 07:16:39実装依存になるようなアホな使い方しているのか?
0151デフォルトの名無しさん
2007/01/30(火) 08:57:26一般的ですか?
0152デフォルトの名無しさん
2007/01/30(火) 09:25:540153デフォルトの名無しさん
2007/01/30(火) 09:31:33とかの区切りがわからんよー
0154デフォルトの名無しさん
2007/01/30(火) 09:49:29その中でお前が作る部分、アプリケーションサーバが担当する部分と分かれているんだ
0155デフォルトの名無しさん
2007/01/30(火) 09:50:280156デフォルトの名無しさん
2007/01/30(火) 09:51:13そうだけど、Commons DBCP依存のコードは書かないのが普通。
0157デフォルトの名無しさん
2007/01/30(火) 09:58:54あー、JAVA苦手だ。
0158デフォルトの名無しさん
2007/01/30(火) 12:10:54Tomcat5.5使ってます
以下のことを試しました。
1.CATALINA_HOME/conf/server.xmlに Realm書く
2.<host>タグ内に<Valve className="org.apache.catalina.authenticator.SingleSignOn" />書く
3.各ウェブアプリに<security-constraint>書く
4.ログイン用というかポータルアプリに<login-config>書く
5.4のアプリにログインする
6.他のアプリにいくと権限ないって怒られる
知ってる方いたら教えてくださいまし。。。
0159158
2007/01/30(火) 13:47:44まじわかんね。。。
スレ汚しスマソ
0160デフォルトの名無しさん
2007/01/30(火) 15:51:58リダイレクトしてくれるような設定って
Tomcatにないでしょうか?
0161デフォルトの名無しさん
2007/01/30(火) 16:11:250162デフォルトの名無しさん
2007/01/31(水) 00:43:14tomcatで。
0163デフォルトの名無しさん
2007/01/31(水) 00:46:040164デフォルトの名無しさん
2007/01/31(水) 00:46:210165デフォルトの名無しさん
2007/02/01(木) 00:41:44環境はあまり気にしないで問題ないと思っていますが、
とりあえず下記を前提にしています。
java1.46
struts2.0
TOMCAT5.0
eclipse3.1
画面の遷移時にbeanを持ち歩きつつ、
パンくずリストを作成したいのですが、
なにか良いHPとか本などを教えていただけないでしょうか?
後、仕組みを間単に教えてください。
0166デフォルトの名無しさん
2007/02/01(木) 00:47:250167デフォルトの名無しさん
2007/02/01(木) 19:31:010168デフォルトの名無しさん
2007/02/02(金) 13:38:010169デフォルトの名無しさん
2007/02/02(金) 14:35:520170デフォルトの名無しさん
2007/02/03(土) 12:40:460171デフォルトの名無しさん
2007/02/03(土) 23:17:28JSP+ServletによるWEBアプリケーション開発したいんですが
何かおすすめ書籍ってありますか?
ちなみに
『Java Mysql Tomcat 掲示板とブログ』
『Tomcat&jsp』
は購入済みで一通り読みました
J2EEとかStrutsとか、このへんは、のってませんでした…
0172デフォルトの名無しさん
2007/02/04(日) 00:21:12読むより作ってみれ
0173デフォルトの名無しさん
2007/02/04(日) 20:10:35俺は本を読まないと作れないタイプなんだよ!!!
ぼけっ
0174デフォルトの名無しさん
2007/02/04(日) 21:19:47じゃあ諦めろセンス無し
0175デフォルトの名無しさん
2007/02/05(月) 12:37:43現在a.comで運用しています。これを、b.comでもアクセスできるようにしたいのですが、
Tomcat単体で出来ますでしょうか?
ドメインの取得とDNSへの登録は完了しています。
0176デフォルトの名無しさん
2007/02/05(月) 13:57:53まずはb.comにアクセスしてみろ、話はそれからだ
0177デフォルトの名無しさん
2007/02/05(月) 14:08:29正直、鯉専用の固形の餌の方が良くない?
0178175
2007/02/05(月) 16:34:54レスありがとうございます。
IPは同じで、b.comにアクセスするとhttp 500エラーが返ってきます。
見た目、tomcatのエラーではなくブラウザのエラー(?)のように見えます。
0179デフォルトの名無しさん
2007/02/05(月) 16:43:06500エラーならサーバのエラーだろ。
500エラーが返ってきたときにブラウザがどういう挙動をするのかはまた別の話。
0180175
2007/02/05(月) 22:36:48失礼しました。
a.comですとTomcatのエラー画面(500)が表示され、
b.comですと白地のエラー画面(さっき見たら400になってましたorz)が表示されます。
どちらもpingは正常に返ってくるのですが。。。
0181デフォルトの名無しさん
2007/02/05(月) 22:43:19tomcatのエラーログ出てるなら
tomcatの設定ミスだよね
server.xmlあたりの設定にドメイン入れてないとかそんなの
0182デフォルトの名無しさん
2007/02/06(火) 01:51:52もともとTomcatに設定がいるかどうか聞きたかったんじゃねぇの?
0183デフォルトの名無しさん
2007/02/06(火) 04:42:27皆様の知恵をお貸し下さい。
構成:
WinXP HomeSP2
Tomcat5.5.20(catalina.policy以外はデフォルト)
Struts1.3.5 or Struts1.2.9
0184183
2007/02/06(火) 04:43:35サーバにデプロイした後アクセスすると、
18: <p>Each of these links lead to a separate "module" within this application.</p>
19:
20: <ul>
21: <li><html:link module="/exercise" action="/welcome">Taglib Test Pages</html:link></li>
22:
23: <li><html:link module="/upload" action="/upload">Upload examples</html:link></li>
24:
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:506)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
sun.reflect.GeneratedMethodAccessor152.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:243)
java.security.AccessController.doPrivileged(Native Method)
javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:275)
org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:161)
java.security.AccessController.doPrivileged(Native Method)
0185183
2007/02/06(火) 04:44:56org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
org.apache.struts.action.RequestProcessor.internalModuleRelativeForward(RequestProcessor.java:1023)
org.apache.struts.action.RequestProcessor.processForward(RequestProcessor.java:572)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:221)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
sun.reflect.GeneratedMethodAccessor152.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:243)
java.security.AccessController.doPrivileged(Native Method)
javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:275)
org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:161)
と言うエラーがでます。(見づらくてごめんなさい)
0186183
2007/02/06(火) 04:45:35Struts1.2.9の同じwarファイルで試した所、全く同じエラーが発生しました。
これは<html:link>タグが怪しいと思い、struts-blankをデプロイした後、
幾つかのタグを試した所、<html:link>だけが上記のエラーを吐きました。
これはどうすれば解決できるのでしょうか?
ご協力お願いします。
0187デフォルトの名無しさん
2007/02/06(火) 10:52:11どう見ても自分で>>184に原因書いんじゃん。
0188デフォルトの名無しさん
2007/02/06(火) 21:15:41<bean:message key="hogehoge">
でメッセージリソースから文言を取得できるんだけど、
取得する文言を変数に入れる方法ってないん?
<% String str = '<bean:message key="hogehoge"> %'>
<%= str %>
って書いたら見事に失敗した。
どうすりゃいいんだろ。
0189デフォルトの名無しさん
2007/02/06(火) 21:27:48ふつうにResourceBundleを使えよ。
ViewじゃなくてControllerでやるのが良い。
セッションによって変える必要がないのなら、
ServletContextListenerやStruts PlugInを使って
初期化時に一回だけ読み込んでServletContextに入れるのがいいんじゃね?
0190デフォルトの名無しさん
2007/02/06(火) 21:32:160191デフォルトの名無しさん
2007/02/07(水) 01:03:08<%@attribute name="var"%>
<jsp:doBody var="body"/>
<c:set var="${var}" value="${body}"/>
というタグファイルを作って
<t:hoge var="str">
<bean:message key="hogehoge"/>
</t:hoge>
とやってみるというのはどうか?といま思いついた。
0192デフォルトの名無しさん
2007/02/07(水) 13:33:090193デフォルトの名無しさん
2007/02/08(木) 21:56:05JSTL使えば簡単。bundleはweb.xmlで指定しとけばいい
ただしスクリプトレットではなくて式言語からでないとアクセスできない
<fmt:message var="str" key="hogehoge"/>
0194デフォルトの名無しさん
2007/02/09(金) 11:18:29↓こんなことやっているけど?
byte id[] = session.getId().getBytes();
long current = System.currentTimeMillis();
if(current == previous)
current++;
previous = current;
byte now[] = (new Long(current)).toString().getBytes();
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(id);
md.update(now);
return toHex(md.digest());
0195デフォルトの名無しさん
2007/02/09(金) 11:30:17同一セッションで、1ミリ秒以内にアクセスされるとユニークにはならない。
・・・ってことぐらいはソースコード見ればわかりそうなものだけど?
0196195
2007/02/09(金) 11:31:301ミリ秒以内にアクセスされても違う値を生成するようになってるね。
0197デフォルトの名無しさん
2007/02/09(金) 11:37:58now + id でよくね?
toHex()するのはわかるけど・・・
0198デフォルトの名無しさん
2007/02/09(金) 13:03:43微妙にメモリ節約
0199デフォルトの名無しさん
2007/02/09(金) 13:31:12つまり、strutsにかかわらずwebアプリでユニークコード作りたい場合は
TokenProcessor.getInstance().generateToken(request)でOK!ってこと?
あ、でもセッションがあること前提か・・・
0200デフォルトの名無しさん
2007/02/09(金) 17:33:000201デフォルトの名無しさん
2007/02/09(金) 18:20:19つか、普通にロックしてインクリメントでよくね?
0202デフォルトの名無しさん
2007/02/12(月) 17:24:04ってな感じでFormに値を渡してやるとき
<bean:write name="name" property="property"/>の値が
「あいうえお」のような日本語だと文字化けしてうまく値を渡すことができません
なにか解決方法はありませんでしょうか?
0203デフォルトの名無しさん
2007/02/12(月) 17:34:200204デフォルトの名無しさん
2007/02/12(月) 22:02:02つーか、文字化け javaでググるだけでもわかると思うんだけどね
0205デフォルトの名無しさん
2007/02/12(月) 22:06:16でやるってことですか?
これでやっても無理でした
0206デフォルトの名無しさん
2007/02/12(月) 22:13:22ここに渡すときは「チマタ」という風に渡されます
jspでも<a href=/action.do?name=チマタ>
と表示されます
その次で ?`?}?^ となります
■ このスレッドは過去ログ倉庫に格納されています