This chapter describes issues associated with Oracle Mediator. It includes the following topics:
This section describes general issue and workarounds. It includes the following topics:
If you want to use multi-language support feature for some functions in Oracle Mediator, then, to avoid any unexpected results, you must ensure that these characters are supported by Database character set. For example, for Unit Test function, if the initial message payload in Unit Test includes characters that are not supported by Database character set, then you will see that the characters fail to display correctly in Unit Test part of the Oracle Enterprise Manager Fusion Middleware Control Console. This issue does not occur for a Database that supports Unicode characters.
In Oracle Mediator, when you call a SOAP Web Service with attachments you will not be able to perform a payload manipulation using the Assign or Transform functions. It fails with an exception because SOAP with attachments is not supported in Oracle Mediator if you use the Assign or Transform functions.
When calling a SOAP Web Service with attachments, use Oracle Service Bus instead of Oracle Mediator.
If Oracle Mediator calls a BPEL Process with callback processing and timeout, it is a best practice to explicitly handle the Callback exceptions returned from Oracle Mediator, in BPEL process. This is to ensure that the global transaction associated with Callback processing gets committed and is not rolled back. This way, the timeout handler configured in Oracle Mediator will not kick in even if the Callback handling in Oracle Mediator fails.
Mediator applications may run out of memory sometimes. For example, if the rate of incoming messages to Mediator is faster than the rate of callback messages, then memory accumulation occurs in the Mediator cache.
To fix this issue, change the cache size through the Oracle Enterprise Manager Fusion Middleware Control Console by adding the following property in the
Parameters attribute of the Mediator configuration properties:
For example, if you set the value of the
mediator.runtime_cache.limit property to 100, then the size of the cache will be limited to 100. The cache size refers to the number of objects that can be stored in the cache. You can switch off caching completely by setting this property to zero.
Mediator advanced functions like
mhdr:getHeader require a runtime context to execute. So, if these functions are run using the Mapper Test functionality during design time, then the target XML file is not generated and the following error is thrown:
XML-22044: (Error) Extension function error: Error invoking 'getComponentName':' java.lang.IndexOutOfBoundsException: Index: 0, Size: 0'
These functions work fine in runtime environment.
The outbound property
$out.property.endpointURI is not listed as an available property in the Assign Value dialog for Mediator assign task, while specifying a routing rule.
If you want to assign value to this property, then you can type in the property as
endpointURI in the Property field of the To section in the Assign Dialog.
In the Enterprise Manager, the number of recoverable instances shown for the Mediator resequencer equals the number of retries made to that instance rather than the number of actual recoverable instances. This information is for tracking purposes only, and does not result in duplicate messages being sent out.
If multiple users open and edit the same document in the SOA Composer, the following "Unexpected Error" occurs when one of the users tries to save their changes:
Unable to create document in the metadata repository; a document with the same name or GUID already exists.
When you generate a WSDL file for a Mediator from a schema, you cannot update the Reply message from the Create WSDL window.
If you need to edit the Reply message, you can update the WSDL file directly after you create the file from the Create WSDL window.
This section describes configuration issue and workarounds. It includes the following topic:
In order to be a valid Mediator configuration, each Mediator component must include routing rules. If a component has no routing rules, Mediator does nothing at run-time and a null pointer exception occurs at mediator.dispatch.CaseExecutionPlan.getEffectiveExecutableCases.
There are no documentation errata for Oracle Mediator.