トップページ⇒tech
1001コメント315KB

JAVA+JSP+Struts+Tomcat Part3

■ このスレッドは過去ログ倉庫に格納されています
00019652006/10/26(木) 20:41:36
ほらよ。立ててやったぞw
0177デフォルトの名無しさん2007/02/05(月) 14:08:29
>>170
正直、鯉専用の固形の餌の方が良くない?
01781752007/02/05(月) 16:34:54
>>176
レスありがとうございます。

IPは同じで、b.comにアクセスするとhttp 500エラーが返ってきます。
見た目、tomcatのエラーではなくブラウザのエラー(?)のように見えます。
0179デフォルトの名無しさん2007/02/05(月) 16:43:06
「見た目」って、何を根拠にそう判断するんだ?
500エラーならサーバのエラーだろ。
500エラーが返ってきたときにブラウザがどういう挙動をするのかはまた別の話。
01801752007/02/05(月) 22:36:48
>>179
失礼しました。

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

どちらもpingは正常に返ってくるのですが。。。
0181デフォルトの名無しさん2007/02/05(月) 22:43:19
>>180
tomcatのエラーログ出てるなら
tomcatの設定ミスだよね

server.xmlあたりの設定にドメイン入れてないとかそんなの
0182デフォルトの名無しさん2007/02/06(火) 01:51:52
> 181
もともとTomcatに設定がいるかどうか聞きたかったんじゃねぇの?
0183デフォルトの名無しさん2007/02/06(火) 04:42:27
大体原因は掴めたのですが、解決策が見つからず困っております。
皆様の知恵をお貸し下さい。

構成:
WinXP HomeSP2
Tomcat5.5.20(catalina.policy以外はデフォルト)
Struts1.3.5 or Struts1.2.9
01841832007/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)
01851832007/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)


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

これはどうすれば解決できるのでしょうか?
ご協力お願いします。
0187デフォルトの名無しさん2007/02/06(火) 10:52:11
>>186
どう見ても自分で>>184に原因書いんじゃん。
0188デフォルトの名無しさん2007/02/06(火) 21:15:41
JSPを使うときに
<bean:message key="hogehoge">
でメッセージリソースから文言を取得できるんだけど、
取得する文言を変数に入れる方法ってないん?
 
<% String str = '<bean:message key="hogehoge"> %'>
<%= str %>
 
って書いたら見事に失敗した。
どうすりゃいいんだろ。
0189デフォルトの名無しさん2007/02/06(火) 21:27:48
>>188
ふつうにResourceBundleを使えよ。
ViewじゃなくてControllerでやるのが良い。
セッションによって変える必要がないのなら、
ServletContextListenerやStruts PlugInを使って
初期化時に一回だけ読み込んでServletContextに入れるのがいいんじゃね?
0190デフォルトの名無しさん2007/02/06(火) 21:32:16
同じことで悩んだことあるな。方法は覚えてないが解決できたような気がする。気がするだけだが。
0191デフォルトの名無しさん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>
とやってみるというのはどうか?といま思いついた。
0192デフォルトの名無しさん2007/02/07(水) 13:33:09
すごいビューだなwww
0193デフォルトの名無しさん2007/02/08(木) 21:56:05
>>188
JSTL使えば簡単。bundleはweb.xmlで指定しとけばいい
ただしスクリプトレットではなくて式言語からでないとアクセスできない

<fmt:message var="str" key="hogehoge"/>
0194デフォルトの名無しさん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());
0195デフォルトの名無しさん2007/02/09(金) 11:30:17
>>194
同一セッションで、1ミリ秒以内にアクセスされるとユニークにはならない。

・・・ってことぐらいはソースコード見ればわかりそうなものだけど?
01961952007/02/09(金) 11:31:30
そうでもなかった。
1ミリ秒以内にアクセスされても違う値を生成するようになってるね。
0197デフォルトの名無しさん2007/02/09(金) 11:37:58
何でハッシュ化するのだろうか?
now + id でよくね?
toHex()するのはわかるけど・・・
0198デフォルトの名無しさん2007/02/09(金) 13:03:43
>>197
微妙にメモリ節約
0199デフォルトの名無しさん2007/02/09(金) 13:31:12
>>194
つまり、strutsにかかわらずwebアプリでユニークコード作りたい場合は
TokenProcessor.getInstance().generateToken(request)でOK!ってこと?
あ、でもセッションがあること前提か・・・
0200デフォルトの名無しさん2007/02/09(金) 17:33:00
commons調べろ ぼけ
0201デフォルトの名無しさん2007/02/09(金) 18:20:19
>>200
つか、普通にロックしてインクリメントでよくね?
0202デフォルトの名無しさん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"/>の値が
「あいうえお」のような日本語だと文字化けしてうまく値を渡すことができません

