Skip Headers
Oracle® Fusion Middleware User's Guide for Oracle B2B
11g Release 1 (11.1.1.7)

Part Number E10229-13
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Master Index
Master Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

D Setting B2B Configuration Properties in Fusion Middleware Control

This appendix describes how to use Oracle Enterprise Manager Fusion Middleware Control to set B2B configuration properties for properties that are not set on the Configuration tab of the Oracle B2B interface (see Chapter 17, "Configuring B2B System Parameters"). It also discusses how to set B2B properties by using the configmbeanutil utility.

The appendix contains the following topics:

D.1 Properties To Set in Fusion Middleware Control

The following properties can be set in Oracle Enterprise Manager Fusion Middleware Control. See Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite for how to set the properties.

Note:

Restarting the SOA Server is required for changes to B2B properties.

Table D-1 Oracle B2B Properties in Oracle Enterprise Manager Fusion Middleware Control

Property Description
b2b.addebMSHeaders

Used to add the incoming ebMS message details of ACTION, SERVICE, SERVICE TYPE, CPAID, FROMROLE, and TOROLE to the ACTION_NAME header in AQ.

By default only the ACTION is passed as part of ACTION_NAME.

b2b.attachments.dir

To specify an attachments directory location, set this property.

If enabled, this property allows users to specify a directory into which all of the attachments will be written.

Changes to this property require a server restart for the new value to take effect.

b2b.certificatevalidation

This property is used to enable or disable the validation of the certificate received on ebMS. For example, an expired certificate normally throws an error; however, if the property is set to false, it allows the certificate without throwing validation errors. The default value is true, indicating that by default, Oracle B2B validates the certificate.

b2b.checkDuplicate

To check for duplicate messages, set this property to true.

If this property is set to false, a check for a duplicate of the incoming business message is not performed.

By default, Oracle B2B checks for duplicate messages based on the business message ID of the incoming message.

This property needs to be set to false to enable processing of duplicate RosettaNet messages.

b2b.rejectDuplicateMessage

When this property is set to true, duplicate messages with same message ID are not allowed in a batch. If such messages are sent, Oracle B2B changes the message ID of messages and sets the messages to ERROR state.

Also, in Reports page, the following error is reported:

"Duplicate message with same message id found in a batch. Changing original message id <org_msg_id> to new message id <org_msg_id+timestamp) and rejecting the message."

The default value of this property is false.

b2b.deploy.validation

To turn off validation during deployment, set this property to false.

This is useful when deploying a large number of agreements where you are certain that the data is valid.

b2b.mdsCache.minutesToLive

Set this property to 0 to specify that the MDS cache would be stored in memory forever. By default, the value for this property is 5, which means that the cache would be removed from memory after 5 minutes, if the objects are not used. You can set the value of the property to be 0 or any other non-zero value.

b2b.docPluginList

Using this property, document plugins are loaded as per the order specified in this property. For example,

b2b.docPluginList=Custom,EDI_X12,EDI_EDIFACT,HL7,RosettaNet

ensures that document plugins are loaded as per the specified order. If no value is provided for this property, then all document plugins from the system (protocol.xml) are loaded.

b2b.edi.enablePreprocess

Set this property to true to pre-process data to remove the trailing CRLF (new line characters) and/or unwanted CRLF that maybe present in file.

The default value is false.

Changes to this property require a server restart for the new value to take effect.

oracle.tip.b2b.edi.binaryDocType

This property is used by Oracle B2B to handle the BIN segment of EDI payloads. You need to specify a comma-separated list of document types that can have BIN segments as the following:

oracle.tip.b2b.edi.binaryDocType=841

Setting this property ensures that Oracle B2B processes the corrupt BIN segment content by treating the content as binary.

oracle.tip.b2b.addCorrelatedFAInfoInExceptionXML

When set to true, the Exception message raised on the receipt of a negative FA contains the B2B Message ID of the incoming FA, which indicated error for the outbound EDI message.

b2b.edi.identifyToTP

To identify the toTP from the TP information present in the incoming message, use this property.

This property is used for inbound message processing. If it is set to true, the toTP is identified from the TP information present in the incoming message. The default value is false.

b2b.edi.ignoreValidation

To turn off the EDI envelope validation and ignore interchange validation errors for EDI messages, you can set comma separated envelope header with this property.

