BEA ホーム | 製品 | デベロッパ・センタ | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > WebLogic Integration > BPM トピック > BPM クライアント アプリケーション プログラミング > XML リポジトリの管理 |
BPM クライアント アプリケーション プログラミング
|
XML リポジトリの管理
XML リポジトリは、WebLogic Integration のビジネス プロセス コンポーネントに対し、データ ストレージ機能を提供します。
この章では、XML リポジトリの管理方法について説明します。内容は以下のとおりです。
この章に記載する各メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。
XML リポジトリ フォルダの管理
XML リポジトリのフォルダやサブフォルダの作成、更新、表示、および削除の方法について以下に説明します。
フォルダまたはサブフォルダの作成
XML リポジトリ内で新しいフォルダまたはサブフォルダを作成するには、次の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。
public com.bea.wlpi.repository.helper.RepositoryFolderInfo createFolder (
java.lang.String type,
java.lang.String name,
java.lang.String desc,
java.lang.String notes,
com.bea.eci.repository.helper.RepositoryFolderInfo parent
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
createFolder() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
このメソッドは、com.bea.eci.repository.helper.RepositoryFolderInfo オブジェクトのリストを返します。各フォルダについての情報にアクセスするには、RepositoryFolderInfo オブジェクトで説明する RepositoryFolder オブジェクトのメソッドを使用します。 たとえば、次のコードでは、フォルダ factoryA 内に、inventory という名前の新しいフォルダが作成されます。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 createFolder() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 すべてのフォルダ名とサブフォルダ名の取得 XML リポジトリ内のすべてのフォルダおよびサブフォルダのリスト、または特定のフォルダに関連するサブフォルダのリストを取得するには、それぞれ以下の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。 getChildFolders() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
RepositoryFolderInfo newFolder = xmlrepository.createFolder(
ObjectFolder, inventory, ”Inventory of factory items.”,
”This is a note.”, “factoryA”);public java.util.List getAllFolders(
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteExceptionpublic java.util.List getChildFolders(
com.bea.eci.repository.helper.RepositoryFolderInfo rfi
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
各メソッドは com.bea.eci.repository.helper.RepositoryFolderInfo オブジェクトを返しますが、何も定義していない場合は空のリストが返されます。各フォルダについての情報にアクセスするには、RepositoryFolderInfo オブジェクトで説明する RepositoryFolder オブジェクトのメソッドを使用します。 たとえば、次のコードでは、すべてのフォルダのリストが取得されます。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 次のコードでは、folderA という指定された親フォルダに対するすべてのサブフォルダのリストを取得します。 getAllFolders() および getChildFolders() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 フォルダ ツリーの取得 XML リポジトリ内のすべてのフォルダのツリー構造を取得するには、次の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。 getObjectFolderTree() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
List folders = xmlrepository.getAllFolders();
List subfolders = xmlrepository.getChildFolders(“folderA”);
public javax.swing.tree.DefaultMutableTreeNode getObjectFolderTree(
javax.swing.tree.DefaultMutableTreeNode node
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
このメソッドは、ツリーの最上位の階層を表す javax.swing.tree.DefaultMutableTreeNode を返します。指定された node の子フォルダが、ツリー内で最上位のフォルダになります。これらのフォルダは、それぞれの子ノードによって再帰的に送出されます。各子ノードは、DefaultMutableTreeNode オブジェクトで構成されます。 たとえば、次のコードでは、root ノードからツリーが形成されます。root は、ツリーのルートとして表示する DefaultMutableTreeNode を表します。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 getObjectFolderTree メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 フォルダ情報の取得する XML リポジトリ内のフォルダの情報を取得するには、以下のいずれかの com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。 メソッド 1 メソッド 2 getFolderInfo() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
javax.swing.tree.DefaultMutableTreeNode node =
xmlrepository.getObjectFolderTree(root);public com.bea.wlpi.eci.repository.helper.RepositoryFolderInfo getFolderInfo(
java.lang.String name
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteExceptionpublic com.bea.wlpi.eci.repository.helper.RepositoryFolderInfo getFolderInfo(
java.lang.String type,
java.lang.String name
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
各メソッドは、com.bea.eci.repository.helper.RepositoryFolderInfo オブジェクトを返し、指定されたフォルダが定義されていない場合は null を返します。フォルダについての情報にアクセスするには、RepositoryFolderInfo オブジェクトに記載の RepositoryFolder オブジェクトのメソッドを使用します。 たとえば、次のコードでは、folderA のフォルダの情報を取得します。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 getFolderInfo() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 フォルダの再編 XML リポジトリ内のフォルダを再編するには、以下の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。 第 1 のメソッドでは、子フォルダが親フォルダに追加されます。第 2 のメソッドでは、子フォルダが親フォルダから削除されます。 注意: 親フォルダからフォルダを削除すると、XML リポジトリからも削除されます。 addChildFolder() と removeChildFolder() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
com.bea.eci.repository.helper.RepositoryFolderInfo folderInfo =
xmlrepository.getFolderInfo(“folderA”);public void addChildFolder(
com.bea.eci.repository.helper.RepositoryFolderInfo child,
com.bea.eci.repository.helper.RepositoryFolderInfo parent
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteExceptionpublic void removeChildFolder(
com.bea.eci.repository.helper.RepositoryFolderInfo child,
com.bea.eci.repository.helper.RepositoryFolderInfo parent
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
たとえば、次のコードでは、folderA を folderB 内に移動します。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 同様に、次のコードでは、folderA を folderB から削除します。 addChildFolder() および removeChildFolder() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 フォルダ名の変更 XML リポジトリ内のフォルダ名を変更するには、次の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。 renameFolder() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
xmlrepository.addChildFolder(“folderA”, “folderB”);
xmlrepository.removeChildFolder(“folderA”, “folderB”);
public void renameFolder(
java.lang.String curname,
java.lang.String newName
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
たとえば、次のコードでは、既にあるフォルダ名の folderA が folderB に変更されます。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 renameFolder() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 フォルダの更新 XML リポジトリ内のフォルダの説明やノート フィールドを更新するには、次の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。 updateFolder() メソッドのパラメータを示します。パラメータには値を指定する必要があります。
xmlrepository.renameFolder(folderA, folderB);
public void updateFolder(
com.bea.eci.repository.helper.RepositoryFolderInfo rfi
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
たとえば、次のコードでは、RepositoryFolderInfo オブジェクトの folderInfo で定義したように、既にあるフォルダの description と notes フィールドが更新されます。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 updateFolder() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 フォルダの削除 XML リポジトリからフォルダを削除するには、次の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。 deleteFolder() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
xmlrepository.updateFolder(folderInfo);
public void deleteFolder(
com.bea.eci.repository.helper.RepositoryFolderInfo rfi
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
削除するフォルダに含まれる XML エンティティは、XML リポジトリから削除されません。XML エンティティは、階層構造の最上位のエンティティになります。 たとえば、次のコードでは、RepositoryFolderInfo オブジェクトの folderInfo で定義されたフォルダが削除されます。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 deleteFolder() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。
xmlrepository.deleteFolder(folderInfo);
XML リポジトリ エンティティの管理
XML リポジトリ エンティティの作成、更新、表示、および削除の方法について以下に説明します。
エンティティの作成
XML リポジトリ エンティティを作成するには、次の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。
public com.bea.eci.repository.helper.XMLEntityInfo createEntity(
int type,
java.lang.String name,
java.lang.String desc,
java.lang.String notes,
java.lang.String content,
com.bea.eci.repository.helper.RepositoryFolderInfo parent
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
createEntity() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
このメソッドは、新しいエンティティに対応した com.bea.eci.repository.helper.XMLEntityInfo オブジェクトを返します。エンティティに関する情報にアクセスするには、XMLEntityInfo オブジェクトで説明する XMLEntityInfo オブジェクトのメソッドを使用します。 たとえば、次のコードでは、widgets という名前の新しい XML エンティティが、inventory フォルダ内に作成されます。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 createFolder() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 エンティティ名の取得 XML リポジトリ内のすべてのエンティティのリスト、または指定されたフォルダ内のエンティティのリストを取得するには、以下の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドをそれぞれ使用します。 getChildDocs() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
XMLEntityInfo entity = xmlrepository.createEntity(Types.XML, “widgets”, “widgets inventory”, “This is a note.”, inventory);
public java.util.List getAllEntities(
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteExceptionpublic java.util.List getChildDocs(
com.bea.eci.repository.helper.RepositoryFolderInfo rfi
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
各メソッドは com.bea.eci.repository.helper.XMLEntityInfo オブジェクトのリストを返しますが、エンティティを定義しなかった場合は空きリストが返されます。XMLEntityInfo オブジェクトには、エンティティのオブジェクトの内容は含まれず、名前、型およびメタデータのみが含まれます。各エンティティの情報にアクセスするには、XMLEntityInfo オブジェクトで説明する XMLEntityInfo オブジェクトのメソッドを使用します。 たとえば、次のコードでは、すべてのエンティティのリストを取得します。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 次のコードでは、folderA 内のすべてのエンティティのリストを取得します。 getAllEntities() と getChildDocs() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 エンティティ情報の取得 XML リポジトリ内のエンティティに関する情報を取得するには、以下のいずれかの com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。 メソッド 1 メソッド 2 第 1 のメソッドでは、単一コンテンツのフィールドのエンティティがサポートされます。複数コンテンツのフィールドが存在する場合、このメソッドは検出した最初のタイプのコンテンツのみを返します。第 2 のメソッドでは、複数コンテンツのフィールドのエンティティがサポートされます。これにより、取り出すコンテンツのタイプが指定可能になります。 getEntity() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
List entities = xmlrepository.getAllEntities();
List entities = xmlrepository.getChildDocs(“folderA”);
public com.bea.wlpi.eci.repository.helper.XMLEntityInfo getEntity(
java.lang.String name
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteExceptionpublic com.bea.wlpi.eci.repository.helper.XMLEntityInfo getEntity(
java.lang.String name,
int type
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
各メソッドは、com.bea.eci.repository.helper.XMLEntityInfo オブジェクトを返し、指定されたエンティティが定義されていない場合は null を返します。エンティティに関する情報にアクセスするには、XMLEntityInfo オブジェクトで説明する XMLEntityInfo オブジェクトのメソッドを使用します。 たとえば、以下のコードでは、entityA に関するエンティティの情報を取得します。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 getEntity() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 フォルダ内のエンティティの編成 フォルダ内のエンティティを XML リポジトリ内で編成するには、以下の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。 第 1 のメソッドでは、エンティティがフォルダに追加されます。第 2 のメソッドでは、エンティティがフォルダから削除されます。 注意: あるエンティティをフォルダから削除すると、XML リポジトリからも削除されます。 addEntityToFolder() と removeEntityFromFolder() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
com.bea.eci.repository.helper.XMLEntityInfo entityInfo =
xmlrepository.getEntity("entityA");public void addEntityToFolder(
com.bea.eci.repository.helper.XMLEntityInfo xei,
com.bea.eci.repository.helper.RepositoryFolderInfo rfi
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteExceptionpublic void removeEntityFromFolder(
com.bea.eci.repository.helper.XMLEntityInfo xei,
com.bea.eci.repository.helper.RepositoryFolderInfo rfi
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
たとえば、次のコードでは、entityA を folderA 内に移動します。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 同様に、次のコードでは、 entityA を folderA から削除します。 addEntityToFolder() と removeEntityFromFolder() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 エンティティ名の変更 XML リポジトリ内のエンティティ名を変更するには、次の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。 renameEntity() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
xmlrepository.addEntityToFolder(“entityA”, “folderA”);
xmlrepository.removeEntityFromFolder(“entityA”, “folderA”);
public void renameEntity(
java.lang.String curname,
java.lang.String newName
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
たとえば、次のコードでは、既にあるエンティティ名の entityA が entityB に変更されます。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 renameEntity() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 エンティティの更新 XML リポジトリ内のエンティティに対して、その説明、メモおよびコンテンツを更新するには、次の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。 updateEntity() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
xmlrepository.renameEntity(entityA, entityB);
public void updateEntity(
com.bea.eci.repository.helper.XMLEntityInfo xei
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
エンティティが複数のコンテンツのタイプを持つかどうかに関係なく、ユーザは XMLRepositoryInfo オブジェクトの type フィールドで指定したタイプに対応する単一コンテンツのフィールドのみを更新できます。 たとえば、次のコードでは、XMLRepository オブジェクトの entityInfo で定義したように、既にあるエンティティの description、notes および contents フィールドが更新されます。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 updateEntity() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。 エンティティの削除 XML リポジトリからエンティティを削除するには、次の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。 deleteEntity() メソッドのパラメータを次の表に示します。パラメータには値を指定する必要があります。
xmlrepository.updateEntity(entityInfo);
public void deleteEntity(
com.bea.eci.repository.helper.XMLEntityInfo xei
) throws com.bea.eci.repository.helper.RepositoryException,
java.rmi.RemoteException
たとえば、次のコードでは、XMLEntityInfo オブジェクトの entityInfo で定義されたフォルダが削除されます。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。 deleteEntity() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。
xmlrepository.deleteEntity(entityInfo);
EJB 環境変数の値の取得
XML リポジトリとの接続に用いられる EJB 環境変数のリストを取得するには、次の com.bea.wlpi.eci.repository.ejb.XMLRepository メソッドを使用します。
public java.util.List getEnvVars(
) throws java.rmi.RemoteException
このメソッドは、リポジトリへの接続に用いられる環境変数の値を、指定された順序に並べた以下のリストを返します。
たとえば、以下のコードでは、使用している環境変数のリストが取得されます。このコード例では、xmlrepository は XMLRepository EJB への EJBObject 参照を表します。
List envVars = xmlrepository.getEnvVars();
getEnvVars() メソッドの詳細については、Javadoc の com.bea.eci.repository.ejb.XMLRepository を参照してください。
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |