configmbeanutil
utility.The appendix includes the following sections:
The section lists the properties that can be set in Fusion Middleware control.
The properties in Table F-1 can be set in Oracle Enterprise Manager Fusion Middleware Control. See Configuring Oracle B2B Server Properties for how to set the properties.
Note:
Restarting the SOA Server is required for changes to B2B properties.
Table F-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 |
b2b.checkDuplicate |
To check for duplicate messages, set this property to If this property is set to 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 All document protocols can use this feature. Note that this checking is based on business message ID only. An example on how to reproduce this is using the file name format in this link on page 6. http://www.oracle.com/technetwork/middleware/b2b-integrations/learnmore/tnb2b11g002-326857.pdf Inbound to Oracle B2B (Request): You are sending a messages Format:
Filename example: SalesInc_850_4010_1_1234.dat The business message ID is 1234. The first file consumed is fine. If the second file with the same name is used, B2B will mark the message state with |
b2b.rejectDuplicateMessage |
When this property is set to Also, in Reports page, the following error is reported:
The default value of this property is |
b2b.useJMSDataSourceCache |
Set this property to determine whether JMS objects or SOA datasource information is cached. The value of the property is either |
b2b.batchMonitorSleepInterval |
Defaults to 1 minute. After this interval B2B performs the check for the count and size of batch. This relates to when there are a large number of messages that you want to batch together. You can control the Sleep Interval, which is specified in minutes. The change of the interval occurs on expiry of the current running interval. Note that although adding or updating the interval using the property b2b.batchMonitorSleepInterval in Fusion Middleware Control has immediate effect, deleting the same will take effect only after restart. Set this back to 1 min in Fusion Middleware Control if you want to have the batch interval run with the default of 1 minute. |
b2b.batchMonitorStragglerBatchName |
Retrieves the pending messages for this particular batch if the time for pending message exceeds the time specified in the value in b2b.batchMonitorStragglerTimeLag. This value can be defined as comma separated batch_1,batch_2,batch_3,...<time_for_batch_1>,<time_for_batch_2>,<time_for_batch_3>... (which is defined in minute unit.) If the b2b.batchMonitorStragglerBatchName is defined with mix of specific batch name and "#ALL_BATCHES#", then the specified batch will use the time defined for the batch and other batches not defined will use time specified for "#ALL_BATCHES#". For example, if b2b.batchMonitorStragglerBatchName=b1,b2,b3 and b2b.batchMonitorStragglerTimeLag= 5,10,15, this indicates if the count is not reached for batch name b1 and the first pending message created (time lag) has exceeded 5 minutes, then the outbound batch will occur. Note that the important word is "first" If the count, file size and time lag all satisfy the criteria set in B2B Batching criteria when the monitoring thread wakes up, B2B will re-compute as if the messages are flowing in one by one. This way, B2B is able to ensure that the generated batch file does not exceed any of the criteria. For example, when the monitoring thread wakes, B2B found there are 11000 messages, sum of xml file size is 11 MB, the time lag has exceeded the b2b.batchMonitorStragglerTimeLag, and the Batching criteria for count is set to 10000 and the xml file size is 10 MB; B2B will generate an outbound batch of NNN number messages that would not exceed 10000 messages or 10 MB xml size. Another example: if file size and time lag both satisfy the criteria set in B2B Batching criteria, then an outbound batch will be generated base on the file size. In this case, if the file size setting is 10 MB and there are 15 files in the pending message table and each file is 0.99 MB. B2B will batch out the first 11 files since it takes 11 files to excess the 10 MB threshold (xml file size). If there are 25 files of 0.99 MB each, then two batches will be created of 11 files each and the remaining batch will consist of 3 files. The batch out native file size will vary. |
|
This property works in tandem with the property Refer to the details of |
b2b.useUnwindLoop |
Set this property to optimize status updates in the case of outbound batching for a large number of messages. If the channels used in the agreement have Ack Mode set, this property works in conjunction with Ack Mode set to None. If channels do not have Ack Mode set, by default the Ack Mode is set to None. The default value for Note: This property affects performance improvement for outbound batching for a large number of messages for the X12 functional outbound Ack (997/999) only. The performance of other protocols is not affected. |
b2b.deploy.validation |
To turn off validation during deployment, set this property to This is useful when deploying a large number of agreements where you are certain that the data is valid. |
b2b.useSequenceControlNum |
Set this property to determine whether the EDI control number will be generated by using Oracle sequence mechanism. If undefined or set to <Control><Protocol>_<Remote_TP>_<Host_TP> where
and
The sequence name format is as follows:
Note: This property works for the generation of the control number of EDI documents X12 and EDIFACT. Do not set this for HL7. Since the sequence name allows 30 characters only, the If the trading partner is deleted, all sequences related to the deleted trading partner are also removed from Oracle sequence table. |
b2b.ebMS.ProtMsgId.prependHost |
When this property is set to For example: When Protocol Message Id: Protocol Collaboration Id: When Protocol Message Id: Protocol Collaboration Id: wherein |
b2b.mdsCache.minutesToLive |
Set this property to |
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 ( |
b2b.edi.enablePreprocess |
Set this property to The default value is Changes to this property require a server restart for the new value to take effect. |
oracle.tip.b2b.edi.binaryDocType |
For outbound message processing, this property is used by Oracle B2B to handle binary data present in BIN segment for EDI payloads. For inbound message processing, This property needs to be used along with Oracle B2B Server property Setting this property ensures that Oracle B2B processes BIN segment data correctly by treating its content as binary. Otherwise the data would get corrupted. You can specify a comma-separated list of document types so that this behavior applies to multiple document types: |
oracle.tip.b2b.addCorrelatedFAInfoInExceptionXML |
When set to |
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 |
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 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 set original inbound Control message to correct status. If Oracle B2B cannot find the CONTROL status, by default, it sets the status of original message to If you want to set the original message to correct status, then you need to set the following property to |
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 Set this property to 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. |
|
Use these properties to control inbound and outbound FA validation. To turn off the outbound FA validation, set the To turn off the inbound FA validation, set the At the agreement level:
This property value can be overridden at the Agreement level in the Oracle B2B console. |
b2b.rejectUnknownFA |
Set this property to |
b2b.transportCache |
Set this property to |
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 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 |
b2b.FailedMessagesDirectory |
To change the location of the failed application message that is written to the file system, when |
b2b.HAInstance |
Set this property to The default value of this property is 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 If set to If set to The default value for this property is |
b2b.ignoreTPWithAsterisk |
In cases where the B2B UI is configured with a generic identifier as a client IP address in the partner profile and the partner has provided a range of IP addresses in the form of a mask (e.g. 120.12.23.*) from which they can send a document, then B2B cannot recognize the sender and fails with an Agreement Not Found Error. Set this boolean property to The default value for this property is |
b2b.fabricRetryCount |
This specifies how many times retry of a failed message to fabric is attempted. For fabric, retry count is a global property and for non-fabric it is a channel retry count. |
b2b.fabricRetryInterval |
This specifies the number of seconds between attempts to retry delivery of a message to fabric. |
b2b.TPBasedSeqTarget |
To enable a channel name or a trading partner name as a sequence target, set this property to 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 ( To enable sequencing in case of:
|
b2b.showEncryptedData |
For an encrypted RosettaNet message being exchanged, you need to set this property to |
|
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 Users can change the interval and log level using these properties. Possible values for For the feature to work:
Sample Output:
|
b2b.addAllDocParams |
Set this property to |
b2b.useDefaultQuery |
Set this property to The default value is |
b2b.refreshCache |
Set this property to The default value is |
b2b.commitTxnOnMsgDelivery |
Set this property to |
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 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 back end 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.inboundThreadCount b2b.inboundSleepTime b2b.outboundThreadCount b2b.outboundSleepTime b2b.defaultCount b2b.defaultSleepTime |
To set the number of threads and thread sleep time to improve message processing, set these properties. The recommended values for 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 The |
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 You can specify the location for failed messages by setting |
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 |
|
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 For outbound messages, When using the |
b2b.payloadObfuscation |
To turn on payload obfuscation, set this property to true. See Payload Obfuscation, for more information. |
b2b.rowLockingForCorrelation |
To enable row level locking, set this property to 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 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 |
b2b.SyncAppDelivery |
When using callouts, to enable delivery of messages to the back-end message queue, set this property to |
b2b.setisLargePayloadPropertyForSmallMsg |
Oracle B2B sets the By default, the value of the property is |
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 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 |
b2b.reuseHttpConnections |
Set the value of this property to However, this property depends on other property values to take effect. If you call So you need to compare |
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 By default, the value of the property is |
b2b.trackInboundCtlNum |
By default, the value of this property is |
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 The default value of the property is |
|
This property affects processing of EDI/X12/HL7 document types. It controls the number of threads which can invoke XEngine processing functions in parallel. The default value of the parameter is 6. On Solaris platform environments this property should be set to a value of the following: inboundThreadCount + outboundThreadCount. On linux environments the default (6) values. This defaults are tuned to perform optimally on linux environments. |
b2b.retainmsgid |
When this value is set to If this value is set to The default value for this property is |
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 |
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 |
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 |
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 |
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 The valid value for this parameter is |
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 |
b2b.auditFileLocation b2b.maxNumAuditFile |
Use Example: b2b.auditFileLocation=/tmp/audit.log
Use b2b.maxNumAuditFile to specify the maximum number of audit logs. The default value for this property is Format: 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 If you set this property to |
b2b.mdnAliasesAndAlgorithm |
If an inbound AS2 message has requested the sign MDN, the outbound MDN needs to be signed. However, B2B does not have information about the private key that is needed to sign the MDN nor does it have the algorithm used. This is solved by using 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
This property only affects the AS2 Exchange protocol. The managed server does not need to be re-started for the property to take effect. |
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 |
b2b.correlateResponse |
Use this property to toggle correlation in Oracle B2B. The default value for this property is If you set this property to |
b2b.protMsgIdAsBmId |
Set this property to The default value for this property is |
|
Set this property to get the time range for SQL dumps. This property is used during the Diagnostic Framework implementation. The time is specified in minutes. |
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 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 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 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:
The default value is If
If 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 The default value is |
b2b.genNegFAForDupInterchangeControl |
By default, this is set to false, which means that a neg TA1 will be generated if B2B detects a duplicate control number. If it is set to true, a neg 997 will be generated with AK5 error code instead. |
b2b.defaultCustomDocTypeVersion |
When the payload comes in as inbound over AS2 delivery channel, B2B tries to identify the document protocol which is not possible because there is no identifier in the payload to look at. The payload can be any flat file or binary file payload. Set this to binary to define the protocol. |
b2b.defaultCustomDocType |
When the payload comes in as inbound over AS2 delivery channel, B2B tries to identify the document protocol which is not possible because there is no identifier in the payload to look at. The payload can be any flat file or binary file payload. Set this to generic to define the protocol. |
b2b.httpsTrustStore |
If this property is set to true, then B2B uses the default .jks file to send for the https delivery channel. |
Coherence system properties
|
These system properties help you to tune the cache size and expiry durations. The following are the default values of the system properties:
|
You can also use the configmbeanutil utility to set properties.
To use the configmbeanutil utility:
Example F-1 To Print All Properties to the Console
java -cp $MW_HOME/soa/soa/modules/oracle.soa.b2b_11.1.1/b2b.jar:$MW_HOME /wlserver/server/lib/wljmxclient.jar:$MW_HOME/oracle_common/modules/ glassfish.el_1.2.0.0_2-2.jar oracle.tip.b2b.utility.ConfigMBeanUtility
Example F-2 To Add a Property
java -cp $MW_HOME/soa/soa/modules/oracle.soa.b2b_11.1.1/b2b.jar:$MW_HOME /wlserver/server/lib/wljmxclient.jar:$MW_HOME/oracle_common/modules/ glassfish.el_1.2.0.0_2-2.jar oracle.tip.b2b.utility.ConfigMBeanUtility add b2b.test cool ok
Example F-3 To Update a Property
java -cp $MW_HOME/soa/soa/modules/oracle.soa.b2b_11.1.1/b2b.jar:$MW_HOME /wlserver/server/lib/wljmxclient.jar:$MW_HOME/oracle_common/modules/ glassfish.el_1.2.0.0_2-2.jar oracle.tip.b2b.utility.ConfigMBeanUtility update b2b.test thru
Example F-4 To Remove a Property
java -cp $MW_HOME/soa/soa/modules/oracle.soa.b2b_11.1.1/b2b.jar:$MW_HOME /wlserver/server/lib/wljmxclient.jar:$MW_HOME/oracle_common/modules/ glassfish.el_1.2.0.0_2-2.jar oracle.tip.b2b.utility.ConfigMBeanUtility remove b2b.test
Example F-1, Example F-2, Example F-3, and Example F-4 show uses for this utility.