B Setting B2B Configuration Properties in Fusion Middleware Control

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 15, "Configuring B2B System Parameters"). B2B properties can also be set by using the configmbeanutil utility.

This appendix contains the following topics:

B.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.
  • To turn off validation during deployment, set this property to false:

    b2b.deploy.validation
    

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

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

    b2b.mdsCache cache_size
    

    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.

  • To set the number of threads and thread sleep time to improve message processing, set the following:

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

    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.

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

  • To set up File, FTP, or Email transports in an HA environment, specify a unique name for each instance by using

    b2b.HAInstanceName unique_instance_name
    

    If you use #ServerName# for the value, B2B retrieves the WebLogic Server name as the HAInstanceName.

  • To turn off the EDI envelope validation, you can set comma separated enveloper header for the property:

    b2b.edi.ignoreValidation
    

    For example:

    b2b.edi.ignoreValidation=InterchangeSenderID,InterchangeReceiverID 
    

    or ALL to turn off the complete envelope header validation.

  • To turn off the hl7 envelope validation, you can set comma separated enveloper header for the property:

    b2b.hl7.ignoreValidation
    

    For example:

    b2b.hl7.ignoreValidation = MessageReceivingFacility,MessageSendingApp
    

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

  • Use the following properties to control inbound and outbound FA validation:

    b2b.fa.outbound.validation
    b2b.fa.inbound.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.

  • To swap the interchange and group IDs in the generated FA from the sender to the receiver and vice versa, set this property to true:

    b2b.FAInternalProperties
    

    Caution:

    This property should not be set using Oracle Enterprise Manager Fusion Middleware Control Console. Use the Functional Ack internal properties configuration parameters on the Administration > Configuration tab. Settings on the Configuration tab override properties set using the Oracle Enterprise Manager Fusion Middleware Control Console.

    The test usage indicator parameter is also mapped; that is, an inbound message set as a test message generates an FA with the flag set to test message. Setting b2b.FAInternalProperties to true, by default, does not map ISA segment elements (1-4).

  • To specify how a functional acknowledgment is handled, set this property to true or false:

    b2b.FAHandledByB2B
    

    Caution:

    This property should not be set using Oracle Enterprise Manager Fusion Middleware Control Console. Use the Functional Ack Handled by B2B configuration parameter on the Administration > Configuration tab. Settings on the Configuration tab override properties set using the Oracle Enterprise Manager Fusion Middleware Control Console.

    When the b2b.FAHandledByB2B property is set to false, then for an inbound EDI message, B2B does not generate a functional acknowledgment (FA).

    If the FA is marked as expected in an agreement, then the message is placed into the MSG_WAIT_FA state and the back-end application is expected to generate the FA and push it to B2B as an outbound message back to the partner.

    The following limitations apply when generating the FA from the back-end application:

    • The FA is correlated with the original message based on the ReferToMsgID value set in the enqueue properties. The FA is correlated based on control numbers also.

    • If the FA indicates that there was an error in the received message, the status of the correlated message is not updated to indicate an error. The correlated message is updated to MSG_COMPLETE.

    These limitations are not present when the FA is generated by B2B (that is, when b2b.FAHandledByB2B is true).

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

    b2b.FACorrelatedByInterchangeId
    

    By default Oracle B2B does not correlate inbound and outbound FAs correctly if the 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.

  • To enable row level locking, set this parameter to true:

    b2b.rowLockingForCorrelation
    

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

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

    b2b.outboundOneErrorAllError
    

    For outbound messages, b2b.outboundOneErrorAllError can be set to true or false. The default is false. If the parameter 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 parameter, 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.

  • To turn on payload obfuscation, set this property to true:

    b2b.payloadObfuscation
    

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

  • To ignore interchange validation errors for EDI messages, use this property:

    b2b.edi.ignoreValidation
    

    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.

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

    b2b.edi.identifyToTP
    

    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.

  • To check for duplicate messages, use this property:

    b2b.checkDuplicate
    

    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.

  • To indicate whether reported errors are cumulative or not, use this property:

    b2b.errorsCumulativeReported
    

    Set this property to true (the default) to report errors in a cumulative fashion. If set to false, then 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.

  • To use EDI ecs and xsd files from Oracle B2B 10g version, use this property:

    b2b.setDynamicNameSpace 
    

    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.

B.2 Using the configmbeanutil Utility

You can also use the configmbeanutil utility to set properties.

To use the configmbeanutil utility:

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 
  1. Set the MW_HOME environment variable to point to the Fusion Middleware installation directory. For example,

    setenv MW_HOME /scratch/$user/fmwhome
    
  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 B-1, Example B-2, Example B-3, and Example B-4 show uses for this utility.

Example B-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 B-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 B-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 B-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