bea.com | products | dev2dev | support | askBEA

Download Docs | Site Map | Glossary
Search

Using the Studio

Configuring Workflow Resources

This section describes how to configure system and application components, and includes:

- Overview of Resource Configuration Tasks

- Configuring Plug-Ins

- Configuring Business Operations

- Configuring Event Keys

- Managing Entities in the Repository

Overview of Resource Configuration Tasks

All of the tasks described in this section can be performed before or during workflow design, but the resources described can be configured without accessing workflow templates. In some cases, workflow design activities are actually dependent on these resources having been set up already, such as business operations, which must be defined before a workflow can call them. Once the resources are defined, they are available globally for access by all workflows, users, and organizations in the system. These tasks do not need to be performed in any particular order.

Note: You may also want to familiarize yourself with the workflow expression language and the Studio's Expression Builder and XPath Wizard tools if you will be configuring event keys. Complete information on workflow expressions is available in Using Workflow Expressions.

- Load and configure plug-ins. If you have developed custom client or server components that add functionality to be accessed through the Studio, you will want to configure these beforehand. For information on developing plug-ins, see Programming BPM Plug-Ins for WebLogic Integration. Information on loading and configuring plug-ins is provided in Configuring Plug-Ins.

- Define business operations. If you have developed Java components, such as custom classes or Enterprise JavaBeans (EJBs), you need to set up interfaces to them, in the form of business operations that are then called by workflows to invoke the functionality provided in the Java component's methods. Business operations must be defined before workflows can invoke them. Procedures are given in Configuring Business Operations. Alternatively, import previously exported business operations from existing workflow packages; see procedures in Importing Workflow Packages.

- Configure event keys. If your workflows or nodes within them are to be triggered by events, such as incoming XML messages on a Java Message Service (JMS) queue, you can set up event keys that retrieve the relevant data from the incoming documents to trigger those events. You can also configure the event keys while designing workflows, so setting them up ahead of time is optional. Details are provided in Configuring Event Keys. Alternatively, import previously exported event keys from existing workflow packages; see procedures in Importing Workflow Packages.

- Set up the repository. If you will be using any XML data transformation operations, or sending outgoing XML messages to an internal queue or an external topic or queue, you may want to import XML documents, style sheets, and other entities beforehand into the repository, which provides a centralized database for convenient access by any connecting Studio client. Information is provided in Managing Entities in the Repository. Alternatively, import previously exported repository entities from existing workflow packages; see procedures in Importing Workflow Packages.

Configuring Plug-Ins

A plug-in is a group of Java classes implemented as EJBs that extend the functionality provided in selected workflow components. Plug-ins provide a way to customize existing WebLogic Integration features so they are more appropriate for your environment, and to add functionality that is specific to your environment.

A plug-in can extend the functionality of the following workflow components:

- Workflow templates

- Workflow template definitions

- Start nodes

- Event nodes

- Done nodes

- Variables

- Actions

- Functions (that are part of expressions)

If a plug-in is developed for any of these workflow components, the Studio dialog box for these components is also modified to include a way for you to access the plug-in's functionality. For example, the Studio provides several default methods in the Properties dialog box of a Start node to trigger the start of a workflow: timed, manual, called, and event. To extend the default methods, a developer can create a plug-in that specifies a custom event to trigger a workflow, such as receiving an e-mail message, which might be the preferred method for starting workflows in your environment. This plug-in method will appear as an option in the Start Properties dialog box.

Once a plug-in is developed and is deployed on WebLogic Server, it is available for use by WebLogic Integration. When WebLogic Integration starts, it checks WebLogic Server to see if any plug-ins are available on the server.

Before you can use an available plug-in, you must load it using the Studio to activate it. You might also need to specify some configuration settings for the plug-in before you can use it.

Note: To load or configure a plug-in, you must have Configure Components permission. For details about permission levels, see Assigning Permissions to Users and Roles.

Viewing Plug-ins

To view a plug-in, choose Configuration—>Plugins to display the Plugin configurations dialog box.

Figure 4-1 Plugin Configurations Dialog Box

The information displayed for each plug-in is explained in the following table.

