5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

JAVA+JSP+Struts+Tomcat Part3

1 :965:2006/10/26(木) 20:41:36
ほらよ。立ててやったぞw

2 :デフォルトの名無しさん:2006/10/26(木) 22:31:05
はいはい、2getしてやったぞ。

3 :デフォルトの名無しさん:2006/10/27(金) 14:34:15
>>1
で、出来たのか?

4 :デフォルトの名無しさん:2006/10/28(土) 21:38:20
>>3
できてねーよ。できるわけがねーだろ。
本も読んだし、ググって例と同じようにやっても
できねーんだから無理なんだよ。
「できる」とか嘘ついたお前らをいつまでも罵倒し続けてやる。

5 :デフォルトの名無しさん:2006/10/28(土) 21:55:53
はいはい、わろすわろす

6 :デフォルトの名無しさん:2006/10/29(日) 15:30:59
CentOS3上で
httpd2.0.46+Tomcat5.5.20+mod_jk2+jdk1.5.0_09
の連携をやっているのですが、おかしな動きをします。
原因をご存知の方に解決法を教えて頂きたく書かせて頂きます。

変な動きとは、
A.{CATALINA_HOME}/conf/web.xml内のwelcome-file-listに指定のある
  ファイルのみ参照される。
B.上記ファイルの入ったディレクトリを指定した時のみJSPが稼動し、
  同ディレクトリ内の別名JSPを直に指定すると404となる。


1.welcome-file-list に「index.jsp」を指定
2.workers2.propatiesにて /tester/* を指定
3.{CATALINA_HOME}/conf/Catalina/localhost/tester.xml でContext指定
4.index.jspを3.で指定したフォルダに格納
5.WEB-INF以下フォルダとweb.xmlを作成

1〜5を実行のうえ、
http://www.hoge.com/tester/にアクセスするとOK
http://www.hoge.com/tester/index.jspにアクセスすると404

という動きです。
TOMCATではなく、Apacheの設定なんでしょうか・・・。
お知恵をお貸し下さい。


7 :デフォルトの名無しさん:2006/10/30(月) 10:27:03
WEB-INF/libディレクトリに入れたjarファイルは勝手にクラスパスに入るけど、
他のディレクトリにも同じような機能を持たせることって設定しだいで可能?

WEB-INF/hage 以下のjarファイルもクラスパスに入るようにしたい。

8 :デフォルトの名無しさん:2006/10/30(月) 11:13:34
>>7
クラスローダ自作して、設定を変えればおk。

ただし、
>WEB-INF/hage 以下のjarファイルもクラスパスに入るようにしたい。
なぜそんなことが必要なのか、激しく疑問。

9 :デフォルトの名無しさん:2006/11/03(金) 20:22:05
StrutsのFilterの設定がまったくさっぱりです
エクリプス3.1を使用しているのですが

web.xmlに
<filter>
 <filter-name>Encoding</filter-name>
 <filter-class>encoding.EncodingFilter</filter-class>
 <init-param>
  <param-name>encoding</param-name>
  <param-value>Shift_JIS</param-value>
 </init-param>
</filter>
<filter-mapping>
 <filter-name>Encoding</filter-name>
 <url-pattern>/*</url-pattern>
</filter-mapping>

で、
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">

<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/j2ee/dtds/web-app_2_3.dtd">

ってやると
<?xml version="1.0" encoding="Shift_JIS"?>
のところにバッテンマーク

調べてもわからんです

10 :デフォルトの名無しさん:2006/11/03(金) 20:32:23
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/j2ee/dtds/web-app_2_3.dtd">

じゃなくて

<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">


11 :9:2006/11/04(土) 19:57:33
>>10
問題なくできました!!

本当にありがとうございます

12 :デフォルトの名無しさん:2006/11/08(水) 22:29:23
ViewHelperパターンって

・JSPの条件ロジックや表示整形ロジックを別クラスにしてJSPから呼び出す

・データベースからとってきたDTOをJSPでそのまま表示できるように
 アクションで変換する。

という2通りの使われ方してると思うのですが、みなさん実際はどうしてますか?

13 :デフォルトの名無しさん:2006/11/10(金) 12:53:43
tomcatを5に上げたら servletから Integerを setAttributeして jspに渡せな
くなった。
デフォルトコンストラクタが無いのが原因らしいので、MyIntegerのBeans作って
対処したけど、これってもっとスマートな方法ないの?


14 :デフォルトの名無しさん:2006/11/10(金) 20:18:01
サーブレットのフィルタを行いたいのですが、
web.xmlへの記述で、
<filter-mapping>内の<url-pattern>内に、/* と指定すると、
サーブレットのみではなく、*.jspや*.gifなどのリクエストに対しても
フィルタクラスが呼び出されてしまいます。

これをサーブレットのみが呼び出されるようにするにはどうしたらいいのでしょうか?
サーブレット名には拡張子がないので、拡張子でパターンを絞る事ができないんです。

15 :デフォルトの名無しさん:2006/11/10(金) 20:48:55
WEBプログラミング板にあるべきスレなんじゃなかろうか。

16 :デフォルトの名無しさん:2006/11/10(金) 23:24:11
質問させてください。

サイトAとサイトBがあって
サイトAにアクセスしてクッキーにjsessionidが保存されるわけなんだけど
セッションタイムアウトする前にサイトBに移動した場合
jsessionidはサイトBのもので上書きされてしまうものなのでしょうか。

17 :デフォルトの名無しさん:2006/11/10(金) 23:33:11
されない。

18 :デフォルトの名無しさん:2006/11/10(金) 23:44:48
ということはクッキーはサイト単位で管理されて
同じキー名でもサイトが違えば上書きされないということでしょうか。

19 :デフォルトの名無しさん:2006/11/10(金) 23:52:26
そう。

20 :デフォルトの名無しさん:2006/11/10(金) 23:55:12
ありがとうございます。とても勉強になりました。


21 :デフォルトの名無しさん:2006/11/11(土) 00:11:00
>>14

サーブレット1個1個登録すればOK

22 :デフォルトの名無しさん:2006/11/11(土) 12:59:43
Apacheのurlパターン指定でimgだけ避けて通るように出来たりしないの?

23 :デフォルトの名無しさん:2006/11/11(土) 14:28:54
>>13
Tomcat5.0.28とTomcat5.5.1で問題なく渡せたのだが

>>14
自分でかってに拡張子の無いパスを設定してるだけだろ。
拡張子を設定すればいいだけじゃね?

24 :23:2006/11/11(土) 14:34:44
Tomcat5.0.28とTomcat5.5.17だった。

25 :14:2006/11/12(日) 07:01:15
>>21 23
ありがとございます。
サーブレットの数が多いので拡張子を付けようと思います。

26 : ◆v/SR6P2sZU :2006/11/13(月) 01:43:17
教えてください。

apache2.x系 tomcat5.0 FedoraCoreLinux
という環境でjspをたたくと以下のExceptionが。

javax.servlet.ServletException: ActionMappingsまたはActionFormBeansコレクションが見つかりません
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.jsp.sample_jsp._jspService(sample_jsp.java:84)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

/usr/local/tomcat/opt/apr/jsp
にjspを。
/usr/local/tomcat/opt/apr/WEB-INF/classes
の下にclassファイルを置いているのですが、どうもclassファイルの方をみていないような・・・?

server.xmlの設定は以下です。
<Context path="/apr" docBase="/usr/local/tomcat/opt/apr" debug="0" reloadable="true" >

URI:http://xxx/apr/jsp/sample.jsp

/usr/local/tomcat/opt/apr/WEB-INF/classes
の下においたclassファイルを参照するような設定どこに書けばよいでしょうか。

27 : ◆v/SR6P2sZU :2006/11/13(月) 01:47:35
言い忘れました。
struts1.3系使ってます。

struts-config.xmlは以下。
<struts-config>
<form-beans><form-bean name="loginForm" type="LoginForm"/></form-beans>
<action-mappings>
<action path="/loginAction" type="LoginAction" name="loginAction">
<forward name="success" path="/sample.jsp" />
</action>
</action-mappings>
</struts-config>

jspは以下です。
<%@ page contentType="text/html; charset=Windows-31J" %>
<%@ taglib uri="/WEB-INF/lib/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/lib/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/lib/struts-logic.tld" prefix="logic" %>
<html:html>
<head><title>ログイン画面</title>
<body>
<html:form action="/loginAction">
<table border="0">
<tr><td>名前</td><td><html:text property="name" /></td></tr><tr>
<td>パスワード</td><td><html:password property="password" /></td></tr>
<tr><td colspan="2"><html:submit value="ログイン" /></td></tr>
</table>
</html:form>
</body>
</html:html>
以上、ご教授ください。。

28 : ◆v/SR6P2sZU :2006/11/13(月) 01:53:33
小出しでスマソ

LoginActionとLoginFormはパッケージなしのdefaultパッケージです。

そいで
/usr/local/tomcat/opt/apr/WEB-INF/classes
においてます。

以上。

29 :デフォルトの名無しさん:2006/11/13(月) 08:08:35
なんで、動かない危険性があるのにデフォルトパッケージにするのかと。

30 : ◆v/SR6P2sZU :2006/11/13(月) 21:28:53
>29
パッケージをつくってそこにいれてやっても同じでした。

どうも/usr/local/tomcat/opt/aprの下を見てない感じが。

31 : ◆v/SR6P2sZU :2006/11/13(月) 22:06:06
ログです。
2006/11/13 21:57:37 org.apache.catalina.core.StandardHostDeployer remove
情報: コンテキストパス /apr のWebアプリケーションを削除します
2006/11/13 21:57:37 org.apache.catalina.core.StandardHostDeployer install
情報: コンテキスト設定ファイルのURL file:/usr/local/tomcat/conf/Catalina/localhost/apr.xml を処理しています
2006/11/13 21:57:37 org.apache.catalina.startup.ContextConfig applicationConfig
情報: アプリケーションのweb.xmlが見つかりません、デフォルトだけを使用します StandardEngine[Catalina].StandardHost[localhost].StandardContext[/apr]
2006/11/13 21:57:39 org.apache.catalina.core.StandardService stop
情報: サービス Catalina を停止します
2006/11/13 21:57:39 org.apache.catalina.core.StandardHostDeployer remove
情報: コンテキストパス /admin のWebアプリケーションを削除します
2006/11/13 21:57:39 org.apache.catalina.logger.LoggerBase stop
情報: unregistering logger Catalina:type=Logger,path=/admin,host=localhost
2006/11/13 21:57:39 org.apache.catalina.core.StandardHostDeployer remove
情報: コンテキストパス /apr のWebアプリケーションを削除します
(略)

/aprを消しに行っているのは良いのですが


32 : ◆v/SR6P2sZU :2006/11/13(月) 22:09:08
情報: サービス Catalina を起動します
(略)
情報: validateJarFile(/usr/local/tomcat/opt/apr/WEB-INF/lib/servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
2006/11/13 21:57:41 org.apache.catalina.loader.WebappClassLoader validateJarFile
情報: validateJarFile(/usr/local/tomcat/opt/apr/WEB-INF/lib/servlet.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
2006/11/13 21:57:41 org.apache.catalina.core.StandardHost getDeployer
情報: Create Host deployer for direct deployment ( non-jmx )
2006/11/13 21:57:41 org.apache.catalina.core.StandardHostDeployer install
情報: コンテキスト設定ファイルのURL file:/usr/local/tomcat/conf/Catalina/localhost/balancer.xml を処理しています
2006/11/13 21:57:41 org.apache.catalina.core.StandardHostDeployer install
情報: コンテキスト設定ファイルのURL file:/usr/local/tomcat/conf/Catalina/localhost/manager.xml を処理しています
2006/11/13 21:57:41 org.apache.catalina.core.StandardHostDeployer install
情報: コンテキスト設定ファイルのURL file:/usr/local/tomcat/conf/Catalina/localhost/admin.xml を処理しています


33 : ◆v/SR6P2sZU :2006/11/13(月) 22:10:33
(略)
情報: URL file:/usr/local/tomcat/webapps/ROOT からコンテキストパス にWebアプリケーションをインストールします
2006/11/13 21:57:43 org.apache.catalina.core.StandardHostDeployer install
情報: URL file:/usr/local/tomcat/webapps/servlets-examples からコンテキストパス /servlets-examples にWebアプリケーションをインストールします
2006/11/13 21:57:43 org.apache.catalina.core.StandardHostDeployer install
情報: URL file:/usr/local/tomcat/webapps/jsp-examples からコンテキストパス /jsp-examples にWebアプリケーションをインストールします
2006/11/13 21:57:43 org.apache.catalina.core.StandardHostDeployer install
情報: URL file:/usr/local/tomcat/webapps/webdav からコンテキストパス /webdav にWebアプリケーションをインストールします
2006/11/13 21:57:43 org.apache.catalina.core.StandardHostDeployer install
情報: URL file:/usr/local/tomcat/webapps/tomcat-docs からコンテキストパス /tomcat-docs にWebアプリケーションをインストールします
(略)

>32 と >33で、「〜を処理しています」と「〜をインストールします」
に、/aprに関するログがでてません。

ちなみに
:/usr/local/tomcat/conf/Catalina/localhost/にはapr.xmlというファイルは置いています。

34 :デフォルトの名無しさん:2006/11/14(火) 02:27:11
質問です。
StrutsでActionFormが必要ない(リクエストデータが無い)場合でも
ActionFormクラスを用意する必要があるのでしょうか?(省略は可能?)
もう一つ。
リクエストデータが「hoge.do?aaaaa」等のようにkey=valueの形式になっていない場合
ActionFormはどのように作るのでしょうか?(別のやり方になる?)

35 :デフォルトの名無しさん:2006/11/15(水) 00:23:26
>>34

>StrutsでActionFormが必要ない(リクエストデータが無い)場合でも
>ActionFormクラスを用意する必要があるのでしょうか?(省略は可能?)

必要ありません。struts-configで設定できる。

>リクエストデータが「hoge.do?aaaaa」等のようにkey=valueの形式になっていない場合
>ActionFormはどのように作るのでしょうか?(別のやり方になる?)

イメージがよくわかりませんが、request.getPrameterで取得できないものは
ActionFormつくっても無駄です。

36 :デフォルトの名無しさん:2006/11/18(土) 21:47:40
TomcatのJNDIレルムにおいて、LDAPSを使う場合の設定例が見つからないのですが
何か良いサンプルはありませんか?

37 :デフォルトの名無しさん:2006/11/21(火) 15:35:04
taglibの質問なんだけども、
チェックボックスとかラジオボタンのnameとかvalue属性以外の属性をセットするのってどうやるん(´・ω・`)?
例えばid属性とか。

38 :デフォルトの名無しさん:2006/11/21(火) 15:57:03
>>37
あらかじめ仕様で用意されている属性しか使えない。
属性を追加したかったら、カスタムタグを自作するしかない。

39 :デフォルトの名無しさん:2006/11/21(火) 19:29:33
>>38
サンクスコ(´・ω・`)

40 :デフォルトの名無しさん:2006/11/25(土) 01:43:08
doPostってIOExceptionとServletExceptionを投げるようですが、
これはどこに投げているんですか?
catchして処理したいのですが・・・

41 :デフォルトの名無しさん:2006/11/25(土) 02:18:51
>>40
サーブレットコンテナに投げている。
catchして処理するのは、doPostを呼ぶ側の処理でしょ。
処理したいなら投げずに処理すればいいのでは?

42 :デフォルトの名無しさん:2006/11/25(土) 06:01:52
JSPのカスタムタグで質問です。
例えば
<a href="<bean:write name="userId" scope="request">">
みたいに
HTMLの書式に反するような書き方が嫌なのですが、
<a href="{bean:write name="userId" scope="request"}">
このようなカスタムタグを作ることは可能でしょうか?

43 :デフォルトの名無しさん:2006/11/25(土) 06:04:59
>>42
えっと、普通に
<a href="${userId}">
じゃダメなの?

44 :デフォルトの名無しさん:2006/11/25(土) 06:41:42
>>43
すみません。環境を書くのを忘れていました。
Tomcat4.1.31?なのでEL式は使えないと思いました。

45 :デフォルトの名無しさん:2006/11/25(土) 06:45:58
質問です。
ActionErrorsオブジェクトの中身を
<html:erros>を使わずに<logic:iterate>を使って出力したいのですが
どのようにすればよろしいでしょうか?

46 :デフォルトの名無しさん:2006/11/25(土) 07:08:45
>>40
web.xmlに<error-page>を書いて、その遷移先で処理する

47 ::2006/11/25(土) 12:01:49
Excuse me, help me please. JSPを使ってディスク内の指定ディレクトリを入力して、その内容を表示させたいんですが。どうやれば良いですか?多分、Fileクラスを使うと思うんですが・・・

48 :デフォルトの名無しさん:2006/11/26(日) 09:32:36
>>42
そんなカスタムタグの書式に反する書き方は出来ない。

49 :デフォルトの名無しさん:2006/11/26(日) 16:46:07
>>47
Fileクラスを使って一覧取得して表示

50 :デフォルトの名無しさん:2006/11/27(月) 10:10:28
Tomcatのログにこういうのがたまに出るんですが、
なにかまずいことでもあるんでしょうか?

2006/1/1 9:00:00 net.sf.hibernate.impl.SessionImpl finalize
警告: finalizing unclosed session with closed connection


51 :デフォルトの名無しさん:2006/11/28(火) 14:41:40
閉じてるコネクションで閉じてないセッションをファイなら伊豆してるから

52 :デフォルトの名無しさん:2006/11/28(火) 18:40:31
tomcatだと、一番最初のアクセスではクッキーが有効でもsessionIDをURL埋め込みで渡してきますがこれをやめさせる設定ってできますか?
できるなら方法かヒントを教えてください。

53 :デフォルトの名無しさん:2006/11/28(火) 19:34:04
Tomcatだと?

54 :デフォルトの名無しさん:2006/11/29(水) 07:48:10
例えば郵便番号の入力で
〒 [ 1 ] - [ 2 ]
このように2つのtextboxに分かれている場合で、

・1か2のどちらかが入力された場合、両方のテキストボックスで
 必須チェックと正規表現チェックが走る
・どちらも入力されていない場合はスルー

このような複雑なバリデーションをカスタムバリデータで
作ることは可能でしょうか?

55 :デフォルトの名無しさん:2006/11/29(水) 08:09:17
>>54
全然複雑じゃないし、カスタムバリデータを作る必要もない。
標準バリデータのみで十分可能。

56 :デフォルトの名無しさん:2006/11/30(木) 07:23:36
>>55
できるわけねーだろ馬鹿が。

57 :デフォルトの名無しさん:2006/11/30(木) 07:37:31
>>56
なんで?
こんなふうにvalidwhenとmaskでチェックかければいいじゃん

<field property="txt1" depends="validwhen,mask">
  <arg position="n" key="key" />
  <var>
    <var-name>mask</var-name>
    <var-value>^regrex$</var-value>
  </var>
  <var>
    <var-name>test</var-name>
    <var-value>
      ((txt2 == null) or (*this* != null))
    </var-value>
  </var>
</field>
<field property="txt2" depends="validwhen,mask">
  <arg position="n" key="key" />
  <var>
    <var-name>mask</var-name>
    <var-value>^regrex$</var-value>
  </var>
  <var>
    <var-name>test</var-name>
    <var-value>
      ((txt1 == null) or (*this* != null))
    </var-value>
  </var>
</field>


58 :デフォルトの名無しさん:2006/11/30(木) 12:33:50
最近学校の実習が終わり実習でやっていた事を家で
完成させたいと思い自分のパソコンの環境を整えようと
J2SDK1.4.2_11
tomcat4.1
eclipse3.2.0
struts 1.2.8
で環境構築をしたのですが
JSPのコンパイルされたクラスファイルが深いところに
なってしまっています
(C:\eclipse\workspace\myproject2\work\org\apache\jsp\jsp\jsp)
これの階層を浅いところにコンパイルさせたいのですが
どこら辺が原因となっていると思いますでしょうか?

59 :デフォルトの名無しさん:2006/11/30(木) 15:32:01
>>58
コンテキスト設定ファイル。

60 :デフォルトの名無しさん:2006/12/01(金) 03:11:07
>>56
恥ずかしい奴だな…

61 :デフォルトの名無しさん:2006/12/03(日) 17:15:45
eclipse3.2.1でlombozプラグインを使いたくて調べたのですが、
lombozプラグインを使用するためには、emf-sdo-runtimeが
必要とわかり、これも用意しました。

で、eclipse3.2.1が単体で動く環境は出来ており、
emf-sdo-runtime
lombozプラグイン
の順で導入、ググって調べたらパースペクティブのカスタマイズ
で「ビューの表示」を選べば「lomboz」のチェックボックスが現れ
るので、チェックを入れるとあります。

ここで躓いたのですが、「lomboz」のチェックボックスが表示さ
れません。

環境は下記の通りなのですが、どなたかうまくいっている方が
おりましたら、抜けている点など教えていただけないでしょうか。

jdk-1_5_0_09-windows-i586-p.exe
jakarta-tomcat-5.0.28.exe
eclipse-SDK-3.2.1-win32.zip
org.objectweb.lomboz-R-3.2-200610201336.zip
emf-sdo-runtime-2.3.0M3.zip


62 :デフォルトの名無しさん:2006/12/03(日) 18:06:11
>>61
それが正解
本当の姿がわからないんなら、lombozのall-in-oneパックを使ってみなよ
ちなみに今回はWTPに機能追加してるだけ
WTPの使い方ぐらいは自分で調べて

63 :デフォルトの名無しさん:2006/12/03(日) 18:57:25
>>62
all-in-oneパックおとしてWTPググってみます。
アドバイスありがとうございます。

64 :デフォルトの名無しさん:2006/12/03(日) 22:25:08
まあ、NetBeans5.5使うほうが楽なわけだが。

65 :デフォルトの名無しさん:2006/12/04(月) 08:56:11
糞エディターが直らない限りNetBeans使うことは無い

66 :デフォルトの名無しさん:2006/12/04(月) 16:05:28
つうことは、NetBeans6.0待ちだな

67 :デフォルトの名無しさん:2006/12/06(水) 22:39:53
web.xmlでエラーページを指定してエラーページを表示させるようにしてるんですが、IEだと表示されないようです。
firefoxは自分で作ったエラーページが表示されます。
ぐぐったら、512バイト以上あればIEでもウマーと書いてあったので、エラーページを512バイト以上にしましたが、表示されませんでした。
IEの設定変えることなしに表示させたいんですが、なにか解決はありませんか?

68 :デフォルトの名無しさん:2006/12/06(水) 23:13:06
>>67
512B以上あれば表示されるはず。
pageディレクティブで、isErrorPage="true" は設定してる?


69 :デフォルトの名無しさん:2006/12/06(水) 23:15:10
自己解決しました。
実は512b以上ではなく512kb以上だったようです。
なんかすいません。


70 :デフォルトの名無しさん:2006/12/06(水) 23:17:03
あ、回答ありがとうございます

>>68
isErrorPage="true"にはしています
とりあえず512kbの勘違いかな?と思いまして、512kbになるまで改行入れまくったら表示されました。
でも、やっぱり512bで表示されるんですかね・・・

71 :デフォルトの名無しさん:2006/12/09(土) 07:39:15
リクエストを受け取るActionFormでnullを許したくない時に
Nullだったら空の文字を返すクラス作って↓みたいにしたいんですけど、
何か問題ありますかね?

メモリ食いそうだけど、小規模だから問題ないと思うのですが、こんな風にやっていいのか自信が持てないので・・・。

class XXXXForm extends ActionForm {
  private NNString name = new NNString();
  public getName() {
  return name.get();
  }
  public setName(String name) {
    this.name.set(name);
  }
}

72 :デフォルトの名無しさん:2006/12/09(土) 10:23:31
>>71
getterの戻り値はString、setterの戻り値はvoidでおk?
アプリケーションからは"name"というプロパティで扱うということでおK?

上記の前提なら大丈夫だ。

質問するときは必要な情報はちゃんと盛り込んで欲しい。

73 :デフォルトの名無しさん:2006/12/09(土) 10:56:37
>73

すみません。戻り値が、漏れてました。
初めて、Javaをやるのでまだ、よくわかってないのですが、
各フィールド単位でフィルタみたいなものを設定できそうですね。

FilterString name = new Null2Empty().append(new Trim()).append(new SubString(0,50));
リストでつながるイメージで。妄想ですが・・・。

74 :デフォルトの名無しさん:2006/12/11(月) 22:56:27
>>73
なかなかおもしろい。
というかやりたいのはデコレータパターンじゃないの?
そうならば、こんなんだろな。
new Null2Empty(new Trim(new SubString(0,50)));

でも入力エラーで入力画面に戻った時に getter で取得した
文字が画面に表示されるのは分かった上で言ってる?

75 :73:2006/12/13(水) 08:52:21
>>74
作ってみてから気づきましたorz。

> でも入力エラーで入力画面に戻った時に getter で取得した
> 文字が画面に表示されるのは分かった上で言ってる?

今回は、NG出されたのでダメでしたが、
変換して出した方が、いいケースもあると思うので
もうちょっと考えてみますね。

# 利用者としては、勝手に変換されると違和感があるのかもしれませんTT

76 :デフォルトの名無しさん:2006/12/13(水) 23:13:16
Strutsでアプリ作るときって、画面に表示する文字リソースファイルにするもん?
めちゃくちゃ面倒くさいし、JSPよんででもわかりにくいんだけど。
名前の付け方がへたくそ?

77 :デフォルトの名無しさん:2006/12/13(水) 23:23:07
>>76
必要がなければわざわざしなくていいよ。

78 :デフォルトの名無しさん:2006/12/14(木) 00:35:21
DynaValidatorFormで、Validate=trueにすると、検証ひっかかると、入力で検証通ったプロパティリセットされますよね?それを保持するにはアクションでセットアトリビュートしなきゃ駄目なんですか?チェック通ったフォームの内容は保持したいんです。ご教授願いますo(_ _*)o

79 :デフォルトの名無しさん:2006/12/14(木) 02:17:41
ActionFormってのは1画面につき、1つがセオリーなんですか?
複数画面で似たような項目があるけど、入力の検証が全然違ったり
する時は完全に別々のを作るか、複数画面で共有するか、継承や委譲
使うか激しく迷うんだが・・・
あとActionFormとView Helperを同じクラスでやるか別にするかも同じく
迷ってます。こちらもアドバイスもらえたらありがたいっす。

80 :デフォルトの名無しさん:2006/12/16(土) 19:32:35
>>79

セオリーはよくわからないですが、似たような箇所があれば複数画面で共有してもいいと思います。
だいたい1画面に1つになると思います。

81 :デフォルトの名無しさん:2006/12/18(月) 01:06:26
>>76
英語版とか作らないならやんなくていいんじゃない?

82 :デフォルトの名無しさん:2006/12/19(火) 00:51:56
TOMCATでのDB2データソース接続を試みているのですが、どうも上手くいかず
原因が分かりません。
WebSphereApplicationServerではできたので、JAVA側ではなくて
TOMCAT側に何か問題がありそうなのですが…。

TOMCATのserver.xmlに追加
<Context path="/Test" docBase="Test" debug="0" reloadable="true">
<Resource name="jdbc/sample" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/sample">
<parameter>
<name>username</name>
<value>[DB2のユーザ名]</value>
</parameter>
<parameter>
<name>password</name>
<value>[DB2のパスワード]</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>COM.ibm.db2.jdbc.app.DB2Driver</value></parameter>
<parameter>
<name>url</name>
<value>jdbc:db2:SAMPLE</value>
</parameter>
</ResourceParams>
</Context>

83 :デフォルトの名無しさん:2006/12/19(火) 00:53:04
アプリケーションのweb.xmlに追加
<resource-ref>
<description />
<res-ref-name>jdbc/sample</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Application</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>

また、TOMCATのcommon/libにDB2のdb2java.zipの拡張子をjarに変えたものを入れました。
クラスパスを通すやり方はこれでよかったのでしょうか?

サーブレットの記述
 Properties env = new Properties();
 env.setPropert(Context.INITIAL_CONTEXT_FACTORY,
  "com.ibm.websphere.naming.WsnInitialContextFactory");
 Context ctx = new InitialContext(env);
 DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/sample");
ここを書き換えたりするのでしょうか?

84 :デフォルトの名無しさん:2006/12/19(火) 00:56:13
>>83
Tomcatの、context.xmlに<ResourceLink>要素を書く

85 :デフォルトの名無しさん:2006/12/21(木) 11:42:26
サーブレットで外部プログラムを実行したいんですけど、
windowsの場合、標準出力・標準エラー出力をスレッドを生成して呼んだほうがいいらしいのですが、
 http://javafaq.jp/S103.html
 [Q12]
サーブレット内でスレッドって勝手に作っちゃって良いのでしょうか?


86 :デフォルトの名無しさん:2006/12/21(木) 23:33:17
某所ではボコボコつくっとるようだが・・・
Weblogicだが・・・

87 :デフォルトの名無しさん:2006/12/22(金) 00:36:42
スレッド作っちゃだめって思う理由が分からん。
ただ、そう思ってるなら根本的に知識が不足してるから危険は危険だろな。

スレッド、作りすぎてサーバ落としたり。
AP サーバ落としたのに終了しねーぞゴルァとかなったり。

88 :デフォルトの名無しさん:2006/12/22(金) 09:45:09
>>87
ありがとうございます。
終了処理で心配しているのが、
子スレッドが終了していないのに親スレッド(リクエストスレッド)が終了(アプリケーションアンデプロイ)すると
親スレッドはdestroyになって子スレッドの終了を待ってしまうのでしょうか。

というか、スレッドってそういうものなのでしょうか?

その場合、サーブレットの終了処理で、子スレッドのdestroyをしようかなと思うのですが、
サーブレットの終了処理の前に、リクエストスレッドが終了しようとして、そこでずっと止まってしまったり・・・

89 :103:2006/12/26(火) 11:24:43
セッションタイムアウト時に僅かに処理をしたいんだけど、
どこに書けばいいのかまったくぜんぜんわかりません。
ぜひ教えてください。

90 :デフォルトの名無しさん:2006/12/26(火) 11:37:38
>>89
セッションタイムアウト用のリスナクラスを書く。

でそのクラスをweb.xmlにリスナとしと書いておくとタイムアウト時に呼ばれる。

↓解決してないけどヒントには、なるはず。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=33062&forum=12&3

91 :デフォルトの名無しさん:2006/12/27(水) 03:13:31
アイデア自体は、pythonのcherrypyからのパクリなのですが、

strutsでいうstruts-config.xmlに当たる部分をクラスに置き換えて
メソッド名 = URLにしたフレームワーク(というかURLDispatcher)を考えています
(というか、ほぼ実装ずみです)

以下のようなクラスが、あったとき、
/index.do で Root#index(・・・)が、実行される。
/hoge/XXXX.doでHoge#XXXX(・・・)が、実行されるようにします。

class Root {
  public Hoge hoge;
  public ActionForward index(ActionForm form,
    HttpServletRequest request, HttpServletResponse response) {
      return XXXX次の画面へ;
  }
}

class Hoge {
  public void XXXX(・・・) {
  }
}

続く

92 :91:2006/12/27(水) 03:26:47
この場合に問題となる点が、ありまして

struts-config.xmlに記述する
formのスコープ、validationの有無、validationエラー時の遷移先を
どのように渡してやるのが、スマートな方法でしょうか?

#とりあえず、seaserの定数アノテーションを使う方法を考えていますが、
#定数名を間違って書く場合が、ありそうでいまいち好きになれません。


93 :デフォルトの名無しさん:2006/12/28(木) 16:12:22
>>57
txt1,txt2の両方にmaskが適用されない場合はどうすん

94 :デフォルトの名無しさん:2006/12/28(木) 20:20:18
>>57
ほー、validaterってそんな複雑なことまでできんのか。
まじめにやってないとわかんないな。。。
今までtxt1とtxt2をくっつけたgetterを作ってそいつにvalidateかけてたよ。

95 :デフォルトの名無しさん:2006/12/29(金) 12:31:52
web.xmlのservlet-mappingから簡単に
url-patternだけ取ってくることってできないですかね?
sturtsだと"*.do"の部分

ソース見ると自力でweb.xmlをパースをしてるみたい。
そこまで面倒なことしないととれないもんですかね?

struts以外の某FWでhtml:actionタグみたいなのを作りたいんですけど。

96 :デフォルトの名無しさん:2006/12/29(金) 13:48:04
sevletのinitparamに定義するぐらいしか思いつかん。
web.xmlパースでいいんじゃない?一回作ればいいだけ出し

97 :デフォルトの名無しさん:2007/01/02(火) 19:29:42
Struts上のアプリケーションにjavassistを仕込みたいと思っています。
が・・・・
new した際のクラスローダはクラスが作成された際のクラスローダで
ActionServletは自作のServletからデリゲーションして問題なくなったのですが
JSPまわりがダメです。
JSPの作成元はTOMCAT内だし、中々難しい状態です。
commns.Log周りで怒られてしまいます。


J2EEアプリケーション内にjavassistを仕込むにはどうやったらよいのでしょうか。

98 :デフォルトの名無しさん:2007/01/02(火) 21:50:11
具体的にはどんな風に怒られる?

99 :デフォルトの名無しさん:2007/01/03(水) 15:30:56
strutsでファイルアップロード機能を実装しています。
ファイルアップロード画面でsubmitすると、以下のようなexceptionがでます。
ググるとenctype="multipart/form-data"をしていすればおkみたいなことが書かれているのですが、
解決しません。それ以外になにか設定すべきことはありますでしょうか。
ちなみに左記のサイトを参考にしました。http://www.javaroad.jp/opensource/js_struts20.htm

javax.servlet.ServletException: BeanUtils.populate
org.apache.struts.util.RequestUtils.populate(RequestUtils.java:1254)
org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:821)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:254)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
原因
java.lang.IllegalArgumentException: argument type mismatch
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:324)
org.apache.commons.beanutils.PropertyUtils.setSimpleProperty(PropertyUtils.java:1789)
org.apache.commons.beanutils.PropertyUtils.setNestedProperty(PropertyUtils.java:1684)
org.apache.commons.beanutils.PropertyUtils.setProperty(PropertyUtils.java:1713)
org.apache.commons.beanutils.BeanUtils.setProperty(BeanUtils.java:1019)
org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:808)
org.apache.struts.util.RequestUtils.populate(RequestUtils.java:1252)
org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:821)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:254)
(略

100 :デフォルトの名無しさん:2007/01/03(水) 15:47:06
>>99
ActionFormのプロパティの型はorg.apache.struts.upload.FormFile型にしてる?

101 :99:2007/01/03(水) 15:48:11
>100
してます。

102 :デフォルトの名無しさん:2007/01/03(水) 15:53:55
>>101
じゃあ、その情報だけじゃわからん。

スタックトレースを見る限り、RequestProcessorがActionFormのプロパティに
オブジェクトをセットするところで、BeanUtilsのpopulate()メソッドが
java.lang.IllegalArgumentException: argument type mismatch を投げている。
setterの引数の型と実際に渡されたオブジェクトの型が違う場合にこの例外が起きる。


103 :99:2007/01/03(水) 15:58:05
>102
あっ、たったいま自己解決しました。

<html:file property="upload" size="20" />
<html:submit value="upload" property="upload" />
                  ~~~~~~~~~~~~~~~~~~
~部分が余計についてたためでした・・。

一晩中悩んだ結果がこれか・・orzorz

お騒がせしました。。

104 :デフォルトの名無しさん:2007/01/06(土) 01:05:07
Actionでrequest.setAttribute("KEY",@@@)でリクエストに値を格納しました。
@@@はArrayListで文字がランダムな数字が入っています。
これをJSPでiterateタグを使って表示させたいのですが、どうすればよいでしょうか?
ArrayListの中身がBeanだったら大丈夫なんですが、数字の場合、書き方がわからなく
悩んでいます。

105 :デフォルトの名無しさん:2007/01/11(木) 23:27:27
bean:messageについて教えてください。

環境
java1.5
struts1.3
TOMCAT5.0
eclipse3.1

bean:messageタグでメッセージを表示する際に、
ロケールの違いによって英語よう、日本語用を分けれるのはわかるのですが、

タイトル等固定メッセージと、エラー等システムで可変のメッセージを、
2つのプロパティファイルに分けたいのですが、
どのようにすればよいのか、具体的に教えていただけないでしょうか?

調べながら下記のようにやってみたのですが、うまくいきません。
どのように間違っているのか教えてください。

struts-configに、下記のように設定し、
<message-resources parameter="resources.aaaaa"/>
<message-resources parameter="resources.bbbbb"/>

利用するJSPで
<bean:message bundle="aaaaa" key="aaa.bbb.ccc" />
<bean:message bundle="bbbbb" key="aaa.bbb.ccc" />
と指定して、aaaaa.propertiesのaaa.bbb.cccと
bbbbb.propertiesのaaa.bbb.cccをそれぞれ表示できると思ったのですが・・・

106 :デフォルトの名無しさん:2007/01/11(木) 23:34:10
>>105
<message-resources parameter="resources.aaaaa" key="aaaa" />
<message-resources parameter="resources.bbbbb" key="bbbb"/>
とすればおk。

107 :デフォルトの名無しさん:2007/01/11(木) 23:35:13
>>106です。
<message-resources parameter="resources.aaaaa" key="aaaaa" />
<message-resources parameter="resources.bbbbb" key="bbbbb"/>
でした。orz

108 :デフォルトの名無しさん:2007/01/11(木) 23:55:49
>>106さん

早速のレスありがとうございます。

「message-resources」にkeyを設定してやらなければならないのですか・・・
さっぱり気づきませんでした。明日早速やってみます。

jspの記述は「<bean:message bundle="bbbbb" key="aaa.bbb.ccc" />」
のままで良いのでしょうか?

109 :デフォルトの名無しさん:2007/01/13(土) 23:37:54
html:buttonでidとかstyle属性を指定するにはどうしたらいいのでしょうか。

110 :デフォルトの名無しさん:2007/01/13(土) 23:47:04
id属性を指定するには、"styleId"。
style属性は、"style"でいいんじゃね?

http://struts.apache.org/1.x/struts-taglib/tlddoc/html/button.html

111 :デフォルトの名無しさん:2007/01/14(日) 00:10:49
俺たちはいつも2ちゃんねるに見守られさまざまなカキコをしてきた。
その2ちゃんねるが閉鎖されるなんていやだ。
そのためにはどうすればいいか?抗議をすればいい
いまこそ2ちゃんねるを守るために俺は秋葉原駅電気街出口で抗議をしようと思う。
みんな、手を貸してはくれないか?

手を貸してくれる同志は下記参照
日時 2007年1月13日
日程 午前10時から秋葉原駅電気街出口にて民衆に訴えかける、午後1時終了予定
必ず「2ちゃんねるが閉鎖されるのを黙ってみていられません、どうか2ちゃんねるが閉鎖されるのに反対してください」と言ってください

どうかコピペして広い範囲に知らせてくれ。


112 :デフォルトの名無しさん:2007/01/16(火) 23:24:37
Struts と Log4J使ってWebアプリを作っていますが、テストの仕方で悩んでます。
UIの部分のは、普通にブラウザからアクセスし、テストしているのですが
裏側のLogic部分の単体テストで、普通にTestLogicみたいなクラスをつくり、その中の
main()からテストをしようとしてるのですが、これってスタンダードですかね?
この方法だとTestLogicが入っているPackageにlog4j.xmlをCopyしないとエラッタリしるので。。

Logic部分のテスト、みんなはどうしてますか?

113 :デフォルトの名無しさん:2007/01/16(火) 23:37:36
Tomcatをデバッグモードで動かす

114 :デフォルトの名無しさん:2007/01/17(水) 00:23:50
>>112
main っていつの話だよw
テストの基本は JUnit だろ。
間違っても Test クラスからログとか出して目視で確認するなよw

115 :デフォルトの名無しさん:2007/01/17(水) 23:35:50
>>114
JUnit って、Log4Jが動いているWebAppに対しても上手く動きますかね。
自分が試したところ、log4j.xml の置き場所を移動させたりしないとできなかったのです。

jp+
+logic
+action
+util
のようなSrcの階層で、WebAppを起動するときは、jpと同列のフォルダー(src直下)
にlog4j.xml を入れているのを、いちいちlogicフォルダーとかに移してたので、
上手い方法があるのかなと。

116 :デフォルトの名無しさん:2007/01/18(木) 00:14:56
>>115
諦めろ
この業界を諦めろ

117 :デフォルトの名無しさん:2007/01/18(木) 01:05:31
>>115
src直下でいけるだろ。
っつーか、JUnitにログなんか関係ないだろ。

118 :デフォルトの名無しさん:2007/01/18(木) 01:48:41
Linux/Tomcat 5.5でwar配置を何度も繰り返してるとポート使用中のエラーが
発生してページが開けなくなる上にTomcatをシャットダウンしても
Javaプロセスが残っちゃってkillコマンドでそのプロセスを切らなきゃならない
事があるんだけど、これって何かやり方が悪いのでしょうか?

119 :デフォルトの名無しさん:2007/01/18(木) 03:34:10
うん


120 :デフォルトの名無しさん:2007/01/18(木) 05:09:59
2つの整数を入力させて、その合計を出力するプログラムを書いた。
正しく動いた。
感動した。

121 :デフォルトの名無しさん:2007/01/18(木) 09:42:48
Exadel Studio ってどうですか?
StrutsIDEよりも便利だったら乗り換えようかと思ってるんですが。

122 :デフォルトの名無しさん:2007/01/19(金) 23:23:09
jettyやtomcat単体でのApacheとのストレステスト比較みたいなものないですか?

123 :デフォルトの名無しさん:2007/01/20(土) 06:41:44
JMeter使って自分でやってみるほうが早いんじゃない?

124 :デフォルトの名無しさん:2007/01/20(土) 15:34:46
Ajaxの本命のひとつがJettyらしいからJavaServerも侮れなくなってるね

125 :デフォルトの名無しさん:2007/01/20(土) 15:52:18
からっぽでもWEB-INFって必要なの?動いてる気がするんだけど

126 :デフォルトの名無しさん:2007/01/21(日) 10:00:57
strutsを試しているのですがformbeanの生成に失敗しているようでエラーになります。
action.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)


127 :デフォルトの名無しさん:2007/01/21(日) 12:44:34
>>126
Struts1.1用のコードや設定ファイルをStruts1.2で使っている為では?
例えばStruts1.2なのにHelloWorldFormでActionErrorを使っているとか。

128 :デフォルトの名無しさん: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共に表示されたことは確認しています

129 :ソースです:2007/01/21(日) 14:46:47
<%@ page contentType="text/html; charset=Windows-31J" import="java.sql.*,javax.naming.*,javax.sql.*" %>

<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>

130 :デフォルトの名無しさん:2007/01/21(日) 14:57:17
ServletContex#getRealPathを使用せずにWebアプリケーションのルートパスへの絶対パスを取得するのって無理?

131 :デフォルトの名無しさん:2007/01/21(日) 14:59:31
>>129
×
if(pass == password && username == id){response.sendRedirect("memberlistM.jsp");}


if (pass.equals(password) && username.equals(id) {.......}

132 :デフォルトの名無しさん:2007/01/21(日) 15:24:31
>>131
ありがとうございました、やってみます

133 :デフォルトの名無しさん:2007/01/25(木) 22:40:56
validatorを使ってフォームに入力された日付の大小比較を
行いたいと思いましたが、Strutsのvalidator機能で提供されている
ルールに無かったので独自ルールを作ろうとしましたがうまくできませんでした。

field propertyを2つ設定することが出来れば比較も可能だと思うのですが
実現方法を教えていただけないでしょうか?

googleで調べましたがpropertyを2つ設定しているサンプルが
見当たらなかったのでもしかして実現不可能なのでしょうか。。。

このあたりを参考に独自ルールを作りました。
ttp://www.techscore.com/tech/ApacheJakarta/Struts/15-2.html

134 :デフォルトの名無しさん:2007/01/25(木) 22:50:16
>>133
Strutsのオフィシャルページ
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


135 :133:2007/01/25(木) 23:46:35
>>134
ありがとうございます!さっそく試してみます。

大小比較の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>以降に関しては試していなかったので
試してみます。
また明日、報告します。

136 :デフォルトの名無しさん:2007/01/25(木) 23:58:55
>>130
あるなら俺も知りたいが。無理じゃねーの?

137 :デフォルトの名無しさん:2007/01/27(土) 22:43:12
画面遷移をするための「次へ」ボタンと「戻る」ボタンを用意して、
それぞれ別のActionを実行させたいのですが、
<html:form> をボタン毎に分ける以外に方法はありますでしょうか?

もしくは、複数のSUBMITを区別する方法があったら教えてください。
なんとなく、VALUEで判定するのは気がひけます。。。

138 :137:2007/01/27(土) 22:51:39
やっぱり Button にして、onClick で Submit ですかね?

139 :133:2007/01/28(日) 00:08:02
>>134
ありがとうございました。validatorが無事動作しました。
本当に感謝です。

140 :デフォルトの名無しさん:2007/01/28(日) 00:47:39
>>137
http://www.javaroad.jp/opensource/js_struts14.htm
これみてわかんなきゃさっさと公務員にでもなったほうがいいよ。

141 :デフォルトの名無しさん:2007/01/28(日) 00:56:20
>>138
つ org.apache.actions.LookupDispatchAction

142 :デフォルトの名無しさん:2007/01/28(日) 01:05:29
LookupDispatchAction大人気だな・・・

143 :137:2007/01/28(日) 01:10:05
>>140
どうもありがとう。よくわかりやした。

144 :デフォルトの名無しさん:2007/01/29(月) 14:17:12
EclipseとTomcatで作ったWebアプリケーションは
そのままWebLogicなどに持っていけるものなのでしょうか?

145 :デフォルトの名無しさん:2007/01/29(月) 17:02:05
>>144
TomcatとWeblogicでは、一部設定ファイルが違うから無理


146 :デフォルトの名無しさん:2007/01/29(月) 23:47:13
>>144

いやいけますよ。。。
データソースの指定等でtomcat独自の指定していなければ

147 :デフォルトの名無しさん:2007/01/30(火) 01:26:37
JavaEEの範囲内ならおけ

148 :デフォルトの名無しさん:2007/01/30(火) 01:40:25
しばらくweblogic使ってないので、よく思い出せないけど
アプリ登録でTomcatにない設定なかったけ?

149 :デフォルトの名無しさん:2007/01/30(火) 03:51:21
Tomcatにない機能を使うときはTomcatにない設定になるんじゃないの?
データソースとか。

データソースの指定は、Tomcat4とTomcat5でも違うしな

150 :デフォルトの名無しさん:2007/01/30(火) 07:16:39
>>149
実装依存になるようなアホな使い方しているのか?

151 :デフォルトの名無しさん:2007/01/30(火) 08:57:26
コネクションプールはCommons DBCPを使うのが
一般的ですか?

152 :デフォルトの名無しさん:2007/01/30(火) 09:25:54
tomcatならそうだろ

153 :デフォルトの名無しさん:2007/01/30(火) 09:31:33
うーん。どこまでがJavaでどこまでがアプリケーションサーバーで
とかの区切りがわからんよー

154 :デフォルトの名無しさん:2007/01/30(火) 09:49:29
全部Javaなんだよ
その中でお前が作る部分、アプリケーションサーバが担当する部分と分かれているんだ

155 :デフォルトの名無しさん:2007/01/30(火) 09:50:28
アプリケーションサーバもほぼJavaです。

156 :デフォルトの名無しさん:2007/01/30(火) 09:51:13
>>151
そうだけど、Commons DBCP依存のコードは書かないのが普通。


157 :デフォルトの名無しさん:2007/01/30(火) 09:58:54
どこが依存しててどこが依存してないかの区切りがわからないよー
あー、JAVA苦手だ。

158 :デフォルトの名無しさん:2007/01/30(火) 12:10:54
SingleSignOnができねぇです。。。。

Tomcat5.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.他のアプリにいくと権限ないって怒られる

知ってる方いたら教えてくださいまし。。。

159 :158:2007/01/30(火) 13:47:44
新しくプロジェクト作り直したらできた。。。

まじわかんね。。。

スレ汚しスマソ

160 :デフォルトの名無しさん:2007/01/30(火) 15:51:58
httpでアクセスされたものを自動的にhttpsに
リダイレクトしてくれるような設定って
Tomcatにないでしょうか?


161 :デフォルトの名無しさん:2007/01/30(火) 16:11:25
301,302,307を投げろ

162 :デフォルトの名無しさん:2007/01/31(水) 00:43:14
同時アクセス100ユーザぐらいなら、メモリ128MBでいける?
tomcatで。

163 :デフォルトの名無しさん:2007/01/31(水) 00:46:04
128MBというのがヒープやスタックのサイズなのか物理メモリなのかでえらく違う

164 :デフォルトの名無しさん:2007/01/31(水) 00:46:21
ヒープですお

165 :デフォルトの名無しさん:2007/02/01(木) 00:41:44
パンくずリスト(パンくずリンク)について教えてください。

環境はあまり気にしないで問題ないと思っていますが、
とりあえず下記を前提にしています。
java1.46
struts2.0
TOMCAT5.0
eclipse3.1

画面の遷移時にbeanを持ち歩きつつ、
パンくずリストを作成したいのですが、
なにか良いHPとか本などを教えていただけないでしょうか?

後、仕組みを間単に教えてください。

166 :デフォルトの名無しさん:2007/02/01(木) 00:47:25
そもそも、パンくずリストに仕組みとかってあるの?

167 :デフォルトの名無しさん:2007/02/01(木) 19:31:01
http://css-happylife.com/log/css-template/visual/000106.shtml

168 :デフォルトの名無しさん:2007/02/02(金) 13:38:01
パンくずを持ち歩く必要なんてあるの?


169 :デフォルトの名無しさん:2007/02/02(金) 14:35:52
フライ作るために必要

170 :デフォルトの名無しさん:2007/02/03(土) 12:40:46
鯉のえさとして必要

171 :デフォルトの名無しさん:2007/02/03(土) 23:17:28
apache+tomcat+mysql環境で
JSP+ServletによるWEBアプリケーション開発したいんですが

何かおすすめ書籍ってありますか?

ちなみに
『Java Mysql Tomcat 掲示板とブログ』
『Tomcat&jsp』
は購入済みで一通り読みました

J2EEとかStrutsとか、このへんは、のってませんでした…


172 :デフォルトの名無しさん:2007/02/04(日) 00:21:12
>>171
読むより作ってみれ

173 :デフォルトの名無しさん:2007/02/04(日) 20:10:35
>>172
俺は本を読まないと作れないタイプなんだよ!!!
ぼけっ


174 :デフォルトの名無しさん:2007/02/04(日) 21:19:47
>>173
じゃあ諦めろセンス無し

175 :デフォルトの名無しさん:2007/02/05(月) 12:37:43
Tomcat単体でサイトを運営しているのですが、
現在a.comで運用しています。これを、b.comでもアクセスできるようにしたいのですが、
Tomcat単体で出来ますでしょうか?
ドメインの取得とDNSへの登録は完了しています。

176 :デフォルトの名無しさん:2007/02/05(月) 13:57:53
DNSで設定してるIPがa.comとb.comで同じなら、
まずはb.comにアクセスしてみろ、話はそれからだ

177 :デフォルトの名無しさん:2007/02/05(月) 14:08:29
>>170
正直、鯉専用の固形の餌の方が良くない?

178 :175:2007/02/05(月) 16:34:54
>>176
レスありがとうございます。

IPは同じで、b.comにアクセスするとhttp 500エラーが返ってきます。
見た目、tomcatのエラーではなくブラウザのエラー(?)のように見えます。

179 :デフォルトの名無しさん:2007/02/05(月) 16:43:06
「見た目」って、何を根拠にそう判断するんだ?
500エラーならサーバのエラーだろ。
500エラーが返ってきたときにブラウザがどういう挙動をするのかはまた別の話。


180 :175:2007/02/05(月) 22:36:48
>>179
失礼しました。

a.comですとTomcatのエラー画面(500)が表示され、
b.comですと白地のエラー画面(さっき見たら400になってましたorz)が表示されます。

どちらもpingは正常に返ってくるのですが。。。

181 :デフォルトの名無しさん:2007/02/05(月) 22:43:19
>>180
tomcatのエラーログ出てるなら
tomcatの設定ミスだよね

server.xmlあたりの設定にドメイン入れてないとかそんなの

182 :デフォルトの名無しさん:2007/02/06(火) 01:51:52
> 181
もともとTomcatに設定がいるかどうか聞きたかったんじゃねぇの?

183 :デフォルトの名無しさん:2007/02/06(火) 04:42:27
大体原因は掴めたのですが、解決策が見つからず困っております。
皆様の知恵をお貸し下さい。

構成:
WinXP HomeSP2
Tomcat5.5.20(catalina.policy以外はデフォルト)
Struts1.3.5 or Struts1.2.9

184 :183:2007/02/06(火) 04:43:35
問題と言うのは、Struts1.3.5に付属しているstruts-exeample.warを
サーバにデプロイした後アクセスすると、

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)


185 :183:2007/02/06(火) 04:44:56
java.security.AccessController.doPrivileged(Native Method)
org.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)


と言うエラーがでます。(見づらくてごめんなさい)


186 :183:2007/02/06(火) 04:45:35
幾つかの方法を試した後、サッパリ分からず、
Struts1.2.9の同じwarファイルで試した所、全く同じエラーが発生しました。
これは<html:link>タグが怪しいと思い、struts-blankをデプロイした後、
幾つかのタグを試した所、<html:link>だけが上記のエラーを吐きました。

これはどうすれば解決できるのでしょうか?
ご協力お願いします。

187 :デフォルトの名無しさん:2007/02/06(火) 10:52:11
>>186
どう見ても自分で>>184に原因書いんじゃん。

188 :デフォルトの名無しさん:2007/02/06(火) 21:15:41
JSPを使うときに
<bean:message key="hogehoge">
でメッセージリソースから文言を取得できるんだけど、
取得する文言を変数に入れる方法ってないん?
 
<% String str = '<bean:message key="hogehoge"> %'>
<%= str %>
 
って書いたら見事に失敗した。
どうすりゃいいんだろ。

189 :デフォルトの名無しさん:2007/02/06(火) 21:27:48
>>188
ふつうにResourceBundleを使えよ。
ViewじゃなくてControllerでやるのが良い。
セッションによって変える必要がないのなら、
ServletContextListenerやStruts PlugInを使って
初期化時に一回だけ読み込んでServletContextに入れるのがいいんじゃね?

190 :デフォルトの名無しさん:2007/02/06(火) 21:32:16
同じことで悩んだことあるな。方法は覚えてないが解決できたような気がする。気がするだけだが。

191 :デフォルトの名無しさん:2007/02/07(水) 01:03:08
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@attribute name="var"%>
<jsp:doBody var="body"/>
<c:set var="${var}" value="${body}"/>

というタグファイルを作って
<t:hoge var="str">
<bean:message key="hogehoge"/>
</t:hoge>
とやってみるというのはどうか?といま思いついた。

192 :デフォルトの名無しさん:2007/02/07(水) 13:33:09
すごいビューだなwww

193 :デフォルトの名無しさん:2007/02/08(木) 21:56:05
>>188
JSTL使えば簡単。bundleはweb.xmlで指定しとけばいい
ただしスクリプトレットではなくて式言語からでないとアクセスできない

<fmt:message var="str" key="hogehoge"/>

194 :デフォルトの名無しさん:2007/02/09(金) 11:18:29
strutsのtokenって絶対ユニークなの?
↓こんなことやっているけど?
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());

195 :デフォルトの名無しさん:2007/02/09(金) 11:30:17
>>194
同一セッションで、1ミリ秒以内にアクセスされるとユニークにはならない。

・・・ってことぐらいはソースコード見ればわかりそうなものだけど?


196 :195:2007/02/09(金) 11:31:30
そうでもなかった。
1ミリ秒以内にアクセスされても違う値を生成するようになってるね。

197 :デフォルトの名無しさん:2007/02/09(金) 11:37:58
何でハッシュ化するのだろうか?
now + id でよくね?
toHex()するのはわかるけど・・・

198 :デフォルトの名無しさん:2007/02/09(金) 13:03:43
>>197
微妙にメモリ節約

199 :デフォルトの名無しさん:2007/02/09(金) 13:31:12
>>194
つまり、strutsにかかわらずwebアプリでユニークコード作りたい場合は
TokenProcessor.getInstance().generateToken(request)でOK!ってこと?
あ、でもセッションがあること前提か・・・

200 :デフォルトの名無しさん:2007/02/09(金) 17:33:00
commons調べろ ぼけ

201 :デフォルトの名無しさん:2007/02/09(金) 18:20:19
>>200
つか、普通にロックしてインクリメントでよくね?

202 :デフォルトの名無しさん:2007/02/12(月) 17:24:04
<a href="/abd/abd.do?name=<bean:write name="name" property="property"/>">

ってな感じでFormに値を渡してやるとき
<bean:write name="name" property="property"/>の値が
「あいうえお」のような日本語だと文字化けしてうまく値を渡すことができません

なにか解決方法はありませんでしょうか?


203 :デフォルトの名無しさん:2007/02/12(月) 17:34:20
HTTP エンコード で検索してみるといいかもね?

204 :デフォルトの名無しさん:2007/02/12(月) 22:02:02
どんな感じに文字化けするかで、原因はわかるんだけどね
つーか、文字化け javaでググるだけでもわかると思うんだけどね


205 :デフォルトの名無しさん:2007/02/12(月) 22:06:16
URLEncoder.encode(name2,"Shift_JIS");

でやるってことですか?

これでやっても無理でした

206 :デフォルトの名無しさん:2007/02/12(月) 22:13:22
<bean:write name="name" property="property" />
ここに渡すときは「チマタ」という風に渡されます

jspでも<a href=/action.do?name=チマタ>
と表示されます

その次で ?`?}?^ となります

207 :デフォルトの名無しさん:2007/02/12(月) 22:17:27
>>206
サーバーの文字コード
JSP,Servlet,Beansファイル自体の文字コード
JSPで指定している文字コード
Servket,Beansをコンパイルする際の文字コード
エンコードする際の文字コード

をもう一回見直せばいいんじゃね?

そもそも文字コードは何で統一したいのさ?



208 :206:2007/02/12(月) 22:23:46
すいません、無事解決しました

new String (String.getBytes("iso-8859-1"), "Shift_JIS");

これで解決しました。

こんなこともわからなかったなんて・・・

本当にいろいろとアドバイスありがとうございました

209 :デフォルトの名無しさん:2007/02/12(月) 22:23:50
もしかしてTomcat5以上を使ってる?
その場合はserver.xmlのConnectorに設定が必要

210 :デフォルトの名無しさん:2007/02/12(月) 22:34:59
>>209
えらく不正確なレスだなw
Tomcat5でも、5.0.16より前のバージョンではその問題はないし、
Tomcat4でも4.1.29以降のバージョンでは同じ問題があるし、
「server.xmlのConnectorに設定が必要」なんて、思いっきり実装依存な方法だし。

211 :デフォルトの名無しさん:2007/02/12(月) 22:39:10
そもそもあれって、jk2使ってる場合だけだったキガス
mod_proxy_balancerあたり使ってると関係無かったような…

まあ、JSP,Servletって環境からコーディングまで一通りわかってないといけないし
大変だよね…

212 :デフォルトの名無しさん:2007/02/12(月) 23:04:28
>>211
>そもそもあれって、jk2使ってる場合だけだったキガス

デタラメ言うな

213 :デフォルトの名無しさん:2007/02/12(月) 23:24:32
>>210
Tomcat4は4.1.30で元に戻ってる
つまり、Tomcat5使ってるときにだけ気をつけていれば
いちいち細かいバージョン覚えておく必要は無いw

214 :デフォルトの名無しさん:2007/02/13(火) 00:39:09
つまり5.5つかえよと

215 :デフォルトの名無しさん:2007/02/13(火) 09:45:15
hibernateを使ってるんですが、以下のようなエラーがなんかのタイミングで出ます。
これは悪いメッセージでしょうか?
原因とかわければ教えてください。

2007/XX/XX 9:13:06 net.sf.hibernate.impl.SessionImpl finalize
WARNING: finalizing unclosed session with closed connection

216 :デフォルトの名無しさん:2007/02/13(火) 10:35:31
tomcatのリクエストスレッドってプールされているのですか?
それともその都度スレッドをnewしているのですか?

217 :デフォルトの名無しさん:2007/02/13(火) 16:10:42
>>215
いいも悪いも、書いてある通りだが…。

218 :デフォルトの名無しさん:2007/02/13(火) 16:25:07
>>216
プールされている

219 :215:2007/02/13(火) 17:37:35
>>217
この書いてあることを教えて下さい。

220 :デフォルトの名無しさん:2007/02/13(火) 18:21:25
>>219
日本語でおk。

221 :デフォルトの名無しさん:2007/02/16(金) 17:18:24
WindowsServer2003 上で Tomcat5.0.28 を稼動させています。
現在は %CATALINA_HOME%\bin\startup.bat から起動させる形をとっていますが、
実行時に使用するメモリ量やライブラリへのパスを指定する必要があるため、
startup.bat には
set CATALINA_OPTS=-Xmx512M -Xms128M -Xss256K -server -Dp6.home="C:\Tomcat5\webapps\test\WEB-INF\lib"
という記述を加えています。

が、今度 Tomcat をサービス化することになったのですが bat はサービスに登録できません。
Tomcat5.exe に上記のパラメータを渡すにはどうすればいいんでしょうか?
試しにシステム環境変数に CATALINA_OPTS という項目を作成して上記パラメータを設定しましたがダメでした。

よろしくお願いします。


222 :デフォルトの名無しさん:2007/02/16(金) 18:15:28
TOMCAT サービス オプション
でググったら最初に出てきたけど。

223 :デフォルトの名無しさん:2007/02/16(金) 18:32:51
>>222
ありがとうございます。
その方法だと -Xmx512M -Xms128M -Xss256K -server はいいんですが、
-Dp6.home="C:\Tomcat5\webapps\test\WEB-INF\lib"
の指定が反映されないんです。

これはp6spyっていうライブラリへの指定なのです。

224 :デフォルトの名無しさん:2007/02/17(土) 14:52:30
いっそのことCentOSでも入れた方が早い気がするよ

225 :221:2007/02/19(月) 10:46:45
解決できました。
%CATALINA_HOME%\bin\Tomcat5w.exe を使うと、
サービス時にJVMへ渡すオプションをGUIで設定できました。
こんな簡単なことだったとは・・・。

226 :デフォルトの名無しさん:2007/02/19(月) 11:00:30
ちなみに
http://tomcat.apache.org/tomcat-5.5-doc/windows-service-howto.html
に書いてありました。
なんで5.0のドキュメントには載ってないのよ・・・

227 :デフォルトの名無しさん:2007/02/22(木) 20:01:19
はまっているので教えてください。

現在strutsでファイルアップロードの機能を使っているのですが
外部から通してアップロードを行おうとすると、200kb以上のファイルがアップロードできません。
自宅内で行う分には問題なくうごきます。

エラー内容は以下です。

javax.servlet.ServletException: Processing of multipart/form-data request failed. Stream ended unexpectedly
org.apache.struts.upload.CommonsMultipartRequestHandler.handleRequest(CommonsMultipartRequestHandler.java:191)
org.apache.struts.util.RequestUtils.populate(RequestUtils.java:389)
org.apache.struts.chain.commands.servlet.PopulateActionForm.populate(PopulateActionForm.java:45)
org.apache.struts.chain.commands.AbstractPopulateActionForm.execute(AbstractPopulateActionForm.java:57)
org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:48)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:280)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1858)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:459)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

これはコードの問題なのかサーバの設定の問題なのかもまったく見当がつきません。

どなたかご教授お願いします。


228 :デフォルトの名無しさん:2007/02/22(木) 21:03:02
>>227
Strutsのバージョンやや使用しているServletコンテナとそのバージョン、
それからJavaのバージョン、サーバOSの環境などを
詳しく説明してもらわないとわからん

229 :デフォルトの名無しさん:2007/02/22(木) 23:42:36
>>227
マルチパートでデータ取ってる途中に
なんかブッちぎれたぞ
ゴルァ
ってjavaが怒ってるからサーバーの設定からネットワークの設定の範囲の問題じゃね?

ルーターに何かやってんじゃね?

230 :デフォルトの名無しさん:2007/02/24(土) 22:39:24
.warファイルに固めてサーバにデプロイするときlog4jの設定ファイル(log4j.xml)って
どこにおけばいいの?
エクリプス上では絶対パスでできたけど、サーバにデプロイするときに
絶対パスじゃまずいでしょう?

あと、任意の場所において設定することって可能?

231 :デフォルトの名無しさん:2007/02/24(土) 23:06:05
>>230
クラスパス上に置く。
WEB-INF/classesに置いてもいいし、
JARにしてWEB-INF/libに置いてもいい。

むしろ
>エクリプス上では絶対パスでできたけど
が俺には謎。

232 :デフォルトの名無しさん:2007/02/24(土) 23:29:17
WEB-INF/classesにおいてもエクリプス上で
DOMConfigurator.configure("log4j.xml");

だと読み込まない

"log4j.xml"を絶対パス("c:\abc\log4\log4j.xml"見たいな感じ)にしないと読み込まない

.warに固めてTomcat起動させてデプロイさせて実行するとき
DOMConfigurator.configure("log4j.xml");
だとやはり読み込まない(WEB-INF/classesにおいてあります)

どうすればいいのですか?





233 :デフォルトの名無しさん:2007/02/24(土) 23:53:43
warにするメリットなんてないだろ。

234 :デフォルトの名無しさん:2007/02/25(日) 01:29:05
なんで?

235 :デフォルトの名無しさん:2007/02/25(日) 10:36:00
>>233
開発環境がwinで評価環境・本番環境がUNIX計の時とかは便利だけど?

236 :デフォルトの名無しさん:2007/02/25(日) 13:02:18
>>235

なんで?

237 :デフォルトの名無しさん:2007/02/25(日) 14:55:40
>>236
むしろwar化しないメリットを教えてくれ

238 :デフォルトの名無しさん:2007/02/25(日) 15:31:06
中のファイルを簡単に置き換え可能だから

239 :デフォルトの名無しさん:2007/02/25(日) 15:42:02
コーディング時は、いちいちwar化しないと動作できないというのは効率悪い。

240 :デフォルトの名無しさん:2007/02/25(日) 17:09:56
なんか話の前提条件が合ってない悪寒。
war化するのはサーバにデプロイする必要があるからだろ?
開発中はそれこそEclipseでやってればデプロイなんて意識してやら無いだろうし。

241 :デフォルトの名無しさん:2007/02/25(日) 17:18:23
.warファイルにしてデプロイしても
違う方法でデプロイしても

”ファイルが見つかりません”(TT)

どうすればいいの?

242 :デフォルトの名無しさん:2007/02/25(日) 17:24:11
そういわれても、どうすればいいんでしょうね

243 :デフォルトの名無しさん:2007/02/25(日) 17:27:02
>>241
環境は?
そもそもファイルが見つかりませんと言っているのは誰?

244 :デフォルトの名無しさん:2007/02/25(日) 17:35:24
>>240
サーバにデプロイするのになんでwar化するの?
warにしてもデプロイできるけどwarにしないでもデプロイできるよ。

245 :デフォルトの名無しさん:2007/02/25(日) 17:55:27
>>244
war・earデプロイは商用鯖では良くある事

246 :デフォルトの名無しさん:2007/02/25(日) 18:04:01
いやいやTomcatスレだし。

247 :245:2007/02/25(日) 18:09:38
>>246
すまん、忘れてたw

248 :デフォルトの名無しさん:2007/02/25(日) 18:15:21
>>243
Tomcatが言ってる

Tomcat5.5 Struts1.2.9

249 :デフォルトの名無しさん:2007/02/25(日) 20:52:52
サーバにコピーするときwar化してれば1ファイルなので

精神衛生上良い

250 :デフォルトの名無しさん:2007/02/25(日) 22:04:39
>>232
log4j.xml のパスを明示しなくても、クラスパスから勝手に探してくれますよ

Log logger = Logfactory.getLog( XXX.class );
logger.info( "おしらせ" );

とやると、WEB-INF/classes/log4j.xml が読み込まれる。

251 :デフォルトの名無しさん:2007/02/25(日) 22:46:32
つうか、warファイルなんて、IDEでビルドすればすぐ作れるのに、warを作る作らないでもめても仕方ないだろ。

252 :デフォルトの名無しさん:2007/02/25(日) 22:49:08
>>251
LinuxサーバでWEB-INF/classes/log4j.xmlを書き換える場合は?
warじゃないほうが簡単に書き換えられるじゃん。
それともIDEでwarを作り直してFTPでアップですか?

253 :デフォルトの名無しさん:2007/02/25(日) 23:11:43
log4jの仕様が悪い。
本来server.xmlなどで対応できるべき。

254 :デフォルトの名無しさん:2007/02/25(日) 23:15:29
Struts2 = Shale ?!
Struts2を落としたものの、どうにも入力補完がorg.apacheに対応してない
なぜだ?と思っていたら別物?
Struts2のところにBest Availableって書いてあったのに?

もしおかしなことを言っているようでしたら、ご指摘をお願いします
こんなことに時間かけ過ぎだ>俺

255 :デフォルトの名無しさん:2007/02/25(日) 23:22:34
javaってめんどくさいね

256 :デフォルトの名無しさん:2007/02/25(日) 23:35:47
>Struts2 = Shale
ちがう。
以前はShaleがStruts2と呼ばれていたが、
今のStruts2.xはWebWorkから引っ越してきた、全くの別物。
ShaleはStrutsプロジェクトから独立して
Apache Shaleプロジェクトで開発が進んでいる。


257 :デフォルトの名無しさん:2007/02/25(日) 23:36:28
>>253
>本来server.xmlなどで対応できるべき。
特定の製品依存にしろと?

258 :デフォルトの名無しさん:2007/02/26(月) 00:07:19
本番環境に一度デブロイしたヤツをそんなにマメに書き換えるんだろうか?
テスト鯖だったらwarじゃない方が簡単って意見もわかるが。

まあ、漏れはear派だけど。

259 :デフォルトの名無しさん:2007/02/26(月) 09:46:02
>>256
違ってましたか。ありがとうございます

何がなんだかわけがわからない

260 :デフォルトの名無しさん:2007/02/26(月) 23:30:57
少々教えてください。
54,57で少し出ていたのですが、strut-validaorで、
Aフィールドが「電話」のとき、Bフィールドでは電話番号のチェックを
Aフィールドが「mail」のとき、Bフィールドではメールアドレスのチェック
と言う風に、Aフィールドの値によってBフィールドの検証方法を動的に
変えることは可能なのでしょうか?

できれば、具体的な例で教えてほしいです。
54,57見ていると1つのフィールドに対しチェックをするというものだと
思っていた自分からすると目から鱗なのですが、
もう少し進んだこともできたりするのではないかと思い
書き込みました。

上記ができると、非常に便利なのですが・・・

261 :デフォルトの名無しさん:2007/02/26(月) 23:41:29
>>260
それはさすがに標準のルールのみでは無理。
ルールを自作するしかない。
でもロジックは標準のものを呼び出したり流用したりでいけると思うから
そんなに難しくないと思うよ。

262 :デフォルトの名無しさん:2007/02/27(火) 08:17:16
俺はログ設定は運用側の問題だと思うから、war には含めない。
log4j.xml は適当な場所(conf/とか)に置いてるね。


263 :デフォルトの名無しさん:2007/02/27(火) 12:16:54
サーブレットコンテナのロギング誰も使ってないのか

264 :デフォルトの名無しさん:2007/02/27(火) 22:04:06
Struts(Servlet+JSP)で開発を検討しているのですが、
画面のちらつきを抑えるという理由で、全画面Ajax対応です…

複雑なAjaxを余り意識せず、Strutsの開発イメージで
構築できるライブラリってないですか?
探しても見つからなかったもので。

そもそも、ちらつきを抑える方法がAjax以外にないものかと…

265 :デフォルトの名無しさん:2007/02/27(火) 22:05:04
チラツキの意味がわからん。画面遷移=チラツキ?

266 :デフォルトの名無しさん:2007/02/27(火) 22:38:22
漏れもちらつきの意味が解らんが・・・。

ページ遷移する時にタラタラ描画がされるというのなら
単に回線インフラとか鯖のレスポンスの問題だと思うが。

267 :264:2007/02/28(水) 02:15:33
画面は数秒おきに自動更新されます。
ピカッと光るようなものがちらつきです。
自画面を再表示時に、画面が更新されていないようなイメージを
目指しています。

268 :デフォルトの名無しさん:2007/02/28(水) 06:40:24
それはただ単に頭悪いと言うかそもそもの選択が悪い気ガス。

ヤフオクの残り時間表示もそういう意味では多少チラついたりするんだが、
かなり無駄というか本質的でない事に体力使えて羨ましいというか
なんというか・・・。

269 :デフォルトの名無しさん:2007/02/28(水) 07:41:00
>>267
画面内で実際に更新する内容が限られてるのなら
Ajaxは有力な選択肢になる
Strutsで作っているのなら、手っ取り早いのはServletResponseから
Readerを取得して、そこにJSON型の結果データを出力すればいい

270 :デフォルトの名無しさん:2007/02/28(水) 08:14:57
株価ツールみたいなリアルタイム画面を
meta refreshかなんかで無理やり実装してるってことか。新しいな。
しかし、Ajaxの自動実行はどうやるつもりだ?
JavaScriptにsleepはないが・・・

271 :デフォルトの名無しさん:2007/02/28(水) 08:58:51
setTimeout、setIntervalあたりでできるんじゃない?

272 :デフォルトの名無しさん:2007/02/28(水) 09:16:54
FlashとかJavaAppletを選択肢に入れないのはなぜだ

273 :36:2007/02/28(水) 09:49:28
>>237
すまん。レス番間違えた。
なんでwar化しないのか俺が知りたかった。

>>244
warにしないと汚くなるじゃないか。
ゴミが溜まって処理できなくなるし

他のバカ顧客が勝手な配備をさせしないためにも
意図的にwar化しておくべき。

所定のディレクトリ以外に置いた場合は保証をしないと
そうやって、顧客に圧力をかけておかないと



274 :デフォルトの名無しさん:2007/02/28(水) 09:51:17
>>252
もっと頭使えよ。
log4jは別のとこに置け。
といっても、どっちみちclassに自動展開されれば勝手に弄れるし

275 :デフォルトの名無しさん:2007/02/28(水) 11:31:47
顧客にサーバなんていじらせません・・・

276 :268:2007/02/28(水) 15:10:54
>>270
まぁ、そんなとこです。
>>271
それ使います。
>>272
JavaAppletも検討しましたが、Ajaxになりました。
・要員が集まりにくい→工数増
・Ajaxより重い?微妙です。

>>267
なるほどJSONという型があるのですか。
最大で、縦10列、横行列のHTMLテーブル全ての値を更新するデータ量です。
JSONはオブジェクト型のようで、この辺りが心配です。
まぁ、XMLよりは早いでしょうけど。

ActionクラスでReaderを使うというのも参考になりました。
サーバー側は画面遷移機能と開発のしばりという意味で
Strutsを使っておきたいですので。
(それほど強い縛りではないですが…)

他にも助言あれば頂きたいです。

88 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)