△△もっとStrutsの良 ..
809:デフォルトの名無しさん
08/06/27 21:08:28
URLリンク(journal.mycom.co.jp)
らしい。つか、Guice入ってるような気がするんだが。。
810:デフォルトの名無しさん
08/06/28 02:12:13
>>809
springと離婚するのか?
811:デフォルトの名無しさん
08/06/28 02:15:57
AJAX対応とスピードアップってことだな、2.2は
812:デフォルトの名無しさん
08/06/28 10:57:13
2.0だとdojoプラグイン(でも0.4)が既にバンドルされている。
dojo1.0に対応するのか、それとも他も使えるといいんだが…
2.2以降が出るのを待つかなぁ。
813:794
08/06/28 14:17:11
リクエストしているURLは
URLリンク(localhost:8080)
です。
URLリンク(www1.axfc.net)
にアップロードした画面からリクエストされます。
ログファイルはC:\tomcat\logsにありますが、どれを挙げれば
よろしいでしょうか?
独学で聞ける人もいないので、このスレが頼りです。ご返信
いただければ幸いです。
814:デフォルトの名無しさん
08/06/28 15:13:00
特にヘンな設定していなければ、
ログファイルは、catalina.yyyy-mm-dd.out
Struts系の設定ファイルはきちんと書かれているか
- web.xmlにstrutsの定義があるか
- struts-config.xml
<form-beans>と<action-mapping>がきちんと設定されているか
基本的すぎる内容なので自分で調べまくる方がいいとは思うが。
815:デフォルトの名無しさん
08/06/28 15:13:27
ageときます
816:デフォルトの名無しさん
08/06/28 15:24:28
よろしくお願いします。
struts2を勉強しています。
propertiesファイルにUnicodeエスケープ形式で
メッセージを書くのが面倒なのです。
ツールやプラグインを使用していますが、
XML形式で書くと、日本語をツールなしに使えると伺いました。
書き方等教えていただけないでしょうか。よろしくお願いします。
817:794
08/06/28 15:28:51
レス有難う御座います。
ログファイルは、C:\tomcat\logsに
・ localhost_log.2008-06-28.txt
・ localhost_admin_log.2008-06-28.txt
・ localhost_examples_log.2008-06-28.txt
がありますが、このうちどれでしょうか?
web.xmlも確認しましたが、特に自分では変なところは見つかりませんでした。
下記のとおりです。
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "URLリンク(jakarta.apache.org)">
<struts-config>
<form-beans>
<form-bean name="chap02_loginForm" type="chap02.LoginForm"/>
</form-beans>
<global-exceptions>
</global-exceptions>
<global-forwards>
</global-forwards>
<action-mappings>
<action path="/chap02/login"
type="chap02.LoginAction"
name="chap02_loginForm"
scope="request" >
<forward name="success" path="/WEB-INF/jsp/chap02/success.jsp"/>
</action>
</action-mappings>
</struts-config>
818:794
08/06/28 15:30:36
間違えました。↑はstruts-config.xmlでした。
web.xmlは下記のとおりです。
<?xml version="1.0" encoding="Shift_JIS"?>
<web-app xmlns="URLリンク(java.sun.com)"
xmlns:xsi="URLリンク(www.w3.org)"
xsi:schemaLocation="URLリンク(java.sun.com)
URLリンク(java.sun.com)" version="2.4">
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
</web-app>
何かご指摘いただければ幸いです。よろしくお願いします。
819:794
08/06/28 16:43:41
struts.jarなどをeclipseの「プロジェクト」→「プロパティ」→「JAVAのビルド・パス」
→「ライブラリ」タブでインポート(とでも言うのでしょうか?)していたのを、直接
アプリケーションのWEB-INF\lib配下にコピペしたらエラーメッセージが変わりました。
下記のとおりです。
HTTP Status 404 - パス {0} に対するリクエストは無効です
--------------------------------------------------------------------------------
type Status report
message パス {0} に対するリクエストは無効です
description The requested resource (パス {0} に対するリクエストは無効です) is not available.
--------------------------------------------------------------------------------
Apache Tomcat/4.1.24
820:794
08/06/28 16:57:28
うまくいきました!
原因ですが、やはりWEB-INF\libに直接コピペしたのがよかったようです。
上記のエラーからは、struts-config.xmlのミスで、やっとうまくいきました!!!
本当に有難う御座いました!
またお世話になることがあると思いますが、その際はどうかよろしくお願いします!!
821:デフォルトの名無しさん
08/06/28 17:09:02
>>819
遷移先のパスは<forward name="success" path="/jsp/chap02/success.jsp"/>でいいんじゃないのか?
822:デフォルトの名無しさん
08/06/28 17:09:50
おっと、自己解決してたw
823:794
08/06/28 17:10:25
>>821
はい、そこを直したら無事動きました!!ありがとうございました!!!!
824:794
08/06/28 22:14:06
さきほどは皆様、ありがとうございました!
次のステップに進んだのですが、またエラーに引っかかりました。
MappingDispatchActionを使って、データベースへの入力をひとつの
アクションで済まそうとし(正確には、使っている本にMapping
DispatchActionを使うように書いている)たら、下記のエラーが出ました。
ご教授いただければ幸いです。どうぞよろしくお願いいたします。
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: クラス database.DBActionForm のbeanを生成する際の例外: {1}
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:254)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at filter.EncodingFileter.doFilter(EncodingFileter.java:30)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:213)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
エラーメッセージが長いので、途中で切れます
825:デフォルトの名無しさん
08/06/29 01:13:45
初心者スレかと思た
面倒見の良い人がいて良かったな
826:794
08/06/29 07:15:25
>>825
そうですね、本当にありがたいです!!!
827:デフォルトの名無しさん
08/06/29 12:06:05
>>824
・struts-config.xml に正しくActionクラス、Beanクラス等を定義できているか
・JSP内のパスは、struts-config.xmlに定義した名前になっているか
828:デフォルトの名無しさん
08/06/29 12:37:03
MappingDispatchActionをぐぐると思いっきり出てくるんだが。
MappingDispatchActionを使う場合の必須事項はちゃんとやってるんだろうな…
829:デフォルトの名無しさん
08/06/29 13:04:52
>>816
Eclipseプラグインのプロパティエディタ使えば、プロパティファイルをマルチバイトでそのまま編集できるぞ。
逆に
>XML形式で書くと、日本語をツールなしに使えると伺いました。
の出所を知りたい。
830:794
08/06/29 13:18:03
>>827
>>828
ありがとうございます!また試行錯誤してみます!
831:816
08/06/29 15:44:07
>>829
知り合いがどこかで見たことがあるという、とても曖昧なソースです。。
以前eclipseプラグインをいれようとしましたが、相性が悪かったのか
プラグインが認識できず、スタンドアロン版を使用していました。
PCも変わったので、eclipseプラグインを再度入れてみたら
すんなり入れることができました。お騒がせしました。
832:デフォルトの名無しさん
08/06/29 16:28:54
Properties#loadFromXML
を使えばってことでしょ。
struts2では、xml形式かどうかなんか判断してないと思うので使えないと思うけど。
833:794
08/06/30 01:08:09
さきほど、エラーが通りました!むちゃくちゃうれしいです!
皆様、本当に有難う御座います!
834:デフォルトの名無しさん
08/06/30 01:19:54
>>833
偉いね
835:デフォルトの名無しさん
08/06/30 16:04:57
偉くねーよ。
お礼の前に「なにを直したら動くようになったのか」を
書かないと情報量0じゃねーか。
836:794
08/06/30 17:54:24
>>835
すみませんでした。
一からすべて書き直したら、エラーが通りました。どこが悪かったのかは
わからないままでした。
837:デフォルトの名無しさん
08/07/01 05:13:57
struts2のアクションのPackageについて解説したURLご存じの方居ませんか?
struts.xmlで
<package name="admin" namespace="/" extends="visitor">
という宣言をして、/com/xxx/action/admin/の配下にアクションクラスを
置いたら、ParentPackage(vlaue="admin")を指定していないアクションまで
このPackageが適用されているようでハマりました。
ログイン前のページはこのPackage適用したくないのですが、
ParentPackage(value="visitor")と宣言していても
adminパッケージを利用するようです。
開発者はクラス名やパッケージ名から自動的に判断するのが便利だとでも思っているのでしょうか。
正直なにがおきているのかわかりにくくてウザいです。
せめて明示的にParentPackage指定したときくらい
それに従って欲しい
838:デフォルトの名無しさん
08/07/01 10:27:39
>>837
struts.xmlのpackage name=visitorの部分晒してみ?
839:デフォルトの名無しさん
08/07/01 16:20:13
こんな感じだけど、visitorがなんか関係あんの?adminじゃなくて?
<package name="visitor" namespace="/" extends="ベース">
<interceptors>
<interceptor宣言>
<interceptor-stack name="visitorStack">
<interceptor-ref さっき宣言した奴 />
<interceptor-ref ベーススタック />
</interceptor-stack>
</interceptors>
<default-interceptor-ref name="visitorStack" />
</package>
840:デフォルトの名無しさん
08/07/01 16:30:41
前にも質問したのですが、struts2のformタグで生成されるタグを
xhtmlではなくhtmlにする設定は無いのでしょうか?
template/*.ftlを一式全部つくらないと無理でしょうか。
841:デフォルトの名無しさん
08/07/01 22:15:36
>>837
それぞれのActionに
@Namespace("/")
て書けば期待したような動きになると思う
842:デフォルトの名無しさん
08/07/02 00:45:58
>>837
継承元となるpackage要素には、次の決まりがあるみたい。
・abstract="true"をつける
・abstractのパッケージは、ネームスペースを持ってはいけない。
→他のパッケージ要素たちも、きちんとネームスペースを割り当ててあげないと誤動作する現象がある。
>>840
それって、theme=simpleでもダメなんだっけ。
843:デフォルトの名無しさん
08/07/02 03:03:26
>>842
今simple
xhtmlみたけど、内部でsimpleのftlをincludeして拡張
してるだけっぽい。
simple/submit.ftlの中を見たらケツの方に「/>」と直書きしてあるっぽい
ftl作り直すとしたらクラスパスにtemplateってフォルダ作って
そこにtheme名でフォルダ作ったら勝手に認識してくれるのかな。
まさかカスタムしたやつをstruts-xxx.jarに埋めるわけにもいかないし。
というわけでinput(accessKeyの件),fmtに続いて
ボディの無いタグもすべてstruts2のものは使わないことにした。
絶対に非struts2のタグで統一した方が便利。
844:デフォルトの名無しさん
08/07/02 08:04:16
>>843
イエス。
で、その中にtheme.properties置いて、parent=(継承テンプレート名)でいける。
使いにくい!と感じたら、ポリシーもって「使わないもの宣言」するのもありかね。
まぁ、あくまであの初期テンプレートたちはサンプル実装らしいが…
845:デフォルトの名無しさん
08/07/02 17:17:17
Struts2のアクションのテストケースって、どういう風に書くのが一般的?
846:843
08/07/02 20:16:36
不具合報告者の日本語がおかしくて、ログインボタンが無いっていうから
てっきりsubmitボタンだけ表示されないのかと思ってxhtmlが
駄目なのかと判断したんだけど、どうも全然違うURLを開いていたようだ。
とりあえず今のところ<input ... />となっていても不具合のある携帯は
なさそう。でもなあ、DOCTYPEでHTML宣言してるのにxhtmlが混じってるのは
気持ち悪いっていうか、お客に出すシステムとしては恥ずかしいなあ。
847:デフォルトの名無しさん
08/07/02 21:14:08
4月にIT企業に入社したものの、配属先が見つからずにモソモソと自習している物です。
JVM 1.6.0_05-b13 Tomcat5.5 Struts2.011 Eclipse3.3でサンプルを作りながら慣れようと思い、会社で勉強しています。
URLリンク(www15.plala.or.jp)のサイトを参考にしながら進めているのですが、ゼロコンフィグを試したところで詰まってしまいました。
Tomcat Managerで実行中であることを確認して選択すると404エラー(The requested resource (アクション名) is not available.)が返ってきます。
フィルタマッピングがまずいのか、バリデーションした結果のinputのjspを作っていないのが悪いのかよくわからなくなってしまいました。
以下配備ログです。
2008/07/01 13:59:52 org.apache.catalina.startup.HostConfig deployWAR
情報: Webアプリケーションアーカイブ ManageUser1.war を配備します
2008/07/01 13:59:53 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
情報: Parsing configuration file [struts-default.xml]
2008/07/01 13:59:54 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
情報: Parsing configuration file [struts-plugin.xml]
2008/07/01 13:59:54 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register
情報: Parsing configuration file [struts.xml]
2008/07/01 13:59:54 org.apache.struts2.config.Settings getLocale
警告: Settings: Could not parse struts.locale setting, substituting default VM locale
2008/07/01 13:59:55 com.opensymphony.xwork2.util.ResolverUtil findInPackage
情報: Scanning for classes in [/C:/apache-tomcat-5.5.26/webapps/ManageUser1/WEB-INF/classes/pkg/sample/] matching criteria: org.apache.struts2.config.ClasspathConfigurationProvider$1@1f287e8
2008/07/01 13:59:55 com.opensymphony.xwork2.util.ObjectTypeDeterminerFactory <clinit>
情報: Setting DefaultObjectTypeDeterminer as default ...
struts.xmlとweb.xmlの内容は参考にしたサイトそのままなので
/user1/struts.xml.txt
/user1/web.xml.txt
と同一です。何か設定が必要なのでしょうか?
848:デフォルトの名無しさん
08/07/03 00:57:24
>>847
初心者は既に動いてるサンプルプログラムをダウンロードしていろいろ試した方が良いと思うよ。
まずは知ることから始めなさい、だ。
849:847
08/07/03 06:35:21
>>848
Struts付属のサンプルプログラムをポチポチといじってみたのですが良くわからず、
もっと基礎的な部分からやってみたほうがいいのかと上記サイトに行き着いた次第です。
サイトでは使用するソースをダウンロードできるのですが、
そこからプロジェクトを丸々落としてきても404なので首を捻っていた次第です。
もう少し付属のサンプルのxmlファイルとにらめっこしてみます。
850:デフォルトの名無しさん
08/07/03 23:44:14
>>847
struts.xml.txtでどきどきしてしまった俺がいる。
拡張子はtxtじゃないよな…?
そうだなぁ…日本語でサンプル公開してる所ではmaven2利用してるものも結構ある。
あとは>>848の通り、Struts2以外で覚えるの多いかなー。超頑張れ。
ウチもサンプルとか公開してるので、ぐぐった履歴とかもついでに集計してるんだけど
結構みんな色んなので悩んでるね。
多いのはValidator(Validation)、Annotation、ModelDriven、Uploadとか。
851:デフォルトの名無しさん
08/07/04 22:47:59
いあいあ、それは大丈夫です。.xml.txtになっているのはサイトのアドレスがそうなっているからでして。
来週からプロジェクトに参加することになったのでstruts2とは暫しお別れです。
まぁプロジェクトではたぶんstruts+spring+もう一個DB系のフレームワーク?でやるらしいんで
これからよろしくねstruts1。
struts1のことで判らなくなったらまたお世話になります。
852:794
08/07/04 23:08:38
現在、struts1.29でWEBアプリを作っています。 JSPで入力画面を作り、入力して送信ボタンを押すと、入力した
内容がデータベースに反映されるようになっています。そこまでは いいのですが、データベースに反映された内容が文字化けして
しまっています。 考えられる対策はすべてしようと思い、以下の対策をしました。
1 filter
web.xmlに以下の記述をしました。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"URLリンク(java.sun.com)">
<web-app>
<filter>
<filter-name>EncodeFilter</filter-name>
<filter-class>SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>EncodeFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet>
(以下略)
853:794
08/07/04 23:10:04
続きです。
2 MYSQL側のエンコーディング設定
MYSQL側のエンコーディング設定を色々といじって、下記のような
状態にしました。
mysql> show variables like "char%";
+--------------------------+---------------------------------------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | utf8 |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\\Program Files\\MySQL\\MySQL Server 5.0\\share\\charsets\\ |
+--------------------------+---------------------------------------------------------+
854:794
08/07/04 23:11:59
同じく続きです
mysql> status;
--------------
mysql Ver 14.12 Distrib 5.0.27, for Win32 (ia32)
Connection id: 1
Current database: input
Current user: root@localhost
SSL: Not in use
Using delimiter: ;
Server version: 5.0.27-community-nt
Protocol version: 10
Connection: localhost via TCP/IP
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
TCP port: 3306
Uptime: 4 hours 59 min 41 sec
mysql> show create database input;
+----------+----------------------------------------------------------------+
| Database | Create Database |
+----------+----------------------------------------------------------------+
| input | CREATE DATABASE `input` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+----------------------------------------------------------------+
855:794
08/07/04 23:12:41
長々と申し訳ないです。これがラストです。
mysql> show create table input;
+-------+-------------------------------
----------------------------------------
| Table | Create Table
+-------+-------------------------------
----------------------------------------
| input | CREATE TABLE `input` (
`id` int(11) NOT NULL auto_increment,
`title` text,
`movie_url` text,
`material_url` text,
`explanation` text,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+-------------------------------
考えられる対策はすべてしても、なお文字化けしています。なお、 「あ」「い」「う」「え」とそれぞれの項目に入力すると以下の
ようになります。
| 縺・ | 繧」 | 繧ヲ | 蠕・ |
どんなことでも結構ですので、ご教授いただければ幸いです。 どうぞよろしくお願いいたします。
開発環境 OS;WINDOWS VISTA SP1
IDE;ECLIPSE 3.32
DB;MYSQL5.0
JRE;jre1.6.0_06
struts;1.29
856:デフォルトの名無しさん
08/07/05 01:09:09
JSPがUTF-8じゃないとか
857:デフォルトの名無しさん
08/07/05 01:31:53
切り分けるためにDBに入れる前にアクションで
ログ吐いた方がいい
SetEncodingFilterでUTF指定してるなら俺も>>856に一票
858:デフォルトの名無しさん
08/07/05 01:46:07
FORMをGETで送っていて、Tomcatのserver.xmlの設定をしてないとか
859:794
08/07/05 04:04:06
>>856-858
皆様、レス有難う御座います。
JSPはUTF-8に設定してあります。
<%@page contentType="text/html; charset=utf-8"%>
とページの一番上に指定してあります。
>>切り分けるためにDBに入れる前にアクションでログ吐いた方がいい
初心者で申し訳ないのですが、詳しく教えて頂けないでしょうか?
現時点では、フォームの画面で入力し、SUBMITボタンを押すとフォワード
で「入力完了」とだけ表示されるJSPに移動する状態です。そして、SUBMITボタンを押した
時点でDBに反映されます。それを、フォームの画面で入力し、SUBMIT
ボタンを押すと入力した内容がJSPに表示され、入力した内容を
確認させてからもういちどSUBMITボタンを押すことでDBに反映させる
ようにする、ということでしょうか?
>>FORMをGETで送っていて、Tomcatのserver.xmlの設定をしてないとか
初心者で申し訳ないのですが、詳しく教えて頂けないでしょうか?
FORMにGETとPOSTがあるのは知っていますが、どうやって見分ける
(もしくは使い分ける)のかはまだ分からない状態です。今回のWEB
アプリは本に載っているのを参考に作ったので、まだソースで理解し
きれてない部分があるのも事実です。大変申し訳ないですが、詳しく
教えて頂けないでしょうか?
860:デフォルトの名無しさん
08/07/05 04:40:05
SET NAMES UTF8 な予感
861:デフォルトの名無しさん
08/07/05 05:24:36
今回は、レベル低過ぎだな
862:794
08/07/05 10:03:40
>>860
SET NAMES UTF8 というコマンドは知りませんでした!ありがとうございます!
>>861
低レベルで申し訳ないです・・・ orz
863:デフォルトの名無しさん
08/07/05 12:08:58
>>859
初心者なら、まずはSystem.out.printlnでFORMから受け取った文字を出してみることだね
StrutsのAction上で、ActionFormにセットされたパラメータを出力してみる
そこが文字化けしていたら、FliterかTomcatの問題の可能性
そこが文字化けしていなかったら、DB登録時に文字化けしている可能性が高い
FORMのGET・POSTを見分けるには、
出力されたHTMLのformタグに、method="POST"みたいなのが書いてあるか
チェックするといい。method属性が書いてなければ、デフォルトでGETになる
Strutsのhtml:formタグを使っているなら、デフォルトでmethod="POST"になっている筈
使っているのがTomcat5以降で、もしGETを使っていたら
server.xmlのConnectorに URIEncoding="UTF-8"
を追加してやる必要がある
864:デフォルトの名無しさん
08/07/05 12:24:55
だいたいmysql文字化けのほとんどは>>860だな。
set names するのがイヤならjdbcのurlは
jdbc:mysql://ほげほげ&useUnicode=true&characterEncoding=utf8
でよいな
865:デフォルトの名無しさん
08/07/05 12:33:47
[mysqld]
default-character-set=utf8
skip-character-set-client-handshake
これでSET NAMESは要らなくなる
794のstatus見る限り、ここはクリア出来ているように見える
866:デフォルトの名無しさん
08/07/05 12:58:44
まぁ、JSPがUTF-8なら大丈夫だと思うけど、
その送信元ページにメタ要らなかったっけ。
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
あとは皆の言ってくれた通り、
Actionなどでログ吐いてみて、どこで化けてるかを切り分ければいいんじゃないかね。
867:デフォルトの名無しさん
08/07/05 13:03:37
あ、あとWin版のMySQL5.0だと、
UTF-8設定はインストール時にがっつりやってしまってくれるので
悩まなくなったかな。
余談だけどStruts2だとEncodingFilterなんか設定しないから
昔の苦労なんかしなくなった感じだよなぁ。。
「ウェーブダッシュが化けます」とかさ…
今もたまに頼まれるんだけど
868:デフォルトの名無しさん
08/07/05 13:49:44
まぁそれでも文字化けするのがmysqlなんだけどな
869:デフォルトの名無しさん
08/07/05 15:11:53
男は黙ってpostgres
870:デフォルトの名無しさん
08/07/05 16:49:02
ポスグレって、Oracle互換にするんだっけ。
871:794
08/07/05 19:57:42
おお、みなさん、たくさんのレス有難う御座います!!
いろいろ試行錯誤してみますね!
また来ます!!!
872:デフォルトの名無しさん
08/07/06 01:21:54
>>871
おー、頑張れ。
おまいさんの今やってることは皆通ってきた道で、
同じように同じようなところでつまづいて、
でも切り抜けた連中ばかりがここにいる。
まずは自分で稼働できるようになれば、二度と忘れることはないだろう。
似たようなトラブルがあったとしても、切り抜けるヒントにもなる。
動くようになって、それで終わるのでもいいが、動いたら動いたで
「なんで動かなくなったんだろう?」を調べることが大事。
873:デフォルトの名無しさん
08/07/06 01:26:17
>>872
つーか、mysqlのトラブルは経験値というより、
時間の無駄タイプが多かったからのぅ・・・
874:デフォルトの名無しさん
08/07/06 02:44:17
というかmysql4.1のときは本当に解決手段なかったからなぁ
4.1.6だったっけ?あのあたりからマルチバイトがまともに動かなくなって
直るまでには1年以上放置
その間にWindowsネイティブ対応したPostgreSQL8にもっていかれたという感が強い
875:デフォルトの名無しさん
08/07/06 06:17:49
すれ違いな話題を引っ張ってすまん。
前は日本ではmysqlとpostgresのシェアが半々くらい、
海外ではmysqlの方が断然多いと聞いていた。
実際オープンソースプロジェクトで標準DBがmysqlの物が
一番多いようにみえる。postgresも次点くらいに多いけど。
20年ほど前、LinuxとFreeBSDのシェアが日本では半々だけど
海外ではLinuxが圧倒的に多かった。結局LinuxがUNIX互換OSの
デファクトになった。DBではpostgresが逆転するかもってこと?
だと嬉しいんだけどなあ
876:794
08/07/06 10:05:46
>>872
本当にありがとうございます!このスレ、いい方ばかりです。
まずは今、まずは今アクションフォームから受け取った文字を出してみる
ことを頑張っています。
877:デフォルトの名無しさん
08/07/06 12:02:57
結局Strutsで作るってなると、オープンソースのDB使うこと多いから
あながちスレ違いでもなさそうだけどね。
先月どっかのセミナー聴講したときに、ポスグレのおっさんが言ってたけど
未だにMySQLの方がシェア高く、ポスグレは次点だけど、新製品でどんどんシェア伸ばす予定だそうな。
>>873-874
そうだったねぇ…5.0になってようやくマシになった感じ。
まぁ、MySQLのGUIツールの方が優秀に見えるけど
マルチバイトを入力するとハングするのはいただけない。
878:デフォルトの名無しさん
08/07/06 13:40:43
>>877
> 結局Strutsで作るってなると、オープンソースのDB使うこと多いから
え・・・?
879:デフォルトの名無しさん
08/07/06 14:33:06
>>877
> 結局Strutsで作るってなると、オープンソースのDB使うこと多い
うーん。おれもこの考えには同調できないな。
struts(J2EE)を利用できるという時点で、共用レンサバユーザとか
LAMP層顧客は除外されるから、Oracleだったり、DB2だったり
という機会が増える。寧ろSIerがOracleパートナーだったりすると尚更だな。
ただ>>877が言いたかったのは、OSSなstrutsを選択する時点で
MySQLやPostgresを使おうとするプロダクトに当たる可能性が増えるが、
既存システムを有償DBで構築してしまうとわざわざそれを変えようと
することも少ないと稚拙な経験から思う。
880:デフォルトの名無しさん
08/07/06 14:49:44
>>877
>新製品でどんどんシェア伸ばす予定だそうな。
それは予定っつーか願望でしょw
キャッシュ割り当ての設定とかSQLの癖とか
ダンプ・リストアスクリプトの組み方とか両方覚えるのかったるいから
ポスグレにデファクトまで登り詰めて欲しいんだけど
881:デフォルトの名無しさん
08/07/06 15:12:02
PostgreSQLってもうOracleの性能、品質ともに超えてるんでしょ?
882:デフォルトの名無しさん
08/07/06 15:15:47
>>878
OracleやDB2って、ウチではそんなに使わないから、ってこと。
あとは>>879の言ってくれた通り、SIerがOracleパートナだとOracle一択になる。
すまんね。
883:デフォルトの名無しさん
08/07/06 15:27:46
>>877
>まぁ、MySQLのGUIツールの方が優秀に見えるけど
>マルチバイトを入力するとハングするのはいただけない。
あの出来で金取るとかいってんだぜ?失笑だよ
バグの為に金払うかっての
884:デフォルトの名無しさん
08/07/06 15:59:01
>>881
どんな妄想
885:デフォルトの名無しさん
08/07/06 16:41:24
MySQLがGPLだから通常の業務で使おうとすると金がかかるというのが面倒かな
昔はpostgreSQLだけのためにLinuxいれてたところおおかったね
886:デフォルトの名無しさん
08/07/06 20:45:53
もう夏休みだっけ?
887:デフォルトの名無しさん
08/07/07 18:57:42
このスレに夏休み取れる奴がいるのか…?
888:デフォルトの名無しさん
08/07/08 02:15:21
881と885は・・・
889:デフォルトの名無しさん
08/07/08 10:39:15
MySQLがGPLで請負だと金かかるのは常識かと
890:デフォルトの名無しさん
08/07/08 11:02:23
そなの?
GPLなら顧客に対してソースを開示すればいいだけ、
いやなら商用ライセンスにできるししたところで数万円だから
開発全体のバジェットから見たら誤差だと思ってたんだけど、
どうも前者の前提が違うみたいだね。わかるように説明してもらえないか?
891:デフォルトの名無しさん
08/07/08 12:43:32
やるならその通りだけど、単に手間が面倒ってだけじゃね?
事務仕事とか経理処理とかそういうの。
で、金払いや事務仕事を実際にする人から
「どうせ同じOSSのDBなんだし、どっちでも同じでしょ」
と言われて、簡単な方に流れるというのはある。
892:デフォルトの名無しさん
08/07/08 13:26:26
いや、GPLで請負だと「金がかかる」って言ってることから
そういうちょっとした手間の話じゃないだろう。
請負ならGPLじゃなくソース渡すこともあるしな。
ASPサービスなら渡さないけど。
893:デフォルトの名無しさん
08/07/08 13:55:59
Struts1.2で勉強中なんですが、
どのサンプルを見ても、まずトップ画面でフォームを置いて
入力された値をsubmitタグのactionでstruts-configに飛ばし、
そこでaction-mappingを参照して指定されたpathの通りにアクションクラスを実行、ロジックで内部処理。
返却された「success」等の文字列によってforwardで次のjspページへ飛ばすって感じです。
この場合最初にフォームを利用してactionを呼び出していますが、
フォーム入力無しに、ロジックでの処理やアクションフォームへの値設定を内部で行い、
最後に表示されるjspをいきなり呼び出したい場合はどうすればいいんでしょうか?
strutsにはページを開いた時に強制的にアクションを実行するといったhtmlタグはないようなのですが。
894:デフォルトの名無しさん
08/07/08 14:41:35
自己解決です。
<logic:foward />すればいいんですね。
ありがとうございました。
895:デフォルトの名無しさん
08/07/08 17:33:35
まぁ他にもいろいろ手段はあるがな。
896:デフォルトの名無しさん
08/07/08 17:41:55
アクションに飛ぶと見て勘違いしました。
forwardだとページ遷移するだけでaction-mappingは実行出来ませんね・・。
897:893
08/07/08 17:46:50
度々すみません。
<logic:forward>は<global-forward>で指定されたパスへページ遷移するものだと思うんですが、
URLリンク(tag.main.jp)
このページの
>Struts-config.xmlの<action>のpath属性を参照し、リクエストを転送している。
という説明は間違いということでしょうか?
898:デフォルトの名無しさん
08/07/08 20:06:18
>>897
うそだと思うなら
1.そのpathを別のものに変えてみる。
2.logic:forwardを使わずに従来のRequestDispatcher#rforwardをjspで呼び出してみる
3.metaタグやJavaScriptでフォワードしてみる
あとはstrutsはソース公開されてるし、Eclipse+jadでデコンパイルしたソースを
眺めてみるもよし、ご自由にどうぞ
899:893
08/07/08 20:19:00
>>898
実際にJSPとStruts定義ファイルを書き換えて試したところ、
<logic:forward>は<global-forward>で指定したパスに飛んでいるので、
うそ、というのが何を指して嘘なのかは分かりませんが、
「<action>のpath属性を参照する」と書いてある、上記のリファレンスページは誤っているようですね。
900:デフォルトの名無しさん
08/07/09 03:41:16
解説本やサイトのソースで"${hoge.property}"なんて書式があるけど、これって使うにはなんか設定が必要なのかな?
本を見ながら
<bean:struts id="act1" mapping="/action1" />
<html:link action="${pageScope.act1.path}">
<bean:write name="act1" property="path" />
</html:link>
とか書いてみたんだが、HTMLソースにはリンク先が「URLリンク(localhost:8080)」なんて出てきてる。
※ちなみにbean:writeで書いてるトコロには、マッピングされたアクション名がちゃんと出てきてる。
これって${pageScope.act1.path}の中身が置き換わってないってコトだよね?
901:デフォルトの名無しさん
08/07/09 08:17:17
>>893
global-forward要素の意味をちゃんと調べろ。話はそれからだ。
>>900
解説本やサイトのソースで、稼働環境(特にJSPのバージョン)を見てみな。
調査が足りなすぎる。
902:デフォルトの名無しさん
08/07/09 09:10:34
>>901
知識も無いのに曖昧なレスだけしなくていいよ。
903:デフォルトの名無しさん
08/07/09 11:18:36
>>900
JSTL , Velocity etc ...
904:900
08/07/09 12:03:37
>>901-903
ご助言感謝。
StrutsIDE使ってたんだけど、自動生成のweb.xmlがservlet 2.3用になってた。
自分でweb-appの属性書き換えて、jspにtaglibの記述追加したら無事置き換わるようになった。
・・・これって最初からservlet 2.4用のweb.xmlにすることはできないのかな?
最初に生成されるweb.xmlやamaterasの設定見ると多分出来ると思うんだけどググれないっす。
ヘタレで申し訳ない・・・。
905:デフォルトの名無しさん
08/07/09 16:57:18
2.3・・・すげーふるいね
今のバージョンは2.5だというのに
906:デフォルトの名無しさん
08/07/09 20:40:40
金融系システムだとオープンソースがそもそも
使えなかったりするから、それよりはましかと。
907:デフォルトの名無しさん
08/07/09 21:34:13
金融系システムにはオープンソースが使えない
ということにして自社製品を押し込むコンサルまじでイラネ
特にIBMは逝ってよし
908:デフォルトの名無しさん
08/07/09 22:18:36
IBMって、WASのHTTPサーバはApacheじゃねーか。
909:デフォルトの名無しさん
08/07/09 22:30:46
>>908
そのとおり。
それを"オープンソースはよくないから"とか"保証が無いから"とか
難癖つけて有料で押し込むのがコンサル。
910:デフォルトの名無しさん
08/07/10 12:58:26
>>908-909
そのくせWACSもしかりだが、IBM製品のソースは
ゲティってるわ、1年生バグ修正痕はそこらじゅうにあるわ。
最近ではにIBMサンプル改造品をメンテしたが、
W3Cとは正反対方向のタグ組んでたりとか、もう・・・。
911:900
08/07/10 14:59:02
>>905
確かTomcat5未満だっけ?>2.3
5&5.5が2.4、6から2.5でよかったんだよね
>TomcatのServletのバージョン
引き続き、隙間な時間を見てググってるが見つからず。StrutsIDEって結構メジャーだと思ったんだが・・・。
みんな手でweb.xml書き換えて・・・るわきゃねーよなw
912:デフォルトの名無しさん
08/07/10 17:52:06
>>911
サーブレット全盛ならまだしも、strutsでWebアプリ組むのに
そんなしょっちゅうweb.xmlなんて触らなくないか?
913:デフォルトの名無しさん
08/07/10 21:14:34
StrutsIDEの最新版でもservlet2.3なの?
914:デフォルトの名無しさん
08/07/10 21:16:11
facesなら2.4対応なんだけどな。
915:デフォルトの名無しさん
08/07/10 21:21:33
>>911
EclipseWTP使えば、Tomcat5なら自動的にServlet2.4、6なら2.5になる
今使っているweb.xmlが古かったら、Tomcatの中にあるからコピペしてくればいい
2.4以上ならJSP上でELが普通に使えるようになる
916:900
08/07/12 12:42:41
>>912-915
お返事感謝。結局>>912が真実かもしれづ。
>>913
少なくとも、初期設定そのままを動かしてたらYes。
917:デフォルトの名無しさん
08/07/12 16:44:08
>>916
それはひどい
俺は使ったことないけどユーザー数が極端に少ないとか>StrutsIDE
918:デフォルトの名無しさん
08/07/12 18:26:55
FW用のプラグインってそういうことよくあるから、自分は基本的に使わないな
Strutsの設定ファイルなら、EclipseのXMLエディターのアシスト機能で十分だし
919:デフォルトの名無しさん
08/07/12 18:50:20
>>918
大規模ならstruts-config.xmlを小分けするし、
ましてやweb.xmlを編集することなんて皆無。
小規模なら、ツール使うよりテキストエディタでコピペして
必要か書だけ書き変えるよなあ。
920:デフォルトの名無しさん
08/07/14 01:18:14
ひさびさ趣味アプリを1からstruts1.3で作ったら文字化けに
悩まされた。@page meta filter すべてUTF-8に統一しているのに、だ。
結果はTomcat5なのにGETでサブミットしていることだった。
たまにはこういうトラボーも経験だな。
921:デフォルトの名無しさん
08/07/14 06:42:39
Struts1.2+Eclipse3.2+Tomcat5でWebアプリ開発のトレーニングをしています。
struts-blankを元にモゾモゾと弄っていますが、どうにも404エラーが発生してしまい困っています。
エラーには「サーブレットActionが利用できません」とのメッセージだったので、これを元に検索したところ、
どうやらStruts-congfig.xmlの構文の問題などでActionServletの初期化に失敗しているとのこと。
ここまでは見切ったんですが、自分には具体的な問題箇所が見つからないのでご指導ください。
**Struts-config.xml**
--action-mapping--
<action path="/Login" name="LoginPass" type="trainAction.LoginPassAction">
<forward name="succsess" path="/index.jsp" />
<forward name="id_not_match" path="/user-error.jsp" />
<forward name="password_not_match" path="/pass-error.jsp" />
<forward name="DB_access_error" path"/db-error.jsp />
</action>
--from-beans--
<form-bean name="LoginPass" type="trainForm.LoginPassForm" />
**web.xml**
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
922:つづき
08/07/14 06:49:46
一応これも
**server.xml**
<Context path="/Struts-train" reloadable="true" docBase="C:¥workspace¥Struts-train" workDir="C:¥workspace¥Struts-train¥work">
<Logger className="org.apache.catalina.logger.SystemOutLogger" verbosity="4" timestamp="true"/>
</Context>
index.jspとLogin.jspとLoginPassActionとLoginPassFormを作成し、とりあえずここまででサーブレットが動作するか確認しようと
一時的にsuccessのforward先をindexに変え、動かしてsuccessを返す動作を入力しています。
しかし入力が終わったところで404…
なにが原因なのでしょうか?
923:デフォルトの名無しさん
08/07/14 18:54:10
server.xmlのdocBase、workDirのパス指定が\1個になってるんだが…。
そもそも全角になってるのが気になる。
924:デフォルトの名無しさん
08/07/14 19:37:35
>>921
<forward name="succsess" path="/index.jsp" />
↓
<forward name="success" path="/index.jsp" />
925:924
08/07/14 19:44:43
Actionに適当にブレークポイント打ってデバッグしてみ?
どこでコケてるか分かるぜ。
926:デフォルトの名無しさん
08/07/14 23:39:19
>>908
IBMはtomcatも使ってるけど。
927:921
08/07/15 06:22:03
アドバイスありがとうございます。
最終的な問題はsuccessのスペルミスとjspにカスタムタグを使っていないことでした。
なんとか404は脱したのですが、今度はカスタムタグを含めたjspが500エラーを吐くようになってしまいました。
getModuleConfigを読み込みにいったところで"Module 'null' not found"とヌルポを投げている模様。
複数のjspでhtml:linkとhtml:formでそれぞれエラーなので設定がおかしいのだと思うのですが…
作成したソース類:URLリンク(ccfa.info)
どこがまずいんでしょうか?
それと、jspからアクションにリクエストする際の書き方がaction=/LoginだったりLoginだったりLogin.doだったりページによってマチマチなんですが、
どれも同じなのでしょうか?
928:デフォルトの名無しさん
08/07/15 13:16:51
なんか基礎から全然出来てないと思う。
929:デフォルトの名無しさん
08/07/15 18:54:25
なんとなく近頃教えてgooっぽくなってるかも。
Strutsへリクエスト投げる場合は全て****.doですよっと。
つか、libの中身空っぽなわけないよな?
Eclipseのビルドパスに入ってるんだよな。
930:デフォルトの名無しさん
08/07/15 21:08:34
>>***.do
ですよねー。/Loginとか書いてあるのはなんだったんだろう…
ライブラリはWEB-INF直下に.tlbを入れてありますが…
931:900
08/07/15 23:29:54
(たぶん)原因判明。
そもそも、StrutsIDEがStruts1.2までにしか対応していないのが原因らしい。
だめだこりゃ。
struts-config.xmlエディタとしてだけでも使えないかと思ったが、どうも今ひとつ動きが怪しい。
小分けにしてテキストエディタで書き換えていった方がよさそうだね。
便利だったんだけどあきらめるか>StrutsIDE
Struts 1.3に対応してるのはMyEclipseだけっぽいけど、使ってる人いる?
932:876
08/07/15 23:51:23
以前、文字化けについて教えて頂いた者です。
その後、色々と試してみた結果、OS(winVISTA)のエンコーディングの
デフォルトがshift-JISのため、UTF-8でDB登録が出来ていなかったようです。
set names sjisとやったらちゃんと表示されました。
まさかOS側の方に原因があるとは・・・。
いずれにせよ、今回は、このスレの方に大変お世話になりました。ありがとう
ございます。現在、諸事情によりstrutsを一人で独学中なので、またお世話に
なることがあるかと思います。
そのときは、またレスを頂ければ幸いです。
933:デフォルトの名無しさん
08/07/16 00:25:53
>>931
Strutsは1.2系がいわゆるこなれてる安定版で今でも一番使われてるよ
1.3では便利な機能がたくさんあるけど ほんの一部消えた機能があったりする
まず問題にならないけど
だから1.2対応ってのはそんなに間違ってない
web.xmlとかの話とは別だから
934:デフォルトの名無しさん
08/07/16 00:27:06
>>932
set namesはやめといたほうがいいぞ
935:876
08/07/16 06:15:59
>>934
え、そうなんですか?ほかに対応策とかあるでしょうか?jdbcのurlを
jdbc:mysql://ほげほげ&useUnicode=true&characterEncoding=sjis
にするとかでしょうか?
936:900
08/07/16 11:08:19
>>933
なるほど、ある程度は納得。非常に便利なんだけどね>StrutsIDE
特に、必要なjarを勝手に引っ張ってきてくれたりするところなんか。
まぁ、もともと手で書くものだと思うことにしよう>struts-config.xml
・・・話は変わるけど、Struts1.2以降で、リファレンス的に使えるお勧めな参考書はあるかな?
「プログラミング Jakatra Struts」はいい本だけど、いかんせん内容が古い。
「 Jakarta Strutsクックブック」を買い足すべきか、他の本も見てみるべきかというところで少し迷ってる。
JSTL以外にも役に立ちそうな情報はあるだろうか?
>>101-107
937:デフォルトの名無しさん
08/07/19 17:59:59
初心者入門スレだなw
最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4343日前に更新/258 KB
担当:undef