Plugin Name | The name for the plug-in as specified by the plug-in software.
Status | Loaded—The plug-in is loaded Initialized—The plug-in is available but has not been loaded Missing—The plug-in has a registered configuration, but is not deployed or available. Error—The plug-in threw an exception when called, or requires a later version of the plug-in framework.
Start mode | Automatic—The plug-in is loaded each time the server is started Manual—The plug-in must be loaded manually each time you start the server Disabled—The plug-in cannot be loaded
Version | The software version for the plug-in
Vendor | The name of the company that supplied the plug-in

You can also obtain information about a plug-in by selecting the plug-in from the list and clicking About.

Loading Plug-Ins

If a plug-in's start mode is manual, you can load it each time a WebLogic Integration server session is started. If a plug-in's start mode is disabled, you must first change it to manual or automatic before you can load it.

To load an initialized plug-in:

1. In the Plugin configurations dialog box, select the desired plug-in.

2. Click Load. The status of the plug-in changes to Loaded in the list.

To load a disabled plug-in:

1. In the Plugin configurations dialog box, select the desired plug-in, and click Update to display the Configuration dialog box.

2. In the Configuration dialog box, change the Start Mode to Automatic or Manual, and click OK.

3. With the plug-in selected in the Plugin configurations dialog box, click Load.

The status of the plug-in changes to Loaded in the list.

Note: Changes to the plug-in's start mode do not take effect until the WebLogic Integration server is restarted.

Updating a Plug-In Configuration

To configure a plug-in:

1. In the Plugin configurations dialog box, select the plug-in you want to configure.

2. Click Update. A configuration dialog box is displayed.

3. Optionally, select the start mode for the plug-in by clicking one of the following buttons:

   - Automatic — Select this option if you want to load the plug-in each time the server is started

   - Manual — Select this option if you want to load the plug-in manually as required

   - Disabled — Select this option to disable the plug-in functionality

   Note: The start mode does not become effective until the next time the WebLogic Integration server is started.

4. Specify configuration settings for the plug-in as appropriate.

   For details about defining configuration settings for a plug-in, see the online help for that plug-in. To access plug-in help, press the F1 key (for context-sensitive plug-in help), or choose Help—>Plugin Help from the main menu in the Studio and select the appropriate plug-in help from the menu.

5. Click OK to complete the configuration or Cancel to cancel the operation.

Deleting a Plug-In Configuration

You can delete a configuration for a plug-in if you no longer need the configuration. When you delete a configuration, you do not delete the plug-in itself. You just delete its registered configuration.

Note: You cannot delete the configuration of a plug-in unless the status of that plug-in is Missing.

To delete a configuration:

1. From the Plugin configurations dialog box, select the plug-in whose configuration you want to delete.

2. Click Delete. The registered configuration for the selected plug-in is deleted, but the plug-in remains visible in the Plugin configurations dialog box.

   The following table describes the actions that occur when you restart the WebLogic Integration server after a plug-in configuration has been deleted.

   If the WebLogic Integration server is restarted and the plug-in is . . . | Then . . .
   --- | ---
   Not deployed | The plug-in manager does not search for the plug-in and the plug-in is not listed in the Plugin configurations dialog box.
   Deployed | The plug-in is automatically loaded using the default configuration values defined by the plug-in.

Configuring Business Operations

To enable workflows to invoke software components that perform business logic, such as Java classes and Enterprise JavaBeans (EJBs), you define business operations. A business operation represents a method call on a Java class or EJB, including any variables that are passed to it as parameters, and result values that are returned to the workflow. You can use the business operations facility to create customized functions that invoke existing applications or applications that are built specifically for the workflow. The business operations facility displays all Java classes and EJBs registered in WebLogic Server, as well as their methods and parameters.

Note: For information about deploying Java classes and EJBs so that they are visible in the Studio, see "Deploying EJBs and Java Classes for Business Operations" in Customizing WebLogic Integration in Starting, Stopping, and Customizing BEA WebLogic Integration.

Once the business operation is defined, it is then globally available for all workflows in the system to invoke. You can also export and import business operations as part of Java archive package files, with or without the workflows that reference them (for more information, see Importing and Exporting Workflow Packages.)

Within an individual workflow, you use the Perform Business Operation action to invoke the business operation and, optionally, assign the results of the method call to a workflow variable. For more information, see Calling a Business Operation.

Note that before a workflow can call a method on an EJB or a non-static method on a Java class, the workflow must call its constructor method to create an instance of the EJB or Java class on the server. Therefore, you must be sure to create a business operation for the create() method of EJBs and a constructor method of Java classes, and a variable to store a reference to the instance. More information is provided in the following sections, which describe how to add and define business operations for each Java component type, and in Calling a Business Operation, which describes the steps for calling the necessary methods and assigning variables. An example of defining business operations is also provided in "Creating and Performing a Business Operation: Defining the Check Inventory Task" in Learning to Use BPM with WebLogic Integration.

Note: To add, define, or delete a business operation, you must have Configure Components permission. For details about permission levels, see Assigning Permissions to Users and Roles.

Viewing Business Operations

To view a business operation, choose Configuration—>Business Operations to display the Business Operations dialog box.

Figure 4-2 Business Operations Dialog Box

The information displayed for each business operation is explained in the following table.

Description | The name that you define for the business operation.
EJB/Class | The Enterprise JavaBean (EJB) or Java class to be invoked.
Method | The method in the EJB or Java class to be called.

Adding a Business Operation

To create and define a business operation:

1. From the Business Operations dialog box, click Add to display the Define Business Operation dialog box.

   Figure 4-3 Define Business Operation Dialog Box

2. In the Name field, enter a meaningful description of the business operation. A business operation that returns the number of items available in stock might be called, for example, Check Inventory. For methods that create an instance of the Java class or EJB at run time, give the business operation a name that indicates the purpose of the method and the name of the class or Bean that it creates, such as Create Order Processing EJB Instance.

   Note: You will also need to create a corresponding variable to reference the instance.

3. Specify the software component the business operation is invoking. The choices are:

   - Java Class — the business operation calls a method in a Java class on WebLogic Server. The Java class can be serializable or non-serializable. Non-serializable Java class references persist for the duration of a transaction only, and will need to be recreated each time the workflow instance reaches a quiescent state. Follow the steps given in Adding a Business Operation for a Java Class.

   - Session EJB — the business operation calls a method in a session EJB on WebLogic Server. Stateful session EJB references persist for the duration of a transaction only, and will need to be recreated each time the workflow instance reaches a quiescent state. Stateless session EJB references persist for the duration of a workflow instance. Follow the steps given in Adding a Business Operation for a Session EJB.

   - Entity EJB — the business operation calls a method in an entity EJB on WebLogic Server. Entity EJBs represent persistent data, and persist for at least the duration of the workflow instance and, often, beyond the life of a workflow instance. Follow the steps given in Adding a Business Operation for an Entity EJB.

4. In the Define Business Operations dialog box, click OK to save the business operation. The business operation is added to the list of valid business operations in the Business Operation dialog box.

Adding a Business Operation for a Java Class

If you are creating business operations for non-static methods in a Java class, you must also create a business operation for a constructor method for the class. (Details are given in Calling the Business Operation to Create an EJB or Java Class Instance.) Be sure to give this business operation a meaningful name that identifies its function, as it will need to be called from the workflow before any non-static methods in the class may be called. You will also need to create a variable of type Java Object to hold a reference to the Java class instance when the instance is created at run time. For information on variables, see Working with Variables.

Finally, when you name your business operation, it is a good idea to indicate whether the business operation calls a static or non-static method, so the workflow designer will know whether or not a constructor method needs to be called first.

To define a business operation for a Java class, proceed as follows:

1. Select the Java Class radio button.

2. Click Set to display the Java Class Name dialog box.

   Figure 4-4 Java Class Name Dialog Box

3. Enter a fully qualified Java class name (for example, java.lang.String), and click OK. The Java class name is set in the Fully Qualified Java Class Name field of the Define Business Operation dialog box.

   Figure 4-5 Define Business Operation Dialog Box: Java Class Option

4. In the Method to Call drop-down list, select a method to call upon invoking the business operation in the workflow. There are three types of Java class methods in the list:

   - Constructor Type — these method types are first in the list. Constructor methods return an object of the type you entered as the Java Class Name.

   - Method Type — these are second in the list. They are invoked on Java objects and can return any type.

   - Static Type — these are last in the list and begin with the word Static. Static methods require no object to be created and can return any type.

5. Optionally, give the method's parameters meaningful names by highlighting a parameter in the Parameters list and clicking Update to display the Parameter dialog box.

   Figure 4-6 Parameter Dialog Box

6. In the Name field, enter a descriptive name for the parameter and click OK.

7. Repeat steps 5 and 6 for all parameters in the Parameters in the list.

