ここでは,カスタマイズ情報任意保存機能を使用する場合のポートレットの開発例を説明します。
カスタマイズ情報任意保存機能を使用する場合,変更区間処理全体をtryブロックで囲って,ブロック内の先頭で排他区間の開始処理を記述し,finallyブロックで排他区間の終了処理を記述します。
日立APIポートレットでのコーディング例を次に示します。
<jsp:useBean id="UserInfo" class="jp.co.hitachi.soft.portal.api.user.PortalUserInfoBean" scope="page"/>
<%
UserInfo.setRequest(request);
try{
UserInfo.customizeInfoStart(); //排他区間開始
UserInfo.setCustomizeInfo("DataA","UserID:ABC");
UserInfo.setCustomizeInfo("DataB","UserPassword:XYZ");
UserInfo.setCustomizeInfo("DataC","UserOu:XYZ");
}finally{
UserInfo.customizeInfoEnd(); //排他区間終了
}
//LDAP/DBへのデータの保存処理
boolean isSave = UserInfo.commitData();
if( isSave ){
out.print("データ保存に成功しました");
}else{
out.print("データ保存に失敗しました");
}
%>