From m.matsuda @ appliedjapan.com Mon Nov 28 03:47:53 2005 From: m.matsuda @ appliedjapan.com (Applied_MATSUDA Masaaki) Date: Mon, 28 Nov 2005 03:47:53 +0900 Subject: [pal-devel 1] =?iso-2022-jp?b?GyRCJEhGMDpuM05HJxsoQg==?= Message-ID: <20051128034753.44526588@appliedjapan.com> TigerCatです。 現在上がっているサブプロジェクトのソースをそれぞれビルドし, Jetspeed 1.6 へディプロイしてみました。 ざっくりですが,結果をかいておこうと思います。 なお,ソースコードは 2005年11月27日 23:59:59 の時点のCVSに 上がっているものとしておきます。 事前準備として,OSログインユーザのホームディレクトリに build.properties ファイルを作り, maven.repo.remote = http://www.marevol.com/maven を書き込んだ状態にしました。 1. blogポートレット ビルドは,maven clean war すると,テスト中にコケます。 これは既定のMySQLデータベースにテーブルが見つからない事が 原因なので,DDLを作成して先に流しておく必要がありますね。 あとは src/java/hibernate.cfg.xml の中の xxxx xxxx のところをMySQLにアクセスできるMySQLアカウントに書き換えた。 ちなみにDDLはこんな感じ。 create database blog; use blog; CREATE TABLE BLOGCATEGORY( ID BIGINT NOT NULL PRIMARY KEY, NAME VARCHAR(255) NOT NULL ); CREATE TABLE BLOGMESSAGE( ID BIGINT NOT NULL PRIMARY KEY, OWNER VARCHAR(255) NOT NULL, TITLE VARCHAR(255) NOT NULL, MESSAGE TEXT NOT NULL, FORMATTYPE VARCHAR(16) NOT NULL, BLOGCATEGORYID BIGINT, CREATEDTIME TIMESTAMP NOT NULL, UPDATEDTIME TIMESTAMP NOT NULL, FOREIGN KEY(BLOGCATEGORYID) REFERENCES BLOGCATEGORY(ID) ); CREATE TABLE BLOGCOMMENT( ID BIGINT NOT NULL PRIMARY KEY, NAME VARCHAR(128) NOT NULL, EMAIL VARCHAR(64) NOT NULL, URL VARCHAR(255) NOT NULL, MESSAGE TEXT NOT NULL, BLOGMESSAGEID BIGINT, CREATEDTIME TIMESTAMP NOT NULL, FOREIGN KEY(BLOGMESSAGEID) REFERENCES BLOGMESSAGE(ID) ); CREATE TABLE BLOGTRACKBACK( ID BIGINT NOT NULL PRIMARY KEY, TITLE VARCHAR(255), EXCERPT TEXT, URL VARCHAR(255) NOT NULL, BLOGNAME VARCHAR(255), BLOGMESSAGEID BIGINT, CREATEDTIME TIMESTAMP NOT NULL, FOREIGN KEY(BLOGMESSAGEID) REFERENCES BLOGMESSAGE(ID) ); ここまでやれば,maven clean war は通るようになった。 出来上がったwarをJetspeed 1.6へディプロイし動作確認。 一件投稿すると「ユーザが正しくない」というようなエラー が表示される。 どうも FacesContext.getCurrentInstance().getExternalContext().getRemoteUser() がnullになってしまうらしい。 なので,src/java/jp/sf/pal/blog/bean/BlogEditPageBean.java のgetRemoteUser()しているところは"anon"が返ったことに してしまう。とりあえず。 再ビルド再配備再テスト。 一件投稿すると,ついに書き込みが保存された。 "Blog View Portlet"をEDITモードにして,ユーザ名をanonに 設定しVIEWモードにすると,さっきの一件が表示された。 (日本語部分が????になってしまっているが) "Blog Title View Portlet"は,EDITモードでユーザ名をanon に設定し,VIEWモードにすると,ポートレット上にException が表示されてしまう。 存在しないユーザ名に設定すると0件を表示するので,データ がヒットするとExceptionっぽい。 今日のところはここでギブアップ。 日本語が????になる件は,MySQL起動時の初期パラメータとし てエンコードに関する指定をしておく必要がある気がする。 ちなみに,MySQLでなくてHypersonicSQLで動くようにアレコレ やってみたが散々な結果に終わった。 HibernateがHypersonicSQLのサーバに接続したところでハング アップしてしまう。HypersonicSQLをサーバモードではなく, スタンドアロン(ファイルモード?)にすると,ビルドテストも ちゃんととおりしっかりバイナリもできる。しかし配備し 動作確認しようとしたところでしょぱなから"Blog View Portlet" と"Blog Title View Portlet"はExceptionを表示している。 うーむなぞだ。 ちなみに, DDLはTEXT型のところをLONGVARCHARにして流す。というか, blog.scriptに直接書き込む必要がある。 ということで,いまのところダメ状態。 2. bridges-myfaces これは,ソースを少しいじったので検証結果があいまい。 maven clean jar でサックリとビルドが通ってしまうのだが, そのためにはmyfacesを1.0.9ではなくて1.1.1に上げなければ だめだった気がする。 org.apache.myfaces.portlet.PortletUtil.PORTLET_REQUEST_FLAG というフィールドが1.0.9にはまだないからそのままだとビルド エラー。 ということだったと思う。 3. cms-portlets これは maven clean war でサックリとビルドできる。 ただ,Jetspeed 1.6での実行結果は,"CMS Content"ポート レットの枠の中に Portlet is Not Available: null Reason: PORTLET_REQUEST_FLAG の2行を表示するのみで・・・ とりあえずダメ状態。 4. helloworld これはばっちりです。maven clean war でさっくりと。 配備して動作確認。ちゃんと動いていそうです。 ただ,anonな時では正常動作を確認しているのですが, adminユーザでフォームを送信したときは日本語がバケて しまいました。不思議な挙動。 とりあえずはOK状態。 5. logviewerポートレット maven clean war としてみるも,HibernateDataModelの シンボルが解決できない云々といってコンパイルが通り ませんでした・・・ とりあえずダメ状態。 6. vfs-portlets ビルドは maven clean war でサックリいけます。 配備・動作確認で,ポートレットが表示されるところも 見れました。ところがディレクトリの中とかが表示され ません。ログ的にはExceptionがだらだらと出ています。 これはWindowsで動かすことによる非互換とかなのでしょ うかね・・・ とりあえずダメ状態としておきましょう。 と,いう具合でいまのところ散々ですが,これって Jetspeed 1.6 を使ううえでの障害だったらつらいっすな。 ではでは,ご報告まで。 From shinsuke @ yahoo.co.jp Tue Nov 29 06:30:47 2005 From: shinsuke @ yahoo.co.jp (Shinsuke SUGAYA) Date: Tue, 29 Nov 2005 06:30:47 +0900 Subject: [pal-devel 2] =?iso-2022-jp?b?UmU6IBskQiRIRjA6bjNORycbKEI=?= In-Reply-To: <20051128034753.44526588@appliedjapan.com> References: <20051128034753.44526588@appliedjapan.com> Message-ID: <438B7707.8020107@yahoo.co.jp> こんにちは、菅谷です。 >> 現在上がっているサブプロジェクトのソースをそれぞれビルドし, >> Jetspeed 1.6 へディプロイしてみました。 >> ざっくりですが,結果をかいておこうと思います。 まとめをありがとうございます。 >> 1. blogポートレット >> >> ビルドは,maven clean war すると,テスト中にコケます。 >> これは既定のMySQLデータベースにテーブルが見つからない事が >> 原因なので,DDLを作成して先に流しておく必要がありますね。 一応、リリースするまでには、MySQL から HSQL に切り替えることを 考えています。ですので、これは不要になる予定です。各データベース用に ビルドするなら project.properties に Torque の設定をして、 maven createdb を実行すれば、配備されます(Torque が正しい処理を すれば・・・)。 >> 出来上がったwarをJetspeed 1.6へディプロイし動作確認。 >> 一件投稿すると「ユーザが正しくない」というようなエラー >> が表示される。 >> どうも >> FacesContext.getCurrentInstance().getExternalContext().getRemoteUser() >> がnullになってしまうらしい。 >> なので,src/java/jp/sf/pal/blog/bean/BlogEditPageBean.java >> のgetRemoteUser()しているところは"anon"が返ったことに >> してしまう。とりあえず。 現在、anon などの認証されていないユーザーで投稿することを 想定していないので、その動作は期待通りです。 >> ちなみに,MySQLでなくてHypersonicSQLで動くようにアレコレ >> やってみたが散々な結果に終わった。 今週中には、HSQL へ移行したいところです・・・。 >> 2. bridges-myfaces >> >> これは,ソースを少しいじったので検証結果があいまい。 >> maven clean jar でサックリとビルドが通ってしまうのだが, >> そのためにはmyfacesを1.0.9ではなくて1.1.1に上げなければ >> だめだった気がする。 1.1.1 にあげておきます。 >> 3. cms-portlets このポートレットは、まだ、修正する必要がある箇所が多いので、 まだまだと言った感じです。 >> 4. helloworld >> >> これはばっちりです。maven clean war でさっくりと。 >> 配備して動作確認。ちゃんと動いていそうです。 >> ただ,anonな時では正常動作を確認しているのですが, >> adminユーザでフォームを送信したときは日本語がバケて >> しまいました。不思議な挙動。 それはたぶん、J1 の問題のような・・・。 helloworld は JSR 168 を普通に実装した標準的なポートレット かと思います。J2 と Sun のポータルサーバーで動作確認をして あります。 >> 5. logviewerポートレット >> >> maven clean war としてみるも,HibernateDataModelの >> シンボルが解決できない云々といってコンパイルが通り >> ませんでした・・・ リポジトリに http://marevol-utils.sourceforge.jp/maven/ を 設定したので、たぶん、ビルドは通るかと思います。しかし、パフォーマンス 問題があるので、まだまだ、手が加えられるかと思います。 >> 6. vfs-portlets >> >> ビルドは maven clean war でサックリいけます。 >> 配備・動作確認で,ポートレットが表示されるところも >> 見れました。ところがディレクトリの中とかが表示され >> ません。ログ的にはExceptionがだらだらと出ています。 >> これはWindowsで動かすことによる非互換とかなのでしょ >> うかね・・・ Windows で動かないわけではないです(^^; デフォルトでは、file:///tmp を表示しようとします。 そして、何も考えずに指定されたディレクトリを表示する のでは、危険なので、accept-paths で file:///*tmp.* で 表示できるパスを指定します。paths と書いたので、たしか、 , で複数指定できるかと。というわけで、Windows で利用する には、portlet.xml でこれらの値を変えれば良いと思います。 ちなみに、accept-paths は、指定された正規表現で記述して、 それにマッチしたものが表示されます。 >> と,いう具合でいまのところ散々ですが,これって >> Jetspeed 1.6 を使ううえでの障害だったらつらいっすな。 helloworld の件は、J1 の問題のような・・・。 shinsuke -------------------------------------- STOP HIV/AIDS. Yahoo! JAPAN Redribbon Campaign 2005 http://pr.mail.yahoo.co.jp/redribbon/