Adding a Business Operation for a Session EJB

In addition to creating business operations that call methods that provide business logic for your workflow, you must create a business operation for the create() method of the Session EJB whose methods you are calling via a business operation. (Details are given in Calling the Business Operation to Create an EJB or Java Class Instance.) Be sure to give this business operation a meaningful name that identifies its function, as it will need to be called from the workflow in each transaction that calls other methods. You will also need to create a variable of type Session EJB to hold a reference to the EJB instance when the instance is created at run time. For information on variables, see Working with Variables.

All Session EJBs deployed on WebLogic Server are displayed in a list in the Define Business Operations dialog box according to their Java Naming and Directory Interface (JNDI) name.

Figure 4-7 Define Business Operation: Session EJB Option

To define a business operation for a Session EJB:

1. Select the Session EJB radio button to display fields relevant to Session EJBs in the Define Business Operation dialog box.

2. From the JNDI Name for Session EJB drop-down list, select the JNDI name for the Session EJB.

3. In the Method to Call drop-down list, select a method to call upon invoking the business operation in the workflow.

4. Optionally, give the method's parameters meaningful names by highlighting a parameter in the Parameters list and clicking Update to display the Parameter dialog box.

5. In the Name field, enter a descriptive name for the parameter and click OK.

6. Repeat steps 4 and 5 for all parameters in the Parameters in the list.

Adding a Business Operation for an Entity EJB

In addition to creating business operations that call methods that provide business logic for your workflow, you must create a business operation for the create() method of the Entity EJB whose methods you are calling via a business operation. (Details are given in Calling the Business Operation to Create an EJB or Java Class Instance.) Be sure to give this business operation a meaningful name that identifies its function, as it will need to be called from the workflow before other methods in the EJB may be called. You will also need to create a variable of type Entity EJB to hold a reference to the EJB instance when the instance is created at run time. For information on variables, see Working with Variables.

All Entity EJBs deployed on WebLogic Server are displayed in a list in the Define Business Operations dialog box according to their JNDI name.

Figure 4-8 Define Business Operation: Entity EJB Option

To define a business operation for an Entity EJB:

1. Select the Entity EJB radio button to display fields relevant to Entity EJBs in the Define Business Operation dialog box.

2. From the JNDI Name for Entity EJB drop-down list, select the JNDI name for the Entity EJB.

3. In the Method to Call drop-down list, select a method to call upon invoking the business operation in the workflow.

4. Optionally, give the method's parameters meaningful names by highlighting a parameter in the Parameters list and clicking Update to display the Parameter dialog box.

5. In the Name field, enter a descriptive name for the parameter and click OK.

6. Repeat steps 4 and 5 for all parameters in the Parameters in the list.

Updating a Business Operation

When updating a business operation, you should be sure to update any Perform Business Operation actions that reference the business operation from workflows. For more information on this action, Calling a Business Operation.

To update a business operation:

1. In the Business Operations dialog box, select the business operation you want to update, and click Update. The Define Business Operation dialog box is displayed.

2. Make changes as needed, and click OK when done.

Deleting a Business Operation

Warning: Before deleting a business operation, make sure that the business operation is not referenced by any workflows using the Perform Business Operation action, or you will not be able to activate the workflow. When making a deletion, you will not be warned if any references exist, so be sure to update the Perform Business Operation action accordingly (for information, see Calling a Business Operation).

To delete a business operation:

1. In the Business Operations dialog box, select the business operation you want to delete, and click Delete.

2. When prompted by a warning message, click OK to confirm the delete, or Cancel to cancel.

Configuring Event Keys

A workflow can be started, or nodes within a workflow triggered, by an event. An event is an asynchronous notification from another workflow or from an external source, such as another application. Start nodes can be defined as event-triggered, and Event nodes are always asynchronous nodes that can only be triggered by an external event.

An event notification most typically takes the form of an XML document contained in a Java Message Service (JMS) message and received on a JMS queue, although it may also be plug-in defined, which means that the event notification can be a custom trigger rather than an XML document. (For more information, see Programming BPM Plug-Ins for WebLogic Integration).

In an XML event type, the actual trigger is either the document type declaration (DOCTYPE) specified in the prolog of the XML message, or it is the root element of the XML message. You specify the DOCTYPE or root element with which you want to trigger the event or start the workflow in a Start or Event node's properties dialog box. The event is not triggered unless the DOCTYPE or root element specified in the node's properties dialog box matches that in the incoming XML message.

