uCosminexus Portal Framework ポートレット開発ガイド
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.