Terry's blog

Focus on bigdata and cloud.

博客园 首页 新随笔 联系 订阅 管理

The following are known limitations for Microsoft BizTalk Adapter 3.0 for Oracle Database:

  • The Oracle Database adapter is not compatible with the previous release of the adapters. This release of the adapters does not support sending and receiving messages having schemas generated using the earlier version of the adapters.
    Note
    You can modify the BizTalk projects for previous version of the Oracle database adapter to use the new WCF-based Oracle Database adapter. For more information, see Migrating BizTalk Projects Created Using the Previous Version of the Oracle Adapter.

     

     

  • The Oracle Database adapter does not support stored procedures in polling. To address this issue, the Oracle Database adapter enables clients to specify a polling query and a post poll query. The polling query only supports SELECT statements while the post poll query may contain a PL/SQL block to perform post poll operations. Also, the polling and post poll statements are executed in a transaction whose isolation is controlled by using the TransactionIsolationLevel binding property.
    For more information about polling see Support for Receiving Polling-based Data-changed Messages.
  • The Oracle Database adapter does not support performing transactions on the Oracle database using System.Transaction. The adapter supports transactions using OracleTransaction.
  • Because of an ODP.NET limitation, the Oracle Database adapter does not support the use of overloaded procedures using strongly-typed and weakly-typed REF CURSORS. Internally, the adapter treats both the strongly-typed and weakly-typed REF CURSORS as just REF CURSORS.
  • The SQLEXECUTE operation does not return values for OUT or IN OUT parameters to procedures, functions, or packages. For this reason, you must invoke procedures, functions, and packages by using the dedicated operations that the Oracle Database adapter exposes for these Oracle artifacts.
  • When retrieving data from the Oracle database using proxy programming, the Oracle Database adapter does not deserialize XML messages that have more than 65536 nodes. Make sure the response message has nodes less than or equal to 65536. You can work around this limitation by modifying the app.config file for your application. For instructions, see Troubleshooting Operational Issues.
  • The Oracle Database adapter accepts a character data for a NUMBER field without throwing an error. In the database, the character is stored as 0.
  • Using the Oracle Database adapter, adapter clients cannot pass a null value for field in a complex record. However, adapter clients can specify a null value for a field in a simple record.
  • Due to issues with timeout handling by the underlying ODP.NET client, the Oracle Database adapter does not support command timeout. The Oracle Database adapter supports connection timeout, though.
  • The Oracle Database adapter does not support the following data types:
    • PL/SQL TABLE
    • TABLE
    • VARRAY
    • OBJECT
    • PL/SQL BOOLEAN (no support in ODP.NET)
    • IN OUT BFILES
    Therefore, the Oracle Database adapter cannot retrieve metadata for operations that involve unsupported data types. For example, the Oracle Database adapter throws an exception when invoking a function that returns a TABLE.
    Also, the Oracle Database adapter uses the ODP.NET to access the database. Some Oracle data types are not supported by ODP.NET. The Oracle Database adapter cannot retrieve metadata for operations that involve unsupported data types such as Boolean, Currency, Guid, Object, SByte, UInt16, UInt32, and UInt64. For more information, see the ODP.NET documentation.
  • The Oracle Database adapter takes input strings and constructs SQL commands that are then executed by the adapter. However, the input string might contain other SQL commands that also get executed and might break the operation contract.
    Consider a scenario where the adapter provides an input REF CURSOR to a stored procedure. In such a scenario, the adapter client must provide a command that, when executed, obtains the REF CURSOR. The adapter then passes on the REF CURSOR to the stored procedure. However, if the command for obtaining the REF CURSOR performs some additional modifications to the database, the operation contract for executing the stored procedure is broken.
  • The Oracle Database adapter does not support specifying connection URI that has special characters for any of the parameter values. For each parameter value containing special characters, make sure you replace the special characters with the corresponding values as specified by the URI encoding standards.
  • When using the adapters with BizTalk Server, if the credentials on the WCF-custom send port are incorrect, the request messages are not processed. After you specify the correct credentials, the message is sent to the Oracle database and a response is received. However, the response message is not available to the out port. In such scenarios, you may need to restart the host instance.
  • For Oracle data types that take decimal values, ODP.NET does not throw an exception if the input value contains alphabetic characters. Because the Oracle Database adapter uses ODP.NET to interface with the Oracle database, the adapter too does not throw an exception when passing alphabetic characters. For example:
    • Passing a value “54r” for an insert operation does not throw an exception; the value “54” is inserted instead.
    • Passing a value “r54” for an insert operation does not throw an exception; the value “0” is inserted instead.
posted on 2008-03-26 09:40  王晓成  阅读(762)  评论(0编辑  收藏  举报