In addition to using the DOCTYPE or root element, you can further qualify an event with an event key. An event key allows you to specify the contents of incoming XML messages or of JMS header or property fields that will trigger a Start or Event node. That is, rather than allowing all incoming XML documents with a particular DOCTYPE or root element to trigger the node, you can filter the instances of incoming XML messages according to specific values contained in the document or header, so that only a message, or messages, containing those values can trigger the node in the running workflow.

An event key consists of two parts:

- Key value expression

You specify the key value expression in the Properties dialog box for Start or Event nodes. The key value expression is a workflow expression that is evaluated at run time to specify the exact data that the incoming message must contain for the node to be triggered. In a Start node, the expression typically contains a constant that refers to particular, recurring data contained in the incoming XML document, or it could be the value of a JMS header. In an Event node, the expression typically contains variables or functions to obtain a unique value at run time. Examples of key value expressions are given in Understanding Event Keys and steps for defining key value expressions are given in Defining Event-Triggered Start Properties and Defining Event Properties.

- Event key expression

This is an expression that returns the key value from the header or body of the incoming message at run time and converts it to the data type required by the corresponding key value expression in a Start or Event node. You specify the event key expression in an event key expression dialog box that you access from the Configuration menu. The expression typically contains an XPath language expression to parse the XML document, or an EventAttribute() function expression to extract a value from a JMS message header.

In the event key configuration, you specify an event descriptor, which corresponds to the DOCTYPE or root element specified in a Start or Event node properties dialog box. You then specify an event key expression, which corresponds to a key value expression defined in the Start or Event properties dialog box, so that the process engine can compare the two values at run time and determine if there is a match. The relationship between event descriptors and DOCTYPE/Root elements, and between event key expressions and key value expressions is discussed more fully, with examples, in Understanding Event Keys.

However, since you can configure event keys independently of workflows, the procedures for doing so are given below. Once you have configured an event key expression, it is available for all workflows in all organizations. If you know the contents of your incoming messages, you can configure your event key expressions in advance to make them available to the workflow designer who will set up corresponding key value expressions in Start or Event nodes. You can also export and import event keys to and from a Java archive package file, with or without the workflows that reference them; for more information, see Importing and Exporting Workflow Packages.

Viewing Event Key Configurations

To view an event key configuration, choose Configuration—>Events to display the Event Key Expressions dialog box.

Figure 4-9 Event Key Expressions Dialog Box

The information displayed for each event key is explained in the following table.

Content Type | By default, this is preset to text/xml and cannot be edited, unless a plug-in event type is available with a loaded plug-in.
Event Descriptor | For an XML/JMS event, this is the DOCTYPE or root element of the incoming XML document contained in the JMS message.
Expression | The expression that returns the key value from the header or body of the incoming message at run time and converts it to the data type required by the corresponding key value expression in a Start or Event node.

Adding an Event Key Configuration

To add an event key configuration:

1. From the Event Key Expressions dialog box, click Add to display the Define Event Key Expression dialog box.

   Figure 4-10 Define Event Key Expression Dialog Box

2. In the Content Type field, select text/xml for an XML/JMS message.

3. In the Event Descriptor field, enter the DOCTYPE or root element of the incoming XML document.

4. In the Expression field, enter one of the following:

   - To extract a value from a JMS header or property field, construct an expression using the EventAttribute() function, with the name of the field inside the parentheses.

   - To extract a value from the XML body, use an expression using the XPath() function (see XPath()), or the dot notation for XML elements to be returned as strings (for information, see XML Element Dot Notation). You can also use the Expression button to invoke the XPath Wizard, from which you can generate XPath expressions automatically from a sample incoming document. For information, see Creating XPath Expressions Using the XPath Wizard.

   For more information on the syntax for event key expressions, see Extracting Run-Time Event Data. Note also that an XPath() or EventAttribute() function must be wrapped in a typecasting function to return a data type that matches the type returned by the key value expression defined in the corresponding Event or Start node. For information on typecasting functions, see Converting Data Types.

   Note also that the event key expression that you enter here should return a value that matches a value specified by a key value expression in a Start or Event node. For more information, see for defining key value expressions in Start or Event nodes, see Defining Event And Event-Triggered Start Properties.

