Dynamically defining the search criteria

You can use the RegistryLookup and EndpointLookup nodes to issue WebSphere® Service Registry and Repository (WSRR) queries specified in the local environment.

The RegistryLookup and EndpointLookup nodes issue WSRR queries at run time and save the resulting data in the local environment. You can specify the queries at design time by using node properties to define the search criteria. Both nodes require at least one query property to be defined before you can deploy the message flow. However, you can specify the search criteria at run time in the local environment, either supplementing or overriding the node properties.

The following table defines the local environment overrides for WSRR queries. These fields must be set in OutputLocalEnvironment.ServiceRegistryLookupProperties by a preceding transformation node, such as a Compute node.
Setting Description
Name This setting overrides the Name property on the node; for example, with an ESQL Compute node:
SET OutputLocalEnvironment.ServiceRegistryLookupProperties.Name =
'DemoCustomer';
This setting relates to the PortType Name property on the EndpointLookup node. Therefore, to set the PortType Name property, use the Name setting in the local environment.
Namespace This setting overrides the Namespace property on the node; for example:
SET OutputLocalEnvironment.ServiceRegistryLookupProperties.Namespace =
'http://mb.sr.eis.ibm.com';
This setting relates to the PortType Namespace property on the EndpointLookup node. Therefore, to set the PortType Namespace property, use the Namespace setting in the local environment.
Version This setting overrides the Version property on the node; for example:
SET OutputLocalEnvironment.ServiceRegistryLookupProperties.Version =
'1.0';
This setting relates to the PortType Version property on the EndpointLookup node. Therefore, to set the PortType Version property, use the Version setting in the local environment.
MatchPolicy This setting overrides the Match Policy property on the node; for example:
SET OutputLocalEnvironment.ServiceRegistryLookupProperties.MatchPolicy =
'One';

Valid values are One and All.

DepthPolicy This setting overrides the Depth Policy property on the RegistryLookup node; for example:
SET OutputLocalEnvironment.ServiceRegistryLookupProperties.DepthPolicy =
'MatchOnly';
Valid values are:
  • MatchOnly for Return matched only (Depth = 0)
  • MatchShowRel for Return matched showing immediate relationships (For compatibility only)
  • MatchPlusImmediate for Return matched plus immediate related entities (Depth = 1)
  • MatchPlusAll for Return matched plus all related entities (Depth = -1)

The MatchShowRel property provides compatibility with versions of IBM® App Connect Enterprise before Version 6.1.0.4, by using the output format that was used in those previous versions. This option is deprecated, and should not be used if you are creating a new message flow. Consider migrating existing message flows to use one of the other options.

UserProperties This setting overrides the User Properties property on the node. You can specify more than one user-defined property in the local environment; for example:
SET OutputLocalEnvironment.ServiceRegistryLookupProperties.UserProperties.property1
= 'value1';
SET OutputLocalEnvironment.ServiceRegistryLookupProperties.UserProperties.property2
= 'value2';

You can remove a user-defined property from the local environment by setting its value to NULL; for example:

SET OutputLocalEnvironment.ServiceRegistryLookupProperties.UserProperties.property1
= NULL;

You can use the node properties editor at design time to specify ESQL paths or XPath expressions to read the value for a user property at run time from a field in the message tree. However, the override values that you set in the local environment are the string values that are used in the query.

Classification This setting overrides the Classification property on the node; for example:
SET OutputLocalEnvironment.ServiceRegistryLookupProperties.Classification =
'http://www.ibm.com/xmlns/prod/serviceregistry/6/0/governance/
DefaultLifecycle#InitialState0';
You can specify more than one classification in the local environment. For example:
SET OutputLocalEnvironment.ServiceRegistryLookupProperties.Classification[1] =
'http://www.ibm.com/xmlns/prod/serviceregistry/6/0/governance/
DefaultLifecycle#InitialState0';
SET OutputLocalEnvironment.ServiceRegistryLookupProperties.Classification[2] =
'http://www.ibm.com.policy/GovernancePolicyDomain';