Hatena::ブログ(Diary)

今日のひとこと このページをアンテナに追加 RSSフィード

FessプロジェクトS2Robotプロジェクトで開発したい人を募集中

2008年12月01日

[][]SAStrutsポートレット 1.0.0-rc4 12:16 SAStrutsポートレット 1.0.0-rc4 - 今日のひとこと を含むブックマーク SAStrutsポートレット 1.0.0-rc4 - 今日のひとこと のブックマークコメント

リリースしました。主な変更点は、

基本的に JSR 168 のポートレットでの動作をサポートしますが、今後は Jetspeed2PALポータル、Liferay をメインに動作を確認しようと思います(JBoss Portal は優先度を下げます)。rc も 4 になったし、他のポータルでも動くから、ぼちぼち 1.0.0 にしようかと思ってます。というわけで、ぜひ、ご利用くださいませ。

http://sastruts.seasar.org/portlet.html

2008年06月17日

[]JBoss Portlet Container 09:22 JBoss Portlet Container - 今日のひとこと を含むブックマーク JBoss Portlet Container - 今日のひとこと のブックマークコメント

PALポータルリリースしたら、JBossというかRedhatの人から教えてもらったのだけど、JBossポートレットのコンテナ部分は単独でリリースしているのね。しかも、JSR 286 に対応しているのね。あとで、見てみよう。

http://www.jboss.org/portletcontainer/

defiantdefiant 2008/06/19 14:09 社内勉強会,良いですねぇ.うちではそういうのすらやるヒマなしという感じです(元々個人で勝手にという雰囲気ですけどね)