5. Click OK. The event key is stored in an event key table in the WebLogic Integration database, and is displayed in the Event Key Expressions dialog box.

6. Click Close.

Updating an Event Key Configuration

When updating an event key configuration, you can only update the expression, but not the event descriptor.

To update an event key:

1. From the Event Key Expressions dialog box, select the event key you wish to update, and click Update to display the Define Event Key Expression dialog box.

2. Edit the Expression as necessary.

3. Click OK when done.

Deleting an Event Key Configuration

When deleting an event key, take care that the key value is not referenced by key value expressions used in Start or Event nodes in workflows, or these events will not be triggered.

To delete an event key:

1. From the Event Key Expressions dialog box, select the event key you wish to delete, and click Delete.

2. When prompted by a warning message, click OK to confirm the delete, or click Cancel.

Managing Entities in the Repository

The WebLogic Integration repository contains a database table that is used to store XML entities, such as XML documents, DTD files, and XSL template documents. You can use the Studio to view, organize, and populate the repository, to make existing XML entities available globally for use and reuse by all workflows in the system. If you have previously-stored XML documents that you would like to reference in the workflows you create, you can set up your repository so that these documents are available to any client logged on to the system.

For example, if you will be using the Send XML to Client action to interact with a Worklist user (for information, see Sending an XML Message to the Worklist Application), you can populate the repository with the document type definition (DTD) files that are used to send messages to the Worklist, so that any Studio client user can easily access them in a central place. Or if you will be using the XSL Transform action to translate XML documents at run time (for information, see Transforming XML Documents), you may want to store your XSL stylesheet transform documents in the repository for easy access when defining that action.

In this section, we discuss how to set up the repository initially. However, the repository and all of the functions described in this section can be also be accessed from within workflow dialog boxes, as described in Working with XML Entities. You can also export entities contained in the repository to a file on disk (this option is discussed in Exporting an Entity to the File System) and to a Java archive package file for re-import into another system (for more information on import/export, see Importing and Exporting Workflow Packages.)

Viewing the XML Entities in the Repository

To view the XML entities in the repository:

1. Choose Tools—>Show XML Finder. The XML Finder dialog box opens with the Repository tab selected.

2. In the left pane, select XML Repository. This displays the XML entities in the repository.

   Figure 4-11 XML Entities in the Repository

The following table describes information displayed in the Repository window.

Type | The type of entity, including folders, documents, and other XML entities (for information on XML entity types, see Working with XML Entities).
Name | The name of the folder or entity.
Created | The date the entity was first created in the repository.
Modified | The date the entity was last modified.
Description | The description of a folder or entity that was entered when the entity was created.
Folders | A list of all folders contained in the repository.
Entities | A list of all entities contained in the repository.

To view the contents of a folder:

1. In the left pane, expand all folders and select the folder whose contents you wish to view. A list of the entities contained in the folder appear in the right pane, along with any description or notes that were entered for the folder when it was created.

   Figure 4-12 XML Entities in the Selected Folder

2. Select an entity in the list to display any description or notes that were entered for the entity when it was created.

3. Optionally, with an entity selected, click Preview to display the Preview Document window and view the document's content.

   Figure 4-13 Preview Document Window

4. Click OK to close the Preview Document dialog box.

For more information about entities, see Working with XML Entities.

The left panel shows you a tree view of the repository with folders and sub-folders arranged hierarchically. The top-most panel on the right shows you the contents of the selected folder. The Description field contains a description of the selected folder, and the Notes field contains any notes about the selected folder.

Working with Folders

You can perform several different actions on a folder, including adding, updating, and deleting. To perform actions on a folder:

Adding a Folder

To add a folder:

1. In the left pane of the Repository window, right-click the XML Repository icon or any sub-folder, and from the pop-up menu, select Add Folder to display the Add Folder dialog box.

   Figure 4-14 Add Folder Dialog Box

2. In the Name field, enter the name of the folder.

3. Optionally, enter a description and notes about the folder in the Description and Notes fields, respectively.

4. Click OK. The new folder appears in the XML Finder dialog box.

Updating Folder Information

To update a folder:

1. In the left pane of the Repository window, right-click the folder you want to update, and from the pop-up menu, select Update Folder Info to display the Update Folder Info dialog box.

   Figure 4-15 Update Folder Info Dialog Box

2. Change the contents of the Name, Description, and Notes fields as necessary.