なにか解決方法はありませんでしょうか?
0203デフォルトの名無しさん2007/02/12(月) 17:34:20
HTTP エンコード で検索してみるといいかもね?
0204デフォルトの名無しさん2007/02/12(月) 22:02:02
どんな感じに文字化けするかで、原因はわかるんだけどね
つーか、文字化け javaでググるだけでもわかると思うんだけどね
0205デフォルトの名無しさん2007/02/12(月) 22:06:16
URLEncoder.encode(name2,"Shift_JIS");

でやるってことですか?

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

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

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

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

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

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

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

これで解決しました。

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

本当にいろいろとアドバイスありがとうございました
0209デフォルトの名無しさん2007/02/12(月) 22:23:50
もしかしてTomcat5以上を使ってる?
その場合はserver.xmlのConnectorに設定が必要
0210デフォルトの名無しさん2007/02/12(月) 22:34:59
>>209
えらく不正確なレスだなw
Tomcat5でも、5.0.16より前のバージョンではその問題はないし、
Tomcat4でも4.1.29以降のバージョンでは同じ問題があるし、
「server.xmlのConnectorに設定が必要」なんて、思いっきり実装依存な方法だし。
0211デフォルトの名無しさん2007/02/12(月) 22:39:10
そもそもあれって、jk2使ってる場合だけだったキガス
mod_proxy_balancerあたり使ってると関係無かったような…

まあ、JSP,Servletって環境からコーディングまで一通りわかってないといけないし
大変だよね…
0212デフォルトの名無しさん2007/02/12(月) 23:04:28
>>211
>そもそもあれって、jk2使ってる場合だけだったキガス

デタラメ言うな
0213デフォルトの名無しさん2007/02/12(月) 23:24:32
>>210
Tomcat4は4.1.30で元に戻ってる
つまり、Tomcat5使ってるときにだけ気をつけていれば
いちいち細かいバージョン覚えておく必要は無いw
0214デフォルトの名無しさん2007/02/13(火) 00:39:09
つまり5.5つかえよと
0215デフォルトの名無しさん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
0216デフォルトの名無しさん2007/02/13(火) 10:35:31
tomcatのリクエストスレッドってプールされているのですか?
それともその都度スレッドをnewしているのですか?
0217デフォルトの名無しさん2007/02/13(火) 16:10:42
>>215
いいも悪いも、書いてある通りだが…。
0218デフォルトの名無しさん2007/02/13(火) 16:25:07
>>216
プールされている
02192152007/02/13(火) 17:37:35
>>217
この書いてあることを教えて下さい。
0220デフォルトの名無しさん2007/02/13(火) 18:21:25
>>219
日本語でおk。
0221デフォルトの名無しさん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 という項目を作成して上記パラメータを設定しましたがダメでした。

よろしくお願いします。
0222デフォルトの名無しさん2007/02/16(金) 18:15:28
TOMCAT サービス オプション
でググったら最初に出てきたけど。
0223デフォルトの名無しさん2007/02/16(金) 18:32:51
>>222
ありがとうございます。
その方法だと -Xmx512M -Xms128M -Xss256K -server はいいんですが、
-Dp6.home="C:\Tomcat5\webapps\test\WEB-INF\lib"
の指定が反映されないんです。

これはp6spyっていうライブラリへの指定なのです。
0224デフォルトの名無しさん2007/02/17(土) 14:52:30
いっそのことCentOSでも入れた方が早い気がするよ
02252212007/02/19(月) 10:46:45
解決できました。
%CATALINA_HOME%\bin\Tomcat5w.exe を使うと、
サービス時にJVMへ渡すオプションをGUIで設定できました。
こんな簡単なことだったとは・・・。
0226デフォルトの名無しさん2007/02/19(月) 11:00:30
ちなみに
http://tomcat.apache.org/tomcat-5.5-doc/windows-service-howto.html
に書いてありました。
なんで5.0のドキュメントには載ってないのよ・・・
0227デフォルトの名無しさん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)

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

どなたかご教授お願いします。
0228デフォルトの名無しさん2007/02/22(木) 21:03:02
>>227
Strutsのバージョンやや使用しているServletコンテナとそのバージョン、
それからJavaのバージョン、サーバOSの環境などを
詳しく説明してもらわないとわからん
0229デフォルトの名無しさん2007/02/22(木) 23:42:36
>>227
マルチパートでデータ取ってる途中に
なんかブッちぎれたぞ
ゴルァ
ってjavaが怒ってるからサーバーの設定からネットワークの設定の範囲の問題じゃね?

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

あと、任意の場所において設定することって可能?
0231デフォルトの名無しさん2007/02/24(土) 23:06:05
>>230
クラスパス上に置く。
WEB-INF/classesに置いてもいいし、
JARにしてWEB-INF/libに置いてもいい。

むしろ
>エクリプス上では絶対パスでできたけど
が俺には謎。
0232デフォルトの名無しさん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においてあります)

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



0233デフォルトの名無しさん2007/02/24(土) 23:53:43
warにするメリットなんてないだろ。
0234デフォルトの名無しさん2007/02/25(日) 01:29:05
なんで?
0235デフォルトの名無しさん2007/02/25(日) 10:36:00
>>233
開発環境がwinで評価環境・本番環境がUNIX計の時とかは便利だけど?
0236デフォルトの名無しさん2007/02/25(日) 13:02:18
>>235

なんで?
0237デフォルトの名無しさん2007/02/25(日) 14:55:40
>>236
むしろwar化しないメリットを教えてくれ
0238デフォルトの名無しさん2007/02/25(日) 15:31:06
中のファイルを簡単に置き換え可能だから
0239デフォルトの名無しさん2007/02/25(日) 15:42:02
コーディング時は、いちいちwar化しないと動作できないというのは効率悪い。
0240デフォルトの名無しさん2007/02/25(日) 17:09:56
なんか話の前提条件が合ってない悪寒。
war化するのはサーバにデプロイする必要があるからだろ?
開発中はそれこそEclipseでやってればデプロイなんて意識してやら無いだろうし。
0241デフォルトの名無しさん2007/02/25(日) 17:18:23
.warファイルにしてデプロイしても
違う方法でデプロイしても

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

どうすればいいの?
0242デフォルトの名無しさん2007/02/25(日) 17:24:11
そういわれても、どうすればいいんでしょうね
0243デフォルトの名無しさん2007/02/25(日) 17:27:02
>>241
環境は?
そもそもファイルが見つかりませんと言っているのは誰?
0244デフォルトの名無しさん2007/02/25(日) 17:35:24
>>240
サーバにデプロイするのになんでwar化するの?
warにしてもデプロイできるけどwarにしないでもデプロイできるよ。
0245デフォルトの名無しさん2007/02/25(日) 17:55:27
>>244
war・earデプロイは商用鯖では良くある事
0246デフォルトの名無しさん2007/02/25(日) 18:04:01
いやいやTomcatスレだし。
02472452007/02/25(日) 18:09:38
>>246
すまん、忘れてたw
0248デフォルトの名無しさん2007/02/25(日) 18:15:21
>>243
Tomcatが言ってる

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

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

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

とやると、WEB-INF/classes/log4j.xml が読み込まれる。
0251デフォルトの名無しさん2007/02/25(日) 22:46:32
つうか、warファイルなんて、IDEでビルドすればすぐ作れるのに、warを作る作らないでもめても仕方ないだろ。
0252デフォルトの名無しさん2007/02/25(日) 22:49:08
>>251
LinuxサーバでWEB-INF/classes/log4j.xmlを書き換える場合は?
warじゃないほうが簡単に書き換えられるじゃん。
それともIDEでwarを作り直してFTPでアップですか?
0253デフォルトの名無しさん2007/02/25(日) 23:11:43
log4jの仕様が悪い。
本来server.xmlなどで対応できるべき。
0254デフォルトの名無しさん2007/02/25(日) 23:15:29
Struts2 = Shale ?!
Struts2を落としたものの、どうにも入力補完がorg.apacheに対応してない
なぜだ?と思っていたら別物?
Struts2のところにBest Availableって書いてあったのに?