shinsuke_sugayashinsuke_sugaya 2008/06/19 21:42 なかなか、そういう時間をとるのも大変ですからね。うちの場合は、勉強会といっても昼を食いながらなってますけど(^^;

2008年06月14日

[] JSR 286 07:45  JSR 286 - 今日のひとこと を含むブックマーク  JSR 286 - 今日のひとこと のブックマークコメント

Portlet Specification 2.0 を読まなきゃと思いつつ、読み終わる前にFinal Releaseになっている。最終的にどうなったか、目を通さないと・・・。

http://jcp.org/en/jsr/detail?id=286

defiantdefiant 2008/06/19 14:08 最近 http://www.ibm.com/developerworks/jp/java/websphere/library/techarticles/0803_hepper/0803_hepper.html を読んだりしてます.元々の理解がアレなので,なかなか頭に入ってきませんが...

shinsuke_sugayashinsuke_sugaya 2008/06/19 21:46 ありがとうございます。IBMの彼がそれを書いていたのですね。ざっと読んだ感じ、(訳の質は置いておいて) JSR 286 を直接で読むよりは要点がまとめてあって良さそうですね。

2007年11月13日

[]ポートレットで使えるフレームワーク 17:07 ポートレットで使えるフレームワーク - 今日のひとこと を含むブックマーク ポートレットで使えるフレームワーク - 今日のひとこと のブックマークコメント

ポートレットが使えるフレームワークはいくつかあるけど、近頃は、Wicket がどの程度きちんとポートレットで動くのかが気になる。Wicket に Ate が参加しているみたいだから、Teeda 並にまともに動くのではなかろうかと思い始めている(彼が本気でやってれば)。という感じで、気になるものの、Wicket 自体にも手を出せてない今日この頃(TT) そのうちためそう・・・。あとは、そろそろ MyFaces や Sun の RI もチェックしないとな。まぁ、Teeda のポートレット対応がそれらに簡単に追い抜かれることはないと思うけど、油断は禁物かと。

2007年09月08日

[][][]JSR 301 08:30 JSR 301 - 今日のひとこと を含むブックマーク JSR 301 - 今日のひとこと のブックマークコメント

長い間、放置していたけど、JSF とポートレットのブリッジの仕様が Early Draft Review 2 になっている。っていうか、放置しすぎて、追随できてないけど、個人的には Teeda でどうするかというのがあるので、無視することもできない・・・。っで、チラッと見た感じだと、対象としているのが JSR 252 だから、急いで何かする必要はないかっと。そもそもの問題として、JSF がそこまで美しく、ポートレットを切り分けられるのかと疑問を持っているし。まぁ、どっちにしても、無視するわけにはいかないので、目を通さないといけない(これ実装すると、teeda-portlet みたいに切り出しになる気もするのだけど・・・)。そんな感じで、JSR 286 を読み終えていないにもかかわらず、読み物が一つ増えた・・・。今のところ、時間がないので、今後の TODO かね。

http://jcp.org/en/jsr/detail?id=301

shot6shot6 2007/09/08 14:42 一緒にJSR252対応をTeedaにまず施すという選択肢もありますwww

shinsuke_sugayashinsuke_sugaya 2007/09/08 20:00 そうですね〜。でも、まだ、JSR 252 で何が更新されたかを把握できてないです(^^; でも、JSR 252&301 対応はやってみたいですね〜。

2007年08月28日

[]JSR 286 Portlet Specification 2.0 (PLT.11.1.1.14 - PLT.11.1.2) 15:26 JSR 286 Portlet Specification 2.0 (PLT.11.1.1.14 - PLT.11.1.2) - 今日のひとこと を含むブックマーク JSR 286 Portlet Specification 2.0 (PLT.11.1.1.14 - PLT.11.1.2) - 今日のひとこと のブックマークコメント

1週間ぶりに続きから・・・

PLT.11.1.1.4 Public Render Parameters

他のポートレットとレンダーパラメータを協調できるようにするため、ポートレットportlet.xmlにpublic-render-parameter要素を宣言できる。ここでいうポートレット間の共有とは、ポートレットアプリケーションを越える共有もできるみたい。Public Render Parameter(公開描画パラメータ?)はポートレットやコンポーネントから変更や参照が可能(コンポーネントが何をさすかは不明)。ポートレットは、supported-public-render-parameter要素をportlet要素の中で定義するようだ。

<public-render-parameter>
  <identifier>foo</identifier>
  <qname xmlns:x=”http://example.com/params”>x:foo.2</qname>
</public-render-parameter>
<public-render-parameter>
  <identifier>bar</identifier>
  <qname xmlns:x=”http://example.com/params”>x:foo.bar</qname>
</public-render-parameter>

<portlet>
  <portlet-name>portletA</portlet-name>
  ...
  <supported-public-render-parameter>foo</supported-public-renderparameter>
</portlet>
<portlet>
  <portlet-name>portletB</portlet-name>
  ...
  <supported-public-render-parameter>bar</supported-public-render-parameter>
</portlet>

ポータルコンテナはsupported-public-render-parameterを使って定義されたポートレットに対して、Public Render Parameter を送る。

レンダーパラメタの吐き出しのURLは奨励されるだけで、ポータル実装では必須ではない。Public Render Parameter は供給されなきゃ、ポートレットでは null として扱われる。ポートレットがレンダーパラメータをnullにセットしたら、ポータルコンテナは削除したものとして扱うべし。公開または非公開レンダーパラメータに関係なく、PortletRequestのgetParameterメソッドでアクセスできる。または、getPrivateParameterMapやgetPublicParameterMapなどでもそれぞれにアクセス可能。(そんなメソッドが追加されたのか・・・)

qname要素でpublic render parameterは特定される。他の方法としては、default-namespace要素でデフォルトの名前空間を指定できるそうな。

あとは、l10nの話で、javax.portlet.app.public-render-parameter.<identifier>.display-name をリソースバンドルで与えれば、表示名を翻訳できるみたい。

PLT.11.1.1.5 Resource Request Parameters

serveResourceリクエストでは、ポートレットはResourceURL上からリソースパラメータを受けとるべし。

PLT.11.1.2 Extra Request Parameters

javax.portlet. で始まるパラメータ名は予約されている。

とりあえず、今日はここまで・・・。PLT.11はまだ長いな・・・。

2007年08月23日

[][]商用ポータル(EIP)など 17:44 商用ポータル(EIP)など - 今日のひとこと を含むブックマーク 商用ポータル(EIP)など - 今日のひとこと のブックマークコメント

ポータルやEIP関連で(特にJavaJSR 168にこだわらずに)調べてみる。価格や特徴など適当になっていたりするので、情報をいただけるとうれしいです〜。

Microsoft

製品名: Office SharePoint(TM) Portal Server 2003
価格: 1,030,000円 (1サーバー、5クライアントアクセス付)
(2007版については価格不明)
特徴:ドキュメントやプロセス管理、Office との連携
参考リンク:
http://office.microsoft.com/ja-jp/sharepointserver/default.aspx
http://www.microsoft.com/japan/presspass/detail.aspx?newsid=1686

IBM

製品名: WebSphere Portal V6.0
価格: 
特徴: SOAのフロントエンド環境など
参考リンク:
http://www-06.ibm.com/jp/software/lotus/products/wsp/

Oracle

製品名: Oracle Application Server Portal
価格: ?
特徴: JSR 168, WSRP など対応
参考リンク:
http://otn.oracle.co.jp/products/ias/portal/index.html
http://www.oracle.co.jp/appserver/portal/

BEA

製品名: BEA WebLogic Portal
価格: ?
特徴: JSR 168, WSRP など対応
参考リンク:
http://www.beasys.co.jp/products/weblogic/portal/

Sun

製品名: Sun Java System Portal Server
価格: ?
特徴: JSR 168, WSRP など対応
参考リンク:
http://jp.sun.com/products/software/javasystem/portalserver/

Redhat

製品名: JBoss Application Platform for Portals
価格: ?
特徴: JSR 168, WSRP など対応
参考リンク:
http://www.redhat.co.jp/jboss/platforms/portals/

富士通

製品名: Interstage Portalworks
価格: 450,000円より
特徴: ポートレット標準技術(JSR168、WSRP)に対応
参考リンク:
http://interstage.fujitsu.com/jp/portalworks/
補足: Fujitsu はその他、SharePointなど複数のポータルを担いでいる

日立

製品名: uCosminexus Portal Framework
価格: 2,625,000円
特徴: Yahooと連携
参考リンク:
http://www.hitachi.co.jp/Prod/comp/soft1/cosminexus/products/lineup/portalframe/index.html
http://www.hitachi.co.jp/Prod/comp/soft1/cosminexus/products/lineup/portalframe/feature.html

NEC

製品名:  StarOffice21
価格: 250万円〜
特徴: 使えるアプリがいろいろある
参考リンク:
http://www.nec.co.jp/gw/index.html

日立情報システムズ

製品名: BizPortal
価格: 182万円
特徴: ?
参考リンク:
http://www.hitachijoho.com/solution/business/bizportal/index.html

ドリーム・アーツ

製品名: INSUITE Enterprise
価格: ?
特徴: アプリをいろいろと持っている
参考リンク:
http://www.insuite.jp/index.html

サイボウズ

製品名: ガルーン 2
価格: ¥600,000/50ユーザー
特徴: 使えるアプリが多い
参考リンク:
http://g.cybozu.co.jp/
http://g.cybozu.co.jp/garoon/product/
http://g.cybozu.co.jp/garoon/product/application/

富士通四国システムズ

製品名: MyWeb Portal Office
価格: 350,000円(150ユーザー)
特徴: グループウェア?
参考リンク:
http://www.myweb-jp.com/products/portaloffice/

NECネクサソリューションズ

製品名: PowerPortal Solution
価格: 35万円
特徴: 既存のシステムと連携ポートレットがある(それに価格がついている)
参考リンク:
http://www.nec-nexs.com/news/press2002/1120.html
http://www.nec-nexs.com/sl/sol/eip_powerportal.html

OSK

製品名: EasyPortal
価格: 980,000円
特徴: グループウェアの基本機能を備えた企業ポータル
参考リンク:
http://www.evalue.jp/pro/ep/default.html

NTTデータ先端技術

製品名: WonderPortlet
価格: 120万円
特徴: ?
参考リンク:
http://www.portlet.jp/

Sybase, Inc.

製品名: Sybase Enterprise Portal
価格: ?
特徴: ?
参考リンク:
http://www.sybase.jp/products/developmentintegration/enterpriseportal.html

ディサークル

製品名: POWER EGG
価格: オープンプライス
特徴: 営業支援や決済機能などのオプションがある
参考リンク:
http://www.d-circle.com/poweregg/index.html

BroadVision

製品名: BroadVision Portal
価格: ?
特徴: JSR 168, WSRP など対応かも
参考リンク:
http://www.broadvision.co.jp/products/bv_portal.html

富士通

製品名: VPOナレッジポータル
価格: ?
特徴: ?
参考リンク:
http://infonavi.infoweb.ne.jp/services/eip/index.html

パナソニックソリューションテクノロジー

製品名: Global Portal
価格: ?
特徴: GlobalFamily(グループウェア)との連携
参考リンク:
http://panasonic.co.jp/pss/pstc/products/portal/index.html

リンコム

製品名: リンコム ネクスト
価格: 1,500,000
特徴: グループウェア的な機能も持つ
参考リンク:
http://www.linkcom.co.jp/next/next_top.cfm

2007年08月21日

[]JSR 286 Portlet Specification 2.0 (PLT.11 - PLT.11.1.1.13) 17:59 JSR 286 Portlet Specification 2.0 (PLT.11 - PLT.11.1.1.13) - 今日のひとこと を含むブックマーク JSR 286 Portlet Specification 2.0 (PLT.11 - PLT.11.1.1.13) - 今日のひとこと のブックマークコメント

続き・・・

PLT.11 Portlet Requests

リクエストオブジェクトは、processAction、processEvent、serveResource、renderメソッドに渡される。

PLT.11.1 PortletRequest Interface

PortletRequest は、すべてのリクエストインタフェースの共通機能を定義する。

PLT.11.1.1 Request Parameters

以下のメソッドでアクセスする。

  • getParameter
  • getParameterNames
  • getParameterValues
  • getParameterMap

特に目新しいことはないと思う。

PLT.11.1.1.1 Form and Query Parameters

フォームのデータがPOSTで送信される場合、コンテンツタイプがapplication/x-www-form-urlencodedなら、そのデータはポートレットのリクエストパラメータに投入される。リクエストパラメータに投入されてしまったら、リクエストオブジェクトの入力ストリームではアクセスはできない。POSTでのデータがパラメータセットに含まれないときには、ActionRequest/ResourceRequestの入力ストリームでアクセスできる。

GETで送信される場合、フォームのデータは送信されたPortlet URLに付け足され、ポートレットのリクエストパラメータとしてアクセスできる。(うーん、何か表現が曖昧な気が・・・)

いくつかのポータル実装では、内部状態をURLクエリー文字列の一部としてエンコードしてないかもしれない。なので、GETによるフォームをサポートしてないかもしれないので注意されたし。(JSR 168 のときも J2 ではオプションを指定しないと、GETが取れない気がする)

ポートレットURLが必要とするURLを生成するECMAスクリプトかもしれないから、ポートレットがクライアントで単純にクエリーパラメータを追加するなと言っている。

今日はここまで・・・(進んでない)。

2007年08月15日

[]JSR 286 Portlet Specification 2.0 (PLT.9.4 - PLT.10.4.3) 18:13 JSR 286 Portlet Specification 2.0 (PLT.9.4 - PLT.10.4.3) - 今日のひとこと を含むブックマーク JSR 286 Portlet Specification 2.0 (PLT.9.4 - PLT.10.4.3) - 今日のひとこと のブックマークコメント

続き・・・

PLT.9.4 Custom Window States

カスタムウィンドウ状態の例は以下のようにdescription、window-stateになった。

<portlet-app>
...
<custom-window-state>
<description>Occupies 50% of the portal page</description>
<window-state>half_page</window-state>
</custom-window-state>
...
</portlet-app>

PLT.9.5 Defining Window State Support

ポータルは事前定義のNORMAL, MAXIMIZED, MINIMIZED をサポートする。宣言されていないカスタムウィンドウ状態は呼び出さない。配備記述子では以下のように定義される。

<supports>
<mime-type>text/html</mime-type>
<portlet-mode>edit</portlet-mode>
<portlet-mode>help</portlet-mode>
<window-state>half-page</window-state>
...
</supports>
<supports>
<mime-type>text/vnd.wap.wml</mime-type>
<portlet-mode>help</portlet-mode>
...
</supports>

以上の例では、HTMLについては、事前定義のウィンドウ状態に加えて、HALF-PAGEウィンドウ状態をサポートすることになる。WMLは、事前定義のウィンドウ状態のみのサポートになる。

ポータルサポートしていないウィンドウ状態については、無視か、マッピングしない。

PLT.10 Portlet Context

PortletContextはポートレットの実行でのポートレットアプリケーションのポートレットの表示を定義している。PortletContextを利用すると、ログ、リソースや実行時のオプションにアクセスできたり、他のポートレットやサーブレットでアクセスできる属性を入れることができる。実行時のオプションというのが新しい点だろうか。

PLT.10.4 Portlet Container Runtime Options

ポートレットは、ポートレットアプリケーションレベルまたはポートレットレベルで追加の実行時オプションを定義できる。ポートレットアプリケーションレベルのオプションはすべてのポートレットに適用され、ポートレットレベルのオプションは固有のポートレットに適用され、ポートレットアプリケーションレベルのオプションを上書きする。

実行しているポートレットのPortletContextのgetContainerRuntimeOptionsメソッドを通して、コンテナ実行時オプションを取得する。このメソッドは、Mapを返してくる。portlet.xmlに設定されていなければ、空のMapになる。

PLT.10.4.1 Runtime Option javax.portlet.escapeXml

1.0のときは、URLのXMLエスケープについては、定義されていなかった。なので、XMLエスケープされているURLを想定しなくてもよかった。2.0では、それらを動かすには、javax.portlet.escapeXml実行時オプションが必要。定義は以下のような感じ。

<portlet>
…
<container-runtime-option>
 <name>javax.portlet.escapeXml</name>
  <value>false</value>
</container-runtime-option>
</portlet>

PLT.10.4.2 Runtime Option javax.portlet.renderHeaders

renderフェーズでヘッダーを書く必要があるポートレットは、この実行時オプションを利用する。デフォルトは、false。詳細はPLT11.1.1.3.3。例、

<portlet>
…
  <container-runtime-option>
   <name>javax.portlet.renderHeaders</name>
   <value>true</value>
  </container-runtime-option>
</portlet>

PLT.10.4.3 Runtime Option javax.portlet.includedPortletSessionScope

JSP内のセッション変数はアプリケーションスコープのポートレットセッションにマップされるけど、それが調整可能になるみたい。そのためにこの実行時オプションを利用する。

<portlet>
…
  <container-runtime-option>
    <name>javax.portlet.includedJSPPortletSessionScope</name>
    <value>PORTLET_SCOPE</value>
  </container-runtime-option>
</portlet>

ポートレット開発者は、すべてのポートレットコンテナが以上の機能を提供できるというわけではないことに注意されたし。これに依存すると、実行時にポートレットコンテナで制限となるかも。

今日はここまで・・・

2007年08月14日

[] Clustering JSR-168 Portlet Applications in Tomcat 18:25  Clustering JSR-168 Portlet Applications in Tomcat - 今日のひとこと を含むブックマーク  Clustering JSR-168 Portlet Applications in Tomcat - 今日のひとこと のブックマークコメント

Tomcatでのポータルのクラスタのお話。メモ。クロスコンテキストのセッションレプリケーションって、めんどう・・・。

http://issues.apache.org/bugzilla/show_bug.cgi?id=35710

http://www.ja-sig.org/wiki/display/PLT/Clustering+JSR-168+Portlet+Applications+in+Tomcat