For example:

b2b.edi.ignoreValidation=InterchangeSenderID,

InterchangeReceiverID 

or use the value ALL to turn off the complete envelope header validation.

This property value can be overridden at the Document Protocol Version level under the Miscellaneous tab in the Oracle B2B console.

Note: If you add or update this flag, a server restart is not needed. However, if you remove the flag, the server must be restarted for the change to take effect.

b2b.edi.correlateInterchangeOnly

When an inbound Control Message is received, the original message state is set based on Control status of the message. Use this property to to set original inbound Control message to correct status.

Consider the following scenarios:

Scenario 1: If the CONTROL message has following GROUP Xpath:

/*[local-name()='Transaction-CONTRL']/*[local-name()='Loop-Group_3']/*[local-name()='Segment-UCF']/*[local-name()='Element-0048']

then Oracle B2B uses Loop-Group_4 or Loop-Group_3 Xpath to retrieve the CONTROL status:

/*[local-name()='Transaction-CONTRL']/*[local-name()='Loop-Group_3']/*[local-name()='Loop-Group_4']
/*[local-name()='Transaction-CONTRL']/*[local-name()='Loop-Group_3']

Scenario 2: If the CONTROL message does not have GROUP Xpath, then Oracle B2B uses Loop-Group_1 XPath:

/*[local-name()='Transaction-CONTRL']/*[local-name()='Loop-Group_1']

In case the preceding XPaths yield no Transaction Control Number, Oracle B2B cannot find the CONTROL status, and so, by default, it sets the status of original message to COMPLETE.

If you want to set the original message to correct status, then you need to set the following property to true: b2b.edi.correlateInterchangeOnly=true

b2b.encoding

This property can be used to specify encoding other than default UTF-8.

b2b.errorsCumulativeReported

To indicate whether reported errors are cumulative or not, set this property to true or false.

Set this property to true (the default) to report errors in a cumulative fashion.

If set to false, the error text and error description fields are not concatenated with the description starting on a new line.

This property is most useful with EDI batching error messages.

b2b.fa.inbound.validation
b2b.fa.outbound.validation

Use these properties to control inbound and outbound FA validation.

To turn off the outbound FA validation, set the b2b.fa.outbound.validation property to false. The default value is true.

To turn off the inbound FA validation, set the b2b.fa.inbound.validation property to false. The default value is true.

At the agreement level:

  • When b2b.fa.inbound.validation is set to true, then validation takes place. In this case, the value selected at agreement level takes effect.

  • When b2b.fa.inbound.validation is set to false, then validation does not take place. In this case, the FA validation at the global level is turned off. As a result, the value selected at the agreement level does not take effect.

This property value can be overridden at the Agreement level in the Oracle B2B console.

b2b.FACorrelatedByInterchangeId

To correlate inbound and outbound FAs correctly if the same control numbers are used between the same trading partners, set this property to true.

By default Oracle B2B does not correlate inbound and outbound FAs correctly if the same control numbers are used between the same trading partners. Set this property to true so that Oracle B2B will correlate based on Control Number + (Interchange Sender ID + Interchange Receiver ID) for both Inbound and Outbound messages.

b2b.FailedMessagesDirectory

To change the location of the failed application message that is written to the file system, when b2b.jmsRedeliveryLimit is reached, set this property. The location can be changed from the default to another location by setting this property to another folder.

b2b.HAInstance

Set this property to true to ensure only one node in an High Availability (HA) cluster starts a polling thread for the configured File, FTP, or Email channels. Without this property being set, each node starts its own polling thread and could pick the same file multiple times.

The default value of this property is false.

A restart of all the nodes in the cluster is required to ensure each node works in the expected HA Mode.

b2b.IDENTIFY_TP_BY_HOSTNAME

In cases of TCP-based exchange protocols, such as MLLP and Generic TCP, where the host name is masked, to enable Oracle B2B to determine the host name of each message, set this boolean property to true.

If set to true, then Oracle B2B retrieves the host name from the IP address of the host.

If set to false, then Oracle B2B does not lookup the host name from the IP address.

The default value for this property is true.

b2b.TPBasedSeqTarget

To enable a channel name or a trading partner name as a sequence target, set this property to true.

If a message has a sequence target as a part of the action name, then priority is be given to that message property. However, if there is no message level sequence target, and the property (b2b.TPBasedSeqTarget) is enabled, then the trading partner name is considered as the sequence target.

To enable sequencing in case of:

  • TCP: If sequencing is enabled (in trading partner facing channel) and TARGET is not specified, use the trading partner name as the TARGET to query the cache. This happens at the entry point in 14.

  • Non-TCP protocols: Because in non-TCP protocols, the channel is not bidirectional, use the TO-PARTY name as TARGET.

  • Nonfabric: Use the sequencing flag in the channel of outbound listening internal channel.

b2b.showEncryptedData

For an encrypted RosettaNet message being exchanged, you need to set this property to true for viewing Packed Message contents.

b2b.threads.LogStatusInterval
b2b.threads.LogStatusLevel

Use this feature to log the number of active inbound and outbound threads from the available pool of threads during a periodic interval. Oracle B2B publishes event thread information such as name, last active status at periodic intervals to DMS metrics and diagnostic logs. By default, thread information are published at a 30 minute interval and the log level is DEBUG.

Users can change the interval and log level using these properties.

Possible values for b2b.threads.LogStatusLevel are DEBUG, INFORMATION, WARNING, and ERROR.

For the feature to work:

  • When b2b.threads.LogStatusLevel = DEBUG, the server log level needs to be set to TRACE.

    When b2b.threads.LogStatusLevel = INFORMATION, then the server log level needs to be set to NOTIFICATION.

Sample Output:

<Mar 3, 2011 11:37:01 PM PST> <Error> <oracle.soa.b2b.engine> <BEA-000000>
<B2B Thread Name :
weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@f6e5fd8 - Direction :
Default - Status : ACTIVE>
b2b.addAllDocParams

Set this property to false to stop adding unwanted or unset parameters in the import zip.

b2b.useDefaultQuery

Set this property to false to make the value of Receive Time Stamp blank and Send Time Stamp to be automatically filled.

The default value is true.

b2b.refreshCache

Set this property to true indicate if there must be a retry by refreshing the cache in case of a failure (only for EBMS.) The property is required only in a cluster environment when the cache synchronization is not set up.

The default value is false.

b2b.commitTxnOnMsgDelivery

Set this property to true to indicate whether the database transaction message should be (intermediate) committed while delivering the message to the back end. If this parameter is not set, the message is still delivered to the back end, but the database records are not committed.

b2b.hl7.ignoreValidation

To turn off the hl7 envelope validation, you can set comma separated envelope header with this property.

For example:

b2b.hl7.ignoreValidation = MessageReceivingFacility,

MessageSendingApp

or set it to ALL to turn off the complete envelope header validation.

This property value can be overridden at the Document Protocol Version level under the Miscellaneous tab in the Oracle B2B console.

b2b.HL7DocIdentification

Typically Oracle B2B identifies agreements or endpoint documents based on the document type and document type revision supplied from the back end application. If the backend application is not able to provide the document type and document type revision information, the same can be retrieved from the outbound XML payload.

Set the b2b.HL7DocIdentification to true to retrieve the information.

b2b.inboundThreadCount
b2b.inboundThreadSleepTime
b2b.outboundThreadCount
b2b.outboundThreadSleepTime
b2b.defaultThreadCount
b2b.defaultThreadSleepTime

To set the number of threads and thread sleep time to improve message processing, set these properties.

The recommended values for b2b.inboundThreadCount and b2b.outboundThreadCount depend on your system. For a 2 GB computer, a setting of 3 to 5 is recommended.

If Oracle B2B is running in a single thread mode (default), then a blocked outbound HTTP message could cause failure in Oracle B2B to process the subsequent message. The HTTP delivery has a default timeout of 60 seconds, and the timeout would push the message to error and unblock the processing. To avoid delays in processing, it is recommended that you increase the thread count property b2b.outboundThreadCount to 3 or 4 threads.

The b2b.inboundThreadSleepTime and b2b.inboundThreadSleepTime properties put a thread to sleep after message processing. A setting between 10 and 1000 (milliseconds) is recommended.

b2b.jmsRedeliveryLimit

You can change the retry limit for reading messages from the JMS queue by setting this property, causing Oracle B2B to retry reading the message for the number of times specified there. The default retry limit is 5.

When the limit count expires, the message and the header contents are written into the file system (the default location is the /tmp folder). Oracle B2B also sends an exception message to the JMS - B2B_IN_QUEUE, reporting the error and providing the location of the saved message.

You can specify the location for failed messages by setting b2b.FailedMessagesDirectory.

b2b.listening.channel.restart.wait

Sometimes Oracle B2B creates multiple file monitor threads for a listening channel. Setting a longer interval using this property helps to avoid the race condition of threads during initialization.

b2b.MaxTimeinAquiredState

Set this property to avoid an issue in which the autostack handler does not resume processing of messages after restart.

The time unit value of b2b.MaxTimeinAquiredState property is in minutes and 30 is the default value.

b2b.mdsCache cache_size

To set the Metadata Service (MDS) instance cache size, set this property.

A ratio of 5:1 is recommended for the xmx-to-mdsCache values. For example, if the xmx size is 1024, maintain mdsCache at 200 MB.

b2b.OutboundDispatchInterval

To control the delay between every cycle of dispatch, use this property. Set this property to specify the amount of time to wait (in milliseconds) between dispatching of sequenced messages.

If enabled, the property will control the delay between every cycle of dispatch. The property can be used along with Message Sequencing and Trading Partner Downtime Schedule features.

When auto stack handler is used, then Oracle B2B retries the outbound failed messages in sequence. after the endpoint is reached for delivery, all messages in the sequence will be eligible for delivery and this may cause an overload of message delivery at the endpoint. To reduce the load, this property can be used to set the interval between dispatch of messages in milliseconds.

b2b.outboundOneErrorAllError

To specify how errors are flagged, set this parameter to true or false.

For outbound messages, b2b.outboundOneErrorAllError can be set to true or false. The default is false. If the property is set to true, then for outbound messages, even with a single message in error, all outbound batch messages are set to the error state. None of the batched messages are sent to the trading partner.

When using the b2b.outboundOneErrorAllError property, inbound messages behave as if b2b.outboundOneErrorAllError is set to false; that is, if an error occurs during an inbound message process, then only that message is flagged with the error and other messages are passed. There is no option to flag every message as failed.

b2b.payloadObfuscation

To turn on payload obfuscation, set this property to true.

See Section 1.4.1, "Payload Obfuscation," for more information.

b2b.rowLockingForCorrelation

To enable row level locking, set this property to true.

When Oracle B2B receives an EDI FA message and an AS2 MDN message (Acknowledgment message) simultaneously, a race condition can occur which causes the outbound EDI message to remain in the MSG_WAIT_FA state (although FA was successfully processed).

Use this row level locking parameter so that the original EDI message can be accessed sequentially when the correlated FA and Acknowledgment messages are processed concurrently. It avoids a racing condition when Oracle B2B updates the original message.

b2b.setDynamicNameSpace

To use EDI ecs and xsd files from Oracle B2B 10g version, set this property to true.

When using EDI ecs and xsd files in Oracle B2B 11g which were used in Oracle B2B 10g, the XEngine may generate dynamic namespace for the translated xml. For example,

xmlns="NS_31CA8D0F33324F95A0BF15D85539C27E20060518215520"

To turn off dynamic namespace generation for inbound EDI messages, set this property to false.

b2b.SyncAppDelivery

When using callouts, to enable delivery of messages to the back-end message queue, set this property to true. To disable the message delivery, set this property to false. By default, this property is disabled (set to false). This property is case-sensitive.

b2b.setisLargePayloadPropertyForSmallMsg

By default Oracle B2B sets the LARGE_PAYLOAD header property to true only if the payload is large (as per configured size). In case the payload is small, the LARGE_PAYLOAD header property is not set. if you want to set the LARGE_PAYLOAD property for small payloads also, set the b2b.setisLargePayloadPropertyForSmallMsg property to true.

By default, the value of the property is false.

b2b.listening_channels.continue_reconnect

By default, if the resource server, such as SFTP or JMS is down, Oracle B2B tries to reconnect only a specified number of times. However, if Oracle B2B cannot reconnect within the specified retries, it simply stops the particular listening channel.

When this property is set to true, Oracle B2B makes continuous attempts to reconnect to resource server in downtime.

In case of SFTP, the resource server is an SFTP server, and in case of JMS, the resource server is an JMS server.

By default, the value of the property is false.

b2b.reuseHttpConnections

Set the value of this property to true to reuse HTTP connections. By default, the value of this property is false. When the default value is used, HTTP connections are opened and closed repeatedly when accessing the same URL consecutively.

However, this property depends on other property values to take effect. If you call HTTPClient.HTTPConnection.setCurrentProxy when reusing an HTTP connection, side effect changes (such as reusing HTTP connections, closing the socket) are invoked only if the proxy settings have actually changed for the obtained HTTP connection instance. If invoking setCurrentProxy applies values currently set in the HTTP connection instance, the setCurrentProxy call is ignored.

So you need to compare HTTPClient.HTTPConnection.getProxyHost and HTTPConnection.getProxyPort values against proposed new values, and call HTTPConnection.setCurrentProxy only if the values are different.

b2b.deliverPingPongToBackend

In ebMS, you can check the server state by using a set of messages called 'Ping and Pong'. Set the b2b.deliverPingPongToBackend property to true for enabling Oracle B2B to pass these messages to the backend applications on receipt of such messages.

By default, the value of the property is false, which forces Oracle B2B to consume these Ping and Pong messages on receipt.

b2b.trackInboundCtlNum

By default, the value of this property is true, which controls the Oracle B2B behavior of saving the control numbers of inbound EDI messages in the database (the control numbers of inbound EDI message from a given partner will be inserted, or updated if the partner entry is already present). However, if set to false, then Oracle B2B does not attempt to insert the control numbers for inbound messages.

b2b.SingleTransactionAtInbound 

In the case of an inbound MLLP HA, if the server crashes after wire message has been committed to the database but before the event gets enqueued to Event Queue, it is perpetually stuck in the Sequence Manager table and is not processed. This blocks the inbound message flow in the sequencing case.

Set the b2b.SingleTransactionAtInbound to true only in the case of MLLP HA to enable the JMS and database commit to take place in a single transaction. It is suitable only for the MLLP case where only one inbound message is received at a time.

The default value of the property is false.

b2b.retainmsgid

When this value is set to true, @msgid is retained for the specific message ID, protocol message ID and collaboration ID during an Application Message resubmit.

If this value is set to false, @msgid is retained for the message ID, but a new ID is generated for the protocol message ID and the collaboration ID.

The default value for this property is false.

b2b.TPACache

Use this property to enable or disable Trading Partner Agreement (TPA) layer processing cache. By default, this property is not enabled.

Limitation of the property: The TPA cache relies on agreement deployments to refresh the change in values. So, when this parameter is enabled, hot uptake of channel parameter changes does not work. It would require the agreements to be deployed. You need to restart the server for applying any changes to this parameter.

The valid value for this parameter is local.

b2b.optimizeStorage

Use this property to determine whether the storage of payloads would be optimized (shared) across Business, Wire, and Application instances, if applicable. Setting this property accordingly reduces the I/O load at the database layer due to persistence of payloads. You need to restart the server for applying any changes to this parameter.

The valid values for the parameter are true and false (default).

b2b.DispatcherCache

Use this property to enable or disable the Dispatcher processing cache. By default, this property is not enabled. You need to restart the server for applying any changes to this parameter.

The valid value for this parameter is local.

b2b.enableDeliveryHelper

Use this property to spawn a separate thread for dispatching messages to the back-end application. Enable this property to improve the performance of the inbound dispatcher. You need to restart the server for applying any changes to this parameter.

The valid values for this property are true or false.

b2b.sequencingFetchSize

Use this property to define the batch size for sequencing fetches. The Inbound or outbound Dispatcher attempt to pick <batchsize> number of messages for a given sequence target in a single fetch. The default value for this property is 20. You need to restart the server for applying any changes to this parameter.

The valid value for this parameter is Integer.

b2b.fromHeaderName

If the HTTP From message header contains a value that can be mapped to an IP Address, then Oracle B2B converts the value to an IP Address. If the remote Trading Partner identifiers, specifically, Generic Identifier, does not contain that IP Address, then Oracle B2B fails to identify that the message came from which Trading Partner.

Use this property to specify a value for the header name so that when a message arrives, Oracle B2B does an exact match (no IP Address conversion) of the value extracted from the From message header with the Generic Identifier specified for the remote Trading Partner.

The value of this property is case-sensitive. So, the header must match exactly with the value that is provided in the message.

The value for this property takes the following format:

<header name>#<header name2>...

The value can contain multiple header names separated by #, such as sender_id#receiver_id.

b2b.auditFileLocation
b2b.maxNumAuditFile

Use b2b.auditFileLocation to retrieve the EM URL for Composite Flow Trace . The property takes a string value.

Example:

b2b.auditFileLocation=/tmp/audit.log

Use b2b.maxNumAuditFile to specify the maximum number of audit logs. The default value for this property is 10.

Format: audit-<managed server name>.log.<n>o Where n=0,1,2,3

Example:

b2b.maxNumAuditFile= 10

The audit file is stored in the CSV format.

b2b.TreatRNIFasRNDocument

Use this property to identify a RosettaNet document. If you set this property to true and the document is received through RNExchangePlugin, then the document is identified successfully.

If you set this property to false, then the document is identified based on the XPath expression and its value (just like a custom document.)

b2b.mdnAliasesAndAlgorithm 

Use this property to handle signing of negative MDn for AS2 messages. The property takes its value in the following format:

B2BHost=<default alias to sign>:<default algorithm>;<TP1>=<alias1>:<alg1>;...<TPn>=<aliasn>:<algn>

Example:

B2BHost=b2bs0:md5;ACME=stg_2010:md5;GLOBALCHIPS=stage2014:sha1
b2b.fromTPXPath

Use this property to include XPath from where the Trading Partner name has to be extracted from the payload.

When a message comes, Oracle B2B uses the XPath specified in the EnterPrise Management console to extract the Trading Partner name from the payload, and then Oracle B2B compares that value to the value specified as a Generic Identifier to determine which Trading Partner has sent the message.

Note: Do not include /text() at the end of the XPath, otherwise Oracle B2B will not find the path.

b2b.correlateResponse

Use this property to toggle correlation in Oracle B2B.

The default value for this property is true.

If you set this property to false, Oracle B2B does not to correlate the outbound enqueued message with an existing message having the ID that is specified in the replyToMsgID field.

b2b.protMsgIdAsBmId

Set this property to true enable Oracle B2B to send the protocol MsgID to the backend application.

The default value for this property is false.

b2b.flowTraceEMURL

When Oracle B2B is hosted in one domain and the Oracle SOA composite (Oracle B2B adapter with the JMS option) is deployed in a different domain (Oracle Enterprise Manager Fusion Middleware Control in a different domain), Oracle B2B needs a mechanism to provide the link to the domain where the composite is deployed.

Use this property to provide the domain URL details of the Oracle SOA composite for tracking the instance message flow based on the ECID.

The format for setting the value of this property is:

http://<host>:<port>#<domain_name>#<domain_type>

You can also specify this URL details at the Delivery Channel level by using the Oracle B2B console.

This URL is available as a Flow Trace link for individual messages in the Oracle B2B Application Message reports.

While creating the Flow Trace link, Oracle B2B first checks if the value is provided at the channel level. If the value is present, it is used to construct the URL link. If the value is not present, Oracle B2B checks whether b2b.flowTraceEMURL is set in Oracle Enterprise Manager Fusion Middleware Control. If it is set, then the property value is used to construct the URL link. If both values are not set, by default, Oracle B2B assumes that the composite is available in the local domain and constructs the URL link accordingly.

See "Configuring Oracle B2B Logging Mode" in Oracle Fusion Middleware Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite.

b2b.b2bReportsURL

Set this property (along with b2b.flowTraceEMURL) on the domain where Oracle Enterprise Manager Fusion Middleware Control is hosted to construct the Flow Trace URL link in the reports of the Oracle B2B console .

The format for setting the value of this property is:

http://<host>:<port>

In case of Oracle B2B composite with JMS option, you need to provide Oracle B2B console URL from the Oracle Enterprise Manager Fusion Middleware Control side even if the Oracle B2B is hosted in the same domain where the composite is deployed.

Note: Currently, Oracle SOA Suite supports tracking of multiple SOA domains and one Oracle B2B instance. This is because this property is set at the global level.

b2b.rowLockingForCorrelation

Set this property to true to change the message state of an MLLP 2.0 outbound message from MSG_WAIT_TRANSMIT to MSG_WAIT_ACK. However, enabling this property has a negative impact on performance, because locking rows results in performance loss.

If this property is not enabled, then the message state does not display any change on transmitting the message. However, the message state changes on receiving the commit ack directly.

b2b.TPAbasedebMSIdValidateAndOverride

This property enables:

  • Trading partner Identifier sent from Middleware or Trading partner is validated against the configured Identifiers in the Agreement for both inbound and outbound flow.

  • Override the Identifiers configured in the Agreement using the Identifier sent from back-end application or from trading partner.

The default value is false.

If b2b.TPAbasedebMSIdValidateAndOverride= true:

  • Agreement is configured with Identifier ID1, ID2 and inbound message has Identifier ID2, then ID2 would be sent to the back-end application.

    Note: This applies to outbound messages.

  • Agreement is configured with Identifier ID1, ID2 and inbound message has Identifier ID3, even though the trading partner is configured with Identifier ID3, there is a failure in Agreement Identification.

  • For any outbound message without a specific Identifier type, Name identifier is used in ebMS message header.

If b2b.TPAbasedebMSIdValidateAndOverride= false:

The Identification is done against the configured Identifier in the profile, and the configured Identifier in the Agreement is used in ebMS headers.

b2b.resubmitOutboundAck

Set this property to true to enable resubmission of OUTBOUND ACK.

The default value is false.

Coherence system properties

coherence.b2bDispatcherCache.size

coherence.b2bDispatcherCache.expiry

coherence.b2bTPACache.size

coherence.b2bTPACache.expiry

These system properties help you to tune the cache size and expiry durations.

The following are the default values of the system properties:

coherence.b2bDispatcherCache.size - 20000

coherence.b2bDispatcherCache.expiry - 3 minutes

coherence.b2bTPACache.size - 20000

coherence.b2bTPACache.expiry - 30 minutes


D.2 Using the configmbeanutil Utility

You can also use the configmbeanutil utility to set properties.

To use the configmbeanutil utility:

  1. Set the MW_HOME environment variable to point to the Fusion Middleware installation directory. For example,

    setenv MW_HOME /scratch/$user/fmwhome
    

    Note:

    To access the Fusion Middleware directory, you must provide an mbean property file (mbeanutil.properties) that contains host, port, user, and password information. For example,

    host=myfmw.com
    port=7001
    user=weblogic
    password=mypwd 
    
  2. Set the JAVA_HOME environment variable. For example,

    setenv JAVA_HOME ${MW_HOME}/jdk160_14_R27.6.4-18
    
  3. Add the Java bin directory to the PATH environment variable. For example,

    setenv PATH ${JAVA_HOME}/bin:${PATH}
    

Example D-1, Example D-2, Example D-3, and Example D-4 show uses for this utility.

Example D-1 To Print All Properties to the Console

java -cp $MW_HOME/AS11gR1SOA/soa/modules/oracle.soa.b2b_11.1.1/b2b.jar:$MW_HOME/
wlserver_10.3/server/lib/wljmxclient.jar:$MW_HOME/modules/
glassfish.jaxb_1.2.0.0_2-1-7.jar oracle.tip.b2b.utility.ConfigMBeanUtility

Example D-2 To Add a Property

java -cp $MW_HOME/AS11gR1SOA/soa/modules/oracle.soa.b2b_11.1.1/b2b.jar:$MW_HOME/
wlserver_10.3/server/lib/wljmxclient.jar:$MW_HOME/modules/
glassfish.jaxb_1.2.0.0_2-1-7.jar oracle.tip.b2b.utility.ConfigMBeanUtility add b2b.test cool ok

Example D-3 To Update a Property

java -cp $MW_HOME/AS11gR1SOA/soa/modules/oracle.soa.b2b_11.1.1/b2b.jar:$MW_HOME/
wlserver_10.3/server/lib/wljmxclient.jar:$MW_HOME/modules/
glassfish.jaxb_1.2.0.0_2-1-7.jar oracle.tip.b2b.utility.ConfigMBeanUtility 
update b2b.test thru

Example D-4 To Remove a Property

java -cp $MW_HOME/AS11gR1SOA/soa/modules/oracle.soa.b2b_11.1.1/b2b.jar:$MW_HOME/
wlserver_10.3/server/lib/wljmxclient.jar:$MW_HOME/modules/
glassfish.jaxb_1.2.0.0_2-1-7.jar oracle.tip.b2b.utility.ConfigMBeanUtility 
remove b2b.test