もしおかしなことを言っているようでしたら、ご指摘をお願いします
こんなことに時間かけ過ぎだ>俺
0255デフォルトの名無しさん2007/02/25(日) 23:22:34
javaってめんどくさいね
0256デフォルトの名無しさん2007/02/25(日) 23:35:47
>Struts2 = Shale
ちがう。
以前はShaleがStruts2と呼ばれていたが、
今のStruts2.xはWebWorkから引っ越してきた、全くの別物。
ShaleはStrutsプロジェクトから独立して
Apache Shaleプロジェクトで開発が進んでいる。
0257デフォルトの名無しさん2007/02/25(日) 23:36:28
>>253
>本来server.xmlなどで対応できるべき。
特定の製品依存にしろと?
0258デフォルトの名無しさん2007/02/26(月) 00:07:19
本番環境に一度デブロイしたヤツをそんなにマメに書き換えるんだろうか?
テスト鯖だったらwarじゃない方が簡単って意見もわかるが。

まあ、漏れはear派だけど。
0259デフォルトの名無しさん2007/02/26(月) 09:46:02
>>256
違ってましたか。ありがとうございます

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

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

上記ができると、非常に便利なのですが・・・
0261デフォルトの名無しさん2007/02/26(月) 23:41:29
>>260
それはさすがに標準のルールのみでは無理。
ルールを自作するしかない。
でもロジックは標準のものを呼び出したり流用したりでいけると思うから
そんなに難しくないと思うよ。
0262デフォルトの名無しさん2007/02/27(火) 08:17:16
俺はログ設定は運用側の問題だと思うから、war には含めない。
log4j.xml は適当な場所(conf/とか)に置いてるね。
0263デフォルトの名無しさん2007/02/27(火) 12:16:54
サーブレットコンテナのロギング誰も使ってないのか
0264デフォルトの名無しさん2007/02/27(火) 22:04:06
Struts(Servlet+JSP)で開発を検討しているのですが、
画面のちらつきを抑えるという理由で、全画面Ajax対応です…

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

そもそも、ちらつきを抑える方法がAjax以外にないものかと…
0265デフォルトの名無しさん2007/02/27(火) 22:05:04
チラツキの意味がわからん。画面遷移=チラツキ?
0266デフォルトの名無しさん2007/02/27(火) 22:38:22
漏れもちらつきの意味が解らんが・・・。

ページ遷移する時にタラタラ描画がされるというのなら
単に回線インフラとか鯖のレスポンスの問題だと思うが。
02672642007/02/28(水) 02:15:33
画面は数秒おきに自動更新されます。
ピカッと光るようなものがちらつきです。
自画面を再表示時に、画面が更新されていないようなイメージを
目指しています。
0268デフォルトの名無しさん2007/02/28(水) 06:40:24
それはただ単に頭悪いと言うかそもそもの選択が悪い気ガス。

ヤフオクの残り時間表示もそういう意味では多少チラついたりするんだが、
かなり無駄というか本質的でない事に体力使えて羨ましいというか
なんというか・・・。
0269デフォルトの名無しさん2007/02/28(水) 07:41:00
>>267
画面内で実際に更新する内容が限られてるのなら
Ajaxは有力な選択肢になる
Strutsで作っているのなら、手っ取り早いのはServletResponseから
Readerを取得して、そこにJSON型の結果データを出力すればいい
0270デフォルトの名無しさん2007/02/28(水) 08:14:57
株価ツールみたいなリアルタイム画面を
meta refreshかなんかで無理やり実装してるってことか。新しいな。
しかし、Ajaxの自動実行はどうやるつもりだ?
JavaScriptにsleepはないが・・・
0271デフォルトの名無しさん2007/02/28(水) 08:58:51
setTimeout、setIntervalあたりでできるんじゃない?
0272デフォルトの名無しさん2007/02/28(水) 09:16:54
FlashとかJavaAppletを選択肢に入れないのはなぜだ
0273362007/02/28(水) 09:49:28
>>237
すまん。レス番間違えた。
なんでwar化しないのか俺が知りたかった。

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

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

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

0274デフォルトの名無しさん2007/02/28(水) 09:51:17
>>252
もっと頭使えよ。
log4jは別のとこに置け。
といっても、どっちみちclassに自動展開されれば勝手に弄れるし
0275デフォルトの名無しさん2007/02/28(水) 11:31:47
顧客にサーバなんていじらせません・・・
02762682007/02/28(水) 15:10:54
>>270
まぁ、そんなとこです。
>>271
それ使います。
>>272
JavaAppletも検討しましたが、Ajaxになりました。
・要員が集まりにくい→工数増
・Ajaxより重い?微妙です。

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

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

他にも助言あれば頂きたいです。
■ このスレッドは過去ログ倉庫に格納されています