3.23.2 ポートレットを作成するための設定

開発したStrutsアプリケーションを標準APIポートレットとして作成するために,次に示す設定を行います。標準APIポートレットのディレクトリ構成は「3.25.1 標準APIポートレットのディレクトリ構成」を参照してください。

<この項の構成>
(1) web.xmlの編集
(2) ポートレットアプリケーションDDの作成
(3) struts-config.xmlファイルの編集

(1) web.xmlの編集

以下の定義を追加します。

サーブレット定義

<servlet>
 <servlet-name>action</servlet-name>
 <servlet-class>jp.co.hitachi.soft.portal.portal.portlets.strutsbridge.PortletServlet</servlet-class>
 <init-param>
   <param-name>config</param-name>
   <param-value>/WEB-INF/struts-config.xml</param-value>
 </init-param>
 <init-param>
   <param-name>debug</param-name>
   <param-value>2</param-value>
 </init-param>
 <init-param>
   <param-name>detail</param-name>
   <param-value>2</param-value>
 </init-param>
 <load-on-startup>2</load-on-startup>
</servlet>

サーブレットマッピング定義

<servlet-mapping>
 <servlet-name>action</servlet-name>
 <url-pattern>*.shtml</url-pattern>
</servlet-mapping>

タグライブラリ定義

<taglib>
 <taglib-uri>http://soft.hitachi.co.jp/portal/bridges/struts/tags-portlet-html</taglib-uri>
 <taglib-location>/WEB-INF/cosmi/portal/taglib/struts-portlet-html-1.0.tld</taglib-location>
</taglib>
<taglib>
 <taglib-uri>http://soft.hitachi.co.jp/portal/bridges/struts/tags-portlet-html-el</taglib-uri>
 <taglib-location>/WEB-INF/cosmi/portal/taglib/struts-portlet-html-el-1.0.tld</taglib-location>
</taglib>

(2) ポートレットアプリケーションDDの作成

Portlet Specification 1.0に従いポートレットアプリケーションDD(portlet.xml)を作成してください。portlet.xmlを作成する際には以下の情報を設定してください。

ポートレットクラス(portlet-class)
次の値を設定します。

jp.co.hitachi.soft.portal.portal.portlets.strutsbridge.StrutsPortlet

パラメタ(init-param)
  • ServletContextProvider
    次の値を設定します。必ず設定してください。
     
    jp.co.hitachi.soft.portal.portal.portlets.strutsbridge.ServletContextProviderImpl
  • ViewPage
    VIEWモード用の画面のパスを設定します。必ず設定してください。
  • HelpPage
    HELPモード用の画面のパスを設定します。設定は任意です。
  • EditPage
    EDITモード用の画面のパスを設定します。設定は任意です。
定義例

<portlet-class>jp.co.hitachi.soft.portal.portal.portlets.strutsbridge.StrutsPortlet</portlet-class>
   <init-param>
     <name>ServletContextProvider</name>
     <value>jp.co.hitachi.soft.portal.portal.portlets.strutsbridge.ServletContextProviderImpl</value>
   </init-param>
   <init-param>
     <name>ViewPage</name>
     <value>/index.shtml</value>
   </init-param>
   <init-param>
     <name>HelpPage</name>
     <value>/help.shtml</value>
   </init-param>
   <supports>
     <mime-type>text/html</mime-type>
     <portlet-mode>VIEW</portlet-mode>
     <portlet-mode>HELP</portlet-mode>
   </supports>

(3) struts-config.xmlファイルの編集

controllerタグを次のとおりに設定してください。

<controller pagePattern="$M$P" inputForward="false"
processorClass="jp.co.hitachi.soft.portal.portal.portlets.strutsbridge.PortletRequestProcessor"/>