3. Click OK.

Deleting a Folder

A folder may only be deleted when it has no sub-folders.

To delete a folder:

1. In the left pane of the Repository window, right-click the folder you want to delete, and from the pop-up menu, select Delete Folder.

2. When prompted, confirm the deletion.

Working with XML Entities

The repository stores different types of XML entities, each one represented by a symbol, as shown in the following table.

Symbol | XML Entity Type
--- | ---
| Document Type Definition (DTD) file
| Message Format Language (MFL) file
| Schema (XSD) file
| Text file
| XML document
| Extensible Stylesheet Language (XSL) template document

You can perform several different actions on XML entities in folders in the repository, including adding, updating, moving, and deleting entities.

Importing an XML Entity into the Repository

To add an XML entity:

1. In the left pane of the Repository window, expand folders, right-click the folder to which you want to add the entity, and from the pop-up menu, select Add Entity to display the Add Entity dialog box.

   Figure 4-16 Add Entity Dialog Box

2. In the Name field, enter a unique name for the entity you are adding.

3. From the Type drop-down list, select the type of entity you are adding.

4. Optionally, enter a description and notes about the entity in the Description and Notes fields, respectively.

5. In the Content URL field, enter a URL for the entity you are adding, or use Browse to locate the entity on a local or mapped network drive. The Open dialog box appears.

   Figure 4-17 Open Dialog Box

6. From the Look in drop-down list, select the folder containing the file whose contents you want to import.

7. In the File name field, enter the filename and extension, or select the file, and click Open.

8. The URL for the file is returned to the Add Entity dialog box.

9. Optionally, click View to display the contents of the entity you are adding.

10. Click Cancel to close the window and return the content to the Add Entity dialog box.

11. Click OK. The new entity appears in the XML Finder dialog box in the selected folder.

Updating an Entity

You can use the Update Entity feature to change the content of an entity you have defined. You cannot, however, change the entity type. To change the type of an entity, you must create a new entity with the desired content type. For details, see Importing an XML Entity into the Repository.

To update an entity:

1. In the left pane of the Repository window, expand folders, select the folder containing the entity you want to update.

2. In the right pane of the window, right-click the entity you want to update, and from the pop-up menu, select Update Entity Definition to display the Update Entity Definition dialog box.

   Figure 4-18 Update Entity Definition Dialog Box

3. Change the contents of the Name, Description, and Notes fields as necessary.

4. In the Content URL field, enter the URL for the source of the new content you want to add, or use Browse to locate the entity on a local or mapped network drive.

5. Optionally, click View to display the new content for the entity.

6. Click OK to close the Update Entity Definition dialog box. The selected entity is updated.

Moving an Entity

You can move an entity from one folder to another by cutting it from the source folder and pasting it to the target folder.

To move an entity:

1. In the left pane of the Repository window, expand folders, and select the folder containing the entity you want to cut.

2. In the right pane of the window, right-click the entity you want to cut, and from the pop-up menu, select Cut.

3. In the left pane of the Repository window, expand folders, right-click the folder into which you want to paste the entity, and from the pop-up menu, select Paste. The entity is pasted into the target folder.

Exporting an Entity to the File System

You can save an XML entity from the repository database table to the local file system or a network drive mapped to the local machine.

To export an entity to a file:

1. In the left pane of the Repository window, expand the folders and select the folder containing the entity you want to export.

2. In the right pane of the window, right-click the entity you want to export, and from the pop-up menu, select Export Entity to display the Save dialog box.

   Figure 4-19 Save Dialog Box

3. From the Look in drop-down list, select the drive and folder to which you want to export the entity.

4. In the File name field, specify a name for the file to which you want to export the entity, or select an existing file. If you do not specify a name, the system assigns the name of the entity by default. If you select an existing file, you are prompted to overwrite it.

5. Click Save. The file is saved to disk with the appropriate extension for the file type.

Deleting an Entity

If you delete an entity that is referenced by the XSL Transform action in a workflow, be sure to update this action in order to avoid WebLogic Integration server exceptions at run time (for more information on this action, see Transforming XML Documents).

To delete an entity:

1. In the left pane of the Repository window, expand the folders and select the folder containing the entity you want to delete.

2. In the right pane of the window, right-click the entity you want to delete, and from the pop-up menu, select Delete Entity.

3. When prompted, confirm the deletion.