Im BEA Aqualogic User Interaction Portal können ObjectId und Objectname nicht verwendet werden, um Portalobjekte über mehrere Staging Instanzen (DEV / TEST / PROD) adressieren zu können. Mit Einführung der Version 6 (vorher hieß das Portal im übrigen noch Plumtree Corporate Portal) wurde den Portalobjekten eine weitere Eigenschaft hinzugefügt, die auch nach einem Export und Import auf einem anderen System, oder nach einer Änderung des Objektnamens stabil bleibt: eine Uuid.
Mit diesem Codefragment kann aus der Uuid die ObjectId (und ClassId) eines Portalobjektes ermittelt werden:
public int getObjectId(String uuid) {
IPTMigrationManager oMigrationMgr = (IPTMigrationManager)session.OpenGlobalObject(PT_GLOBALOBJECTS.PT_GLOBAL_MIGRATION_MANAGER, false);
Object[] ObjMigrationInfo = oMigrationMgr.UUIDToObjectID(uuid);
Integer iObjectId = new Integer(0);
if (ObjMigrationInfo != null) {
iObjectId = (Integer)(ObjMigrationInfo[PT_MIGRATION_OBJECT_COLS.PT_MOC_OBJECTID]);
}
return iObjectId.intValue();
}
Viel Freude...