ebXML Module 7.1 SP1 | Understanding and Using webMethods EBXML Module | Installing and Using ebxml Module | Configuring webMethods ebXML Module | Configuring ebXML Module for Message Processing
 
Configuring ebXML Module for Message Processing
You can control many functions of the ebXML Module by specifying values for the properties in the configuration file, config.cnf. This file contains the properties for caching, message processing, payload size, message timestamps, and other settings.
*To edit the configuration properties
1. Open the file config.cnf, available at Integration Server_directory \packages\WmebXML\config.
2. Specify the values for the properties as defined below.
3. When you are finished, save the file.
4. Reload the WmebXML package for the changes to take effect.
5. The following table lists the definitions of the configuration properties in the ebXML Module config.cnf file.
Configuration Property
Definition
wm.ebxml.autoAckSend
Enables or disables the sending of automatic acknowledgments when messages are processed successfully.
*Set this property to false to disable the sending of automatic acknowledgments when messages are processed successfully. You can explicitly send acknowledgments using the wm.ip.ebxml.MSH:sendAck service.
*Set this property to true to enable ebXML Module to automatically send acknowledgments to the message sender if the messages were processed successfully. This is the default setting.
Automatic acknowledgments can also be controlled using the TPA parameter AutoAckSend. For more information, see Trading Partner Agreement Parameters Version 2. 0 and Trading Partner Agreement Parameters Version 2. 0.
wm.ebxml.bypassRoutingRule
Specifies whether you want to bypass using Trading Networks processing rules to enhance the performance of the ebXML Module.
*Set this property to true to bypass the Trading Networks processing rules. This is the default setting.
*Set this property to false to use the Trading Networks processing rules.
For information on bypassing the routing rule and enhancing the performance, see Bypassing the Use of Trading Networks Processing Rules.
wm.ebxml.caching
Specifies whether to enable or disable memory caching.
*Set this property to true to enable caching for better performance. This setting is recommended only for production servers.
*Set this property to false to disable caching. This is the default setting.
wm.ebxml.cachingScheme
Specifies the caching mechanism that is used.
Note:
These values are considered only if the wm.ebxml.caching property is set to true.
*Set this property to Local cache, which is an in-process extension of java.util.Map. Its contents are not visible outside of the JVM in which it runs. This is the default setting.
*Set this property to Distributed cache, for all the cache members to have access to the entire cache, but no single member actually retains a complete copy of the cache contents.
*Set this property to Replicated cache, where each and every application connected to the cache (cache members) retains its own copy of the entire contents of the cache.
Any change in the value of this property requires you to restart the Integration Server for the changes to take effect.
For more details on cache schemes, see the webMethods Integration Server Administrator’s Guide for your release.
wm.ebxml.defaultDoctypeOnly
Specifies whether to bypass using Trading Networks document types to recognize an ebXML message.
*Set this property to true to bypass using TN document types to recognize ebXML messages.
Note:
You cannot use this setting if you have customized ebXML document types.
*Set this property to false to use TN document types to recognize ebXML messages. This is the default setting.
wm.ebxml.defaultDocType.conversationID
Specifies how to map the conversation ID of the default document type.
*Set this property to true to map the ebXML conversation ID to the ebXML default document type's conversationID.
*Set this property to false to leave the ebXML default document type's conversation ID empty. This is the default setting.
wm.ebxml.docType.groupID
Specifies how to set the group ID for a message that matches an ebXML document type.
*Set this property to conversationID if you want the group ID to match the conversation ID of the message. This is the default setting.
*Set this property to cpaID if you want the group ID to match the CPA ID of the ebXML message.
wm.ebxml.getAgreementIDSvc
Specifies the qualified name of the service that returns the Agreement ID for the TPA.
ebXML Module uses the From, To, and CPAId information specified as inputs to the wm.ip.ebxml.MSH services or available in the MessageHeader section of an ebXML message to retrieve a TPA from Trading Networks. If the CPA ID does not directly translate to the Agreement ID of the TPA, a custom service must be implemented to provide the Agreement ID for the TPA to ebXML Module.
The input and output for the service is defined by the specification, wm.ip.ebxml.rec:getAgreementID, while the implementation details are left to the implementer of the solution.
*If the getAgreementIDSvc property is not defined, the behavior is unchanged (that is, the CPA ID is interpreted as the agreement ID of the TPA).
*If this property is defined, but the specified service does not exist or the service fails during invocation, ebXML Module processing fails. An error is logged in the server logs to report the reason the service could not be invoked.
*If this property is defined with a valid service that executes without failing, but does not retrieve an agreement ID (null or empty string) for the TPA, then ebXML Module logs an error in the server logs and the processing fails.
The sendUsingTPA and similar services return the same error as above in the errorMsg structure.
*If a non-null and non-empty agreement ID is returned, then processing and logging occurs as normal from there on.
wm.ebxml.message.useMultipartAlways
Specifies the format in which ebXML Module should generate messages when the messages do not contain payload(s) or attachments (for example, Ping or Status Request messages).
*Set this property to true to generate messages without payload(s) as MIME multipart messages. Use this setting if you are using a multi-hop scenario where the sender MSH, intermediate MSH, or receiver MSH are running ebXML Module 6.0.1.
*Set this property to false to generate messages without payload(s) as SOAP-formatted XML documents. This is the default setting.
wm.ebxml.oldContentIDFormat
Indicates how ebXML Module formats the content ID and reference URI.
*Set this property to true to have ebXML Module use the format for the content ID without angle brackets and reference.
Note:
Setting this property to true implements a content ID format and reference URI that does not comply with the ebXML Message Service Version 2.0 Specification.
*Set this property to false to have ebXML Module follow the format as per the ebXML Message Service Version 2.0 Specification. This is the default setting.
wm.ebxml.payloadProcessSvc
Specifies the qualified name of the service to process all payloads. You must provide an implementation of the service that has the signature given by the IS document type specification wm.ip.ebxml.rec:payloadProcess for ebMS 1.0, and wm.ip.ebxml.rec:payloadProcess_v2 for ebMS 2.0.
By default, the ebXML Module will invoke a webMethods service referenced by the service element in the ebXML envelope if the service type="webMethods".
wm.ebxml.StoreUnprocessed
Specifies whether you want to save the unprocessed ebXML message to the Trading Networks database before the decryption or decompression process.
*Set this property to true to have the ebXML Module save the unprocessed ebXML message before decrypting or decompressing it. When the ebXML Module saves the ebXML message, it sets the User Status to Persisted. You can view the user status on My webMethods. The ebXML Module also saves the message after decrypting/decompressing it.
*Set this property to false if you do not want to save a copy of the unprocessed ebXML message. The ebXML Module will save the ebXML messages after decrypting/decompressing it.
wm.ebxml.task.keepAliveTime
Specifies the maximum time (in seconds) that the threads which are in excess in the thread pool remain idle before they are terminated. This occurs when the number of threads in the thread pool is greater than the wm.ebxml.task.poolSize value. This parameter reduces the consumption of threads when the thread pool is not actively used.
The default value is 3600.
wm.ebxml.task.poolSize
Specifies the number of threads allowed in the thread pool for processing. If the number of threads in the pool is lesser than the ebxml.task.poolSize value, then a new thread is added to the pool.
The default value is 10. The pool size should not be less than zero.
wm.ebxml.task.poolSizeMax
Specifies the maximum number of threads allowed in the thread pool for processing. The wm.ebxml.task.poolSizeMax value should be greater than the wm.ebxml.task.poolSize value.
The default value is 20.
wm.ebxml.task.queueSize
Specifies the number of outbound ebXML messages that are allowed in queue for processing. This parameter is dependent on the ebxml.task.poolSize value as follows:
*If the number of threads in the thread pool is lesser than the ebxml.task.poolSize value, then the Outbound Thread Pool adds a new thread to handle the request even if the other threads are idle rather than request for queuing.
*If the number of threads in the thread pool is greater than the ebxml.task.poolSize value, then the Outbound Thread Pool adds the messages to the queue rather than adding a new thread for processing.
*If the queue is full, then a new thread is added to the queue only if the number of threads in the thread pool is lesser than the ebxml.task.poolSizeMax value, otherwise, the request is rejected.
The default value is 100. The queue size should not be less than zero.
wm.ebxml.timestamp
Specifies the timestamp format in the ebXML message.
*Set this property to default1 to set the timestamp format to yyyy-MM-dd'T'HH:mm:ss-HH:SSS'Z' (for example, 2008-05-20T13:20:10.663Z). This is the default setting.
*Set this property to default2 to set the timestamp format to yyyy-MM-dd'T'HH:mm:ss-HH:mm (for example, 2008-05-220T13:20:10).
*Set this property to default3 to set the timestamp format to yyyy-MM-dd'T'HH:mm:ss-HH:mm, where yyyy-MM-dd'T'HH:mm:ss is the local time, and -HH:mm is the time zone offset. (For example, "2008-05-20T13:20:10-05:00" represents "20 May 2008 13:20:10 GMT-05:00".)
*Set this property to any other valid Java timestamp format.
Note:
For more information about the timestamp formats above, see the XML Schema Part 2: Datatypes document available at http://www.w3.org/TR/xmlschema-2
wm.ebxml.timezone
Specifies the time zone in the ebXML message.
*Set this property to GMT to use the GMT time zone. This is the default setting.
Note:
When the wm.ebxml.timestamp property is set to either default1 or default2, the wm.ebxml.timezone property, by default, takes the value GMT.
*Set this property to local to use the time zone set on your local machine.
*Set this property to any other valid Java time zone format.
wm.ebxml.TNConversationID
Use to configure the Trading Networks conversation ID that the wm.ip.ebxml.TN:getTNConversationId service generates. This property can have the following values:
*Set this property to ebxml for the value of the ebxml conversation ID element, eb:ConversationID, to be used as the Trading Networks conversation ID. This is the default setting.
*Set this property to ebxml-receiverID for the value of the receiver profile's internal ID appended to the ebXML conversation ID as, eb:Conversation-receiverId to be used as the Trading Networks conversation ID.
*Set this property to ebxml-senderID-receiverID for the value of the sender and receiver profile's internal ID appended to the ebXML conversation ID as, eb:ConversationId-senderId-receiverId to be used as the Trading Networks conversation ID.
wm.ebxml.resetContentHandlers
Use to reset the content handler to the one that Trading Networks expects for MIME message handling. This property can have the following values:
*Set this property to true to reset the content handler to "com.wm.net.mime.DataContentHandler_WM" for all MIME types handled by Trading Networks. Use this setting if you are using ebXML Module in conjunction with other eStandards modules that use Trading Networks MIME APIs (for example, webMethods Chem eStandards Module or webMethods RosettaNet Module).
*Set this property to false to preserve the content handlers that have been registered by SAAJ for specific MIME types. This is the default.