uCosminexus Portal Framework ポートレット開発ガイド

[目次][用語][索引][前へ][次へ]


付録A.16 プラグインモジュールと連携するポートレット

Java AppletやMacromedia Flashなど,Webブラウザにロードされるプラグインモジュールと連携するポートレットを作成する方法について説明します。

プラグインモジュールと連携するには,ポートレットのURLが必要です。また,セッションを維持して連携するには,セッションIDが必要です。OBJECTタグのパラメタを使用して,ポートレットのURLやセッションIDをプラグインモジュールに渡すと,プラグインモジュールと連携できます。

ここでは,Macromedia Flashと連携するサンプルを示します。Java Appletの場合は,PARAMタグを使用して,必要な情報を渡せます。それ以外のプラグインモジュールも同じ方法で連携できます。パラメタを引き渡す方法については,各プラグインモジュールのマニュアルを参照してください。

Macromedia Flashと連携するサンプルファイルの構成を次に示します。

サンプルファイルの構成
{PROJECT_HOME}\portlets\flash\index.xml
                             \flash.jsp
                             \sample.swf   FLASHファイル

flash.jspを次に示します。

 
<%@ page import="jp.co.hitachi.soft.portal.portlet.PortletURI" %>
<%@ page import="jp.co.hitachi.soft.portal.portlet.PortletUtils" %>
<%
  String nameSpace = PortletUtils.getNamespace(request, response);
  String flashUrl = (String)session.getAttribute(namespace+"url");
  if (Mode. == DEFAULT || Mode= MAXIMIZED) {
  if (flashUrl == null) {
     String me = PortletURI.transInlineURI(request, response, "");
     String baseUrl = me.substring(0, me.lastIndexOf('/'));
     session.setAttribute(nameSpace+"base", baseUrl);
 
     Cookie cookies[] = request.getCookies();
     for (int i = 0; i < cookies.length; i++) {
       if (cookies[i].getName().equalsIgnoreCase("jsessionid")) {
          sessionID = cookies[i].getValue();
          break;
       }
     }
     flashUrl = PortletURI.transInlineURI(request, response,
              new StringBuffer(64).append("sample.swf").append("?PortletURL=").append(baseUrl)
                                  .append("&SessionID=").append(sessionID).toString());
     session.setAttribute(nameSpace+"url", flashUrl);
  }
  }
%>
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=4,0,2,0"
 ID="sample" WIDTH="100" HEIGHT="100">
   <param name="movie" value="<%= flushUrl %>">
</OBJECT>
 

[目次][前へ][次へ]


[他社商品名称に関する表示]

All Rights Reserved. Copyright (C) 2009, 2013, Hitachi, Ltd.
All Rights Reserved. Copyright (C) 2009, 2013, Hitachi INS Software, Ltd.