relnotes This page last changed on Jan 14, 2009. # Oracle Data Service Integrator 10gR3 Release Notes Oracle Data Services Integrator provides read and write access to information in relational databases, web services, Java functions, XML files, delimited files, and other types of disparate data.
| Prior to release 10gR3, Oracle Data Service Integrator was known as AquaLogic Data Services Platform (ALDSP).
Once developed, application developers — using access technologies such as the Oracle Data Services Integrator mediator API, JDBC, SQL, or Workshop controls — can invoke Oracle Data Services Integrator operations as a means of providing their applications with access to integrated, updateable data from their enterprise. Metadata, security, and cache management facilities are provided through the Oracle Data Services Integrator Console. ## Contents Contents Revision Policy What's New? Product Installation and Upgrade Configuration Information Product Limitations and Workarounds Supplemental Release Note Documentation ## Revision Policy Oracle Data Services Integrator Release Notes is subject to revision between releases. The most recent version can be found at:
| http://download.oracle.com/docs/cd/E13162_01/odsi/docs10gr3/relnotes.html
## What's New?
| http://download.oracle.com/docs/cd/E13162_01/odsi/docs10gr3/what's%20new.html
## Product Installation and Upgrade
| http://download.oracle.com/docs/cd/E13162_01/odsi/docs10gr3/install/index.html
## Configuration Information ### Supported Configurations For support information on vendor operating systems, JDK, and hardware support, refer to the following: Supported Configurations for Oracle Data Services Integrator ### Client Support For this release, client applications are supported on the following JDKs: BEA JRockit 1.4.2 and Sun 1.4.2 BEA JRockit 6.x and Sun 6.x ### Supported Interoperability Products This section describes the following interoperability products that are supported for use with Oracle Data Service Integrator 10gR3. #### Oracle Data Service Integrator 10gR3 Product and Version Support
Product | Version Supported | Configuration Required
--- | --- | ---
WebLogic Portal | 9.2 and 10.0 (WLP to Oracle Data Service Integrator only) | No
AquaLogic Service Bus | 2.6, 2.61, 3.0, 10gR3 | No
AquaLogic Enterprise Security | 3.0 | No
AquaLogic Enterprise Repository | 3.0.0.2 | No
WebLogic Workshop | 10gR3 | No
##### JDBC Driver Support for Reporting Tools The following section provides information on JDBC driver support for reporting applications used with the Oracle Data Service Integrator 10gR3 JDBC driver:
Application and Version | JDBC Native | OpenLink ODBC/JDBC Lite Bridge
Crystal Reports XI | Supported |
Business Objects XI, Release 2 |  | Supported
Hyperion BI 9+, Interactive Reporting |  | Supported
Microsoft Access 2000 |  | Supported
Microsoft Excel 2000 |  | Supported
| Support for third party reporting tools is deprecated in Oracle Data Service Integrator 10gR3.
##### Standards Support The following Web services standards supported for this release:
Standards | Version
SOAP | 1.1, 1.2
WSDL | 1.1
JAX-RPC | 1.1
SDO | 2.1
XML Schema | 1.0
XQuery | July 2004 Draft
## Product Limitations and Workarounds This section lists known limitations associated with the current BEA ALDSP release that users may encounter. Information regarding these limitations includes: A CR (change request) number for each issue. Applicable platform. Detailed description of the problem and workarounds, where applicable. Date, if the item is added or changed after the general availability release of the product. ##### Known Product Limitations and Possible Workarounds
Change Request Number | Release Found | Release Addressed | Field Descriptions
--- | --- | --- | ---
CR349580 | 10gR3 |  | WebLogic cross domain security cannot be used for RMI calls between EJBs. Cross domain security only applies for RMI calls between JMS, JTA, MDB, and WAN replication.
Platform |  |  | All.
- Description |  |  | When using Oracle Service Bus and Oracle Data Service Integrator via the DSP Transport, you cannot use a cross domain security configuration between the two domains. The following describes an example of this type of configuration: Both Oracle Service Bus and Oracle Data Service Integrator domains are available. The Oracle Service Bus domain has two proxy services (P1 and P2), with P1 configured for the HTTP transport and P2 configured to use WS-UNT authentication and the JMS transport. Requests from proxy P1 are routed to proxy P2. Proxy P2 routes the request to a business service configured to invoke a data service on Oracle Data Service Integrator over the DSP transport. Cross domain security is configured between the two domains (Oracle Service Bus and Oracle Data Service Integrator) When: A client invokes proxy P1 on the Oracle Service Bus domain with credentials for user weblogic to satisfy WS-UNT, and Proxy P1 routes the request to proxy P2 passing through the WS-UNT header, and Proxy P2 routes the request to the data service on Oracle Data Service Integrator over the DSP transport, the invocation fails with the following exception:
      java.lang.SecurityException: [Security:090398]Invalid Subject:
      principals=[weblogic, Administrators, IntegrationAdministrators, AdminChannelUsers]
Workaround |  |  | Use a Service Accounts configuration for the business service in Oracle Service Bus.
CR383754 | 10gR3 |  | Oracle Data Service Integrator 10gR3 does not support API backward compatibility with ALDSP 2.x releases.
Platform |  |  | All.
Description |  |  | Specifically, Oracle Data Service Integrator 10gR3 does not support the following: ALDSP 2.x client to Oracle Data Service Integrator 10gR3 server (All client APIs, including Java, Web Services, Control, and JDBC) Oracle Data Service Integrator 10gR3 client to ALDSP 2.x server (All client APIs, including Java, Web Services, Control, and JDBC) Oracle Data Service Integrator 10gR3 continues to support API backward compatibility with ALDSP 3.x.
Workaround |  |  | None.
CR384046 | 10gR3 |  | Unable to display data lineage graph using Firefox 3.
Platform |  |  | Firefox 3, Java Runtime Environment (JRE) 6 Update 10 and Update 11
Description |  |  | When using Firefox 3 with Java Runtime Environment (JRE) 6 Update 10 or Update 11, clicking the Data Lineage tab in the Service Explorer does not display the data lineage graph.
Workaround |  |  | To view data lineage graphs using Firefox 3, do the following: On Microsoft Windows-based systems, configure Windows to use an earlier version of Java plug-in. You can set the version using the Advanced tab of the Java Control Panel. On Linux and Unix systems, modify the symbolic links for the Java plug-in. Alternatively, you can use the tabular view to display the data lineage.
CR383678 | 10gR3 |  | Certain platforms do not install the Oracle Data Service Integrator Samples and Eclipse IDE plug-ins.
Platform |  |  | Solaris
Description |  |  | The following platforms include the Oracle Data Service Integrator Samples and Eclipse IDE plug-ins: Microsoft Windows Linux All other platform installers do not include the Oracle Data Service Integrator Samples and Eclipse IDE plug-ins.
Workaround |  |  | None.
CR382764 | 10gR3 |  | Starting a domain after upgrading to 10gR3 and applying the Oracle Data Service Integrator template generates an error.
Platform |  |  | All.
Description |  |  | Starting a domain after using the Oracle Data Service Integrator 10gR3 Domain Upgrade wizard to upgrade an ALDSP 3.2 or 3.0.1 domain, and then using the Configuration Wizard to extend the domain by applying the Oracle Data Service Integrator template, generates the following error:
    java.lang.UnsupportedClassVersionError
1. Workaround |  |  | Do the following after upgrading the domain and extending the domain by applying the Oracle Data Service Integrator template: Edit the setDomainEnv.bat file in the upgraded_domain/bin directory and locate the section where the JAVA_HOME is set. For example:
       set BEA_JAVA_HOME=D:\dsp32\jrockit_150_11
       set SUN_JAVA_HOME=D:\odsi103\jdk160_05
       if '%JAVA_VENDOR%'=='BEA' (
          set JAVA_HOME=%BEA_JAVA_HOME%
       ) else (
          if '%JAVA_VENDOR%'=='Sun' (
             set JAVA_HOME=%SUN_JAVA_HOME%
          ) else (
             set JAVA_VENDOR=BEA
             set JAVA_HOME=D:\dsp32\jrockit_150_11
          )
       )
2. Your settings will depend on the particular Java Virtual Machine used in your environment. Modify the JAVA_HOME setting for the older version of Java (lines 1 and 10 below), as shown in the following:
       set BEA_JAVA_HOME=C:\odsi103\jrockit_160_05
       set SUN_JAVA_HOME=D:\odsi103\jdk160_05
       if '%JAVA_VENDOR%'=='BEA' (
          set JAVA_HOME=%BEA_JAVA_HOME%
       ) else (
          if '%JAVA_VENDOR%'=='Sun' (
             set JAVA_HOME=%SUN_JAVA_HOME%
          ) else (
             set JAVA_VENDOR=BEA
             set JAVA_HOME=C:\odsi103\jrockit_160_05
          )
       )
CR383679 | 10gR3 |  | Workshop for WebLogic and the standard sample domain are not installed.
Platform |  |  | Solaris
Description |  |  | Workshop for WebLogic and the standard sample domain are available only as part of the Oracle Data Service Integrator Windows and Linux platform installers.
Workaround |  |  | On other platforms, such as Solaris, use the Configuration Wizard to create the sample domain and select the Oracle Data Service Integrator sample domain template packaged with the product installation.
CR380826 | 10gR3 |  | Unable to deploy individual dataspace projects.
Platform |  |  | All.
Description |  |  | Starting with 10gR3, Oracle Data Service Integrator supports only full server deployments. This means that you can no longer deploy individual dataspace projects to the server. Note the following implications: The Deploy Project option is no longer available. Query runs, WSDL views, Web service tests, and plan views all result in full deployments to the server. If a project deployment fails, subsequent operations are not performed as part of the deployment.
Workaround |  |  | None.
CR382564 | 10gR3 |  | Firefox hangs when restoring default audit property settings.
Platform |  |  | All.
Description |  |  | Firefox 2.x and 3.x might hang when you attempt to restore the default settings on the Audit Properties tab in the Oracle Data Service Integrator Console after saving and activating an earlier change.
Workaround |  |  | None.
CR380731 | 10gR3 |  | In Workshop for WebLogic, dragging and dropping an operation to the Query Map does not work.
Platform |  |  | Linux
Description |  |  | When using Workshop for WebLogic on Linux platforms, the first attempt to drag an operation from the Project Explorer to the Query Map of a Logical Data Service does not work.
Workaround |  |  | Select the operation in the Project Explorer, release it, and then drag the operation to the Query Map.
CR378806 | 10gR3 |  | Unable to deploy a dataspace project to a remote domain using Workshop for WebLogic.
Platform |  |  | All.
Description |  |  | Attempting to deploy a dataspace project to a remote domain using Workshop for WebLogic causes the following message to appear:
    Dataspace projects cannot be deployed to a remote domain. Please select a domain on the local machine.
Workaround |  |  | Deploy the dataspace project to the remote domain using the Oracle Data Service Integrator Console.
CR382018 | 10gR3 |  | Console mode installation of Oracle Data Service Integrator fails on Cygwin 5.1 and Microsoft Windows XP Professional SP2.
Platform |  |  | Cygwin 5.1 and Microsoft Windows XP Professional SP2
Description |  |  | When installing Oracle Data Service Integrator on Cygwin 5.1 and Microsoft Windows XP Professional SP2 using console mode, the installer fails and displays the following message:
    GUI self extractor has encountered a problem and needs to close.
Workaround |  |  | Cancel the console mode install and use the GUI mode to install Oracle Data Service Integrator when using Cygwin 5.1 with Windows XP Professional SP2.
CR379310 | 10gR3 |  | Strike-Iron Excel Add-in no longer available.
Platform |  |  | All.
Description |  |  | Oracle Data Service Integrator no longer ships or supports the Strike-Iron Excel Add-in.
Workaround |  |  | None.
CR381622 | 10gR3 |  | Large JAR files can cause out-of-memory conditions.
Platform |  |  | All.
Description |  |  | Deploying dataspace projects with large JAR files may, in certain circumstances, generate out-of-memory conditions.
Workaround |  |  | None.
CR365986 | 10gR3 |  | Compiling the same schemas into XmlBeans and SDO and placing them on the class path generates errors.
Platform |  |  | All.
Description |  |  | The same set of schema files compiled using both XmlBeans and SDO is not supported in the same class loader. This creates a conflict and, depending on the order of the classes, can result unexpected errors.
Workaround |  |  | None.
CR365986 | 3.2, 3.01 |  | The ALDSP client API HelperContextCache.set() method is deprecated.
Platform |  |  | All.
Description |  |  | In ALDSP 3.0, when using the ALDSP mediator (and ALDSP Control) client API, you needed to specify the class loader for SDO classes when the SDO classes were not in the system class path, as shown in the following:
    HelperContextCache.set(dataSpaceName, Thread.currentThread().getContextClassLoader());
    commonj.sdo.helper.HelperContext hc = HelperContextCache.get(dataSpaceName);
or
    commonj.sdo.helper.HelperContext hc = SDOContextFactory.createNewSDOContext(Thread.currentThread().getContextClassLoader());
Starting with ALDSP 3.0.1/3.2, this step is unnecessary and deprecated. The following shows the correct way to get the HelperContext:
    commonj.sdo.helper.HelperContext hc = HelperContextCache.get(dataSpaceName);
Workaround |  |  | Upgrade to ALDSP 3.0.1/3.2 and remove any existing code that manages the HelperContext class loader in the client code.
CR369183 (May 2008) | 3.2 |  | The RTLApp web sample fails upon log-in.
Platform |  |  | All.
Description |  |  | When attempting to run the RTLApp sample web application under Workshop 10.0, multiple errors occurs when trying to log-in.
Workaround |  |  | Install WebLogic Workshop 10.2 into same BEA_HOME where ALDSP 3.2 is installed. (These steps are now reflected in the RTLApp configuration information for 3.2.)
CR364732 | 3.2, 3.01 |  | Using complex types with simple content from an ALDSP 3.2 (or ALDSP 3.0.1) client to an ALDSP 3.0 server may generate an optimistic locking failure errors.
Platform |  |  | All.
Description |  |  | Using complex types with simple content from an ALDSP 3.2 (or ALDSP 3.0.1) client and serializing it to an ALDSP 3.0 server may generate an optimistic locking failure due to incorrect processing of the change summary on the ALDSP 3.0 server.
Workaround |  |  | Upgrade the ALDSP 3.0 server to an ALDSP 3.2 (or ALDSP 3.0.1) server if using a complex type with simple content.
CR364443 | 3.2 |  | Manually adding a new server and modifying a data service may generate an unexpected exception in WorkSpace Studio 1.1.
Platform |  |  | All.
Description |  |  | WorkSpace Studio 1.1 may generate the following unexpected exception after you manually add a new server and then modify a data service:
    org.apache.xmlbeans.XmlException: Thread AWT-EventQueue-0:
               The 0th supplied input is not a schema document: its type is N=
    	at org.apache.xmlbeans.impl.schema.SchemaTypeSystemCompiler.compile(SchemaTypeSystemCompiler.java:211)
    	at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:585)
    	at org.apache.xmlbeans.XmlBeans.compileXmlBeans(XmlBeans.java:667)
    	at org.apache.xmlbeans.XmlBeans.compileXsd(XmlBeans.java:553)
Specifically, WorkSpace Studio 1.1 can generate the exception when you do the following: Click the Servers tab and add a new server. Double-click a data service (a .ds file) to display the data service in the Overview tab. Add an operation by right-clicking in the Overview area and choosing Add Operation.
Workaround |  |  | Contact BEA Customer Support to request patch E36K for ASDSP 3.2.
CR366025 | 3.2 |  | Reinstalling ALDSP 3.2 generates the following error: "A BEA product or component is already installed in this directory."
Platform |  |  | All.
Description |  |  | The error appears when attempting to reinstall ALDSP 3.2 in a <BEAHOME> directory where ALDSP 3.2 and any of the following have been installed and uninstalled: WebLogic Platform 10.2 WebLogic Portal 10.2 AquaLogic Service Bus (ALSB) 3.0 AquaLogic Integrator (ALINT) 3.0
Workaround |  |  | When reinstalling ALDSP 3.2, choose a new <BEAHOME> directory.
CR354149 | 3.2 | 3.2 | Alias names in user-defined SQL queries may be ignored w hen creating SQL query-based data services using non-core supported databases.
Platform |  |  | All.
Description |  |  | JDBC version 4.0 slightly modified the semantics of the following methods:
    java.sql.ResultSetMetadata.getColumnName()
    java.sql.ResultSetMetadata.getColumnLabel()
In JDBC 3.0 and earlier, the `getColumnName()` method returned aliases as specified by the SQL AS clause. In JDBC 4.0, the call instead returns the original column name, if available. Column aliases are available using the `getColumnLabel()` method.
2. Solution |  |  | Do the following: Create a custom XML provider. Set the following attribute:
       custom-rdb-provider/database-objects/column/@label-property-in-query-metadata
   Set the attribute to `column-label` to have the driver use the `getColumnLabel()` method to retrieve the alias (or actual name if there is no alias). Set the attribute to `column-name` to have the driver use the `getColumnName()` method.
   | The attribute is optional; if it is not present then the value of the parent provider is used. Note that AbstractSQLProvider uses the `getColumnName()` method.
CR359755 | 3.2 |  | Stored procedures may return an incorrectly rounded value for the MONEY datatype using the BEA SQL Server JDBC driver.
Platform |  |  | All (using BEA SQL Server JDBC driver).
Description |  |  | When using the BEA SQL Server JDBC driver, stored procedures may incorrectly round MONEY datatype values. For example, consider the following stored procedure:
    ALTER PROCEDURE [wireless].[SP_SMALLMONEY_OUT] (  @P_ID VARCHAR(10),  @P_SMALLMONEY SMALLMONEY OUT
    )
    AS
    BEGIN
    SELECT @P_SMALLMONEY = C_SMALLMONEY
    FROM ALL_DATATYPES
    WHERE C_ID = @P_ID
    END
Using an original value of 234.4000 in the database, the BEA SQL Server driver returns the following incorrect value:
    234
Workaround |  |  | Contact BEA Customer Support to request the BEA SQL Server JDBC Driver Version 3.4.0057. Alternatively, use the Microsoft SQL Server JDBC driver.
CR361824 | 3.2 |  | A source upgrade of a Workshop 8.1 JWS to Workshop 10 may cause failures when communicating with old clients.
Platform |  |  | All.
Description |  |  | A source upgrade of a Workshop 8.1 JWS to Workshop 10 may generate different WSDL definitions and cause failures when communicating with old clients.
Workaround |  |  | There are several functionality changes between Workshop 8.1 JWS and Workshop 10 JWS implementations. Refer to the following link to identify and resolve source upgraded jws files in Workshop 10: http://edocs.bea.com/wlw/docs102/guide/upgrading/conUpgradingWebServices.html
CR362948 | 3.2 |  | The `fn-bea:delete()` and `fn-bea:replace-value()` XQuery mutator functions generate an error when the path contains '//' in the final level.
Platform |  |  | All.
Description |  |  | When using the `delete()` or `replace-value()` XQuery mutator functions, the system generates an error if the path ends with `//@attribute` or `//element_of_a_simple_type`. Consider the following procedure:
    declare procedure tns:test_delete_path_descendant-or-self_axis3() {
       declare $cust as element(xs1:Customer) := ds1:getCustomerById(3);
       declare $ce as changed-element(xs1:Customer);
       set $ce := fn-bea:enable-changes($cust);
       set $ce := fn-bea:delete($ce, './/@USE');
       ds1:updateCustomer($ce);
    }
The procedure generates the following error because `.//@USE` is used to specify the path when calling the `fn-bea:delete()` function:
    {bea-err}MUT007: Could not construct an XPath that selects the parent node for XPath ".//@USE"
Note that the path can contain '//' but not preceding the final level in the path. For example, the following is valid:
    x//y/z
But, the following generates an error:
    x//z
Note also that you can specify `//element_of_a_complex_type` at any level.
Workaround |  |  | None.
CR362224 | 3.2 |  | ALDSP 3.2 does not push down operations on BIT datatypes.
Platform |  |  | All (using Microsoft SQL Server and Sybase).
Description |  |  | Unlike ALDSP 3.0, ALDSP 3.2 does not push down operations on BIT datatypes when using Microsoft SQL Server or Sybase databases.
Workaround |  |  | None.
CR366180 | 3.2 |  | Tabular view in the Test tab of WorkSpace Studio 1.1 may incorrectly switch the display of @attr and element values.
Platform |  |  | All.
Description |  |  | When displaying results in the Test tab of WorkSpace Studio 1.1, an element value may appear in the @attr column and the @attr value may appear in place of the first element.
Workaround |  |  | Use the Tree view or Text view to display the results.
CR364732 | 3.2 |  | Using complex types with simple content from an ALDSP 3.2 client to an ALDSP 3.0 server may generate an optimistic locking failure errors.
Platform |  |  | All.
Description |  |  | Using complex types with simple content from an ALDSP 3.2 client and serializing it to an ALDSP 3.0 server may generate an optimistic locking failure due to incorrect processing of the change summary on the ALDSP 3.0 server.
Workaround |  |  | Upgrade the ALDSP 3.0 server to an ALDSP 3.2 server if using complex type with simple content.
CR366431 | 3.2 |  | Business Objects and Crystal Reports Table Browser displays the same column name multiple times.
Platform |  |  | All.
Description |  |  | Publishing data service functions to a SQL map using the same table name in multiple schemas can cause certain reporting tools, such as Business Objects and Crystal Reports, to display the same column name multiple times (as many times as the table is published) in the Table Browser user interface.
Workaround |  |  | Do not use the same table name in multiple schemas when publishing data service functions to a SQL map.
CR365752 | 3.2 |  | Data Services Studio user interface behavior is replaced with Workspace Studio after installing ALDSP 3.2 in an existing ALDSP 3.0 BEA_HOME directory.
Platform |  |  | All.
Description |  |  | When installing ALDSP 3.2 in the same BEA_HOME directory as a current installation of WebLogic Server 9.2.2 and ALDSP 3.0, the installation application recognizes the presence of Data Services Studio (Eclipse 3.2.2) and installs new plug-ins for both WorkSpace Studio 1.1 and Data Services Studio. After the installation is complete, the Data Services Studio user interface behavior is replaced with Workspace Studio.
Workaround |  |  | Install ALDSP 3.2 in a new BEA_HOME directory.
CR365527 | 3.2 |  | ALDSP classpath patch does not appear in the server logs.
Platform |  |  | All.
Description |  |  | After using the BEA Smart Update tool to install the ALDSP classpath patch, a record of the patch does not appear in the server logs.
1. Workaround |  |  | To get the patch information, do the following: Set the domain path by running:
       setDomainEnv.cmd
   or
       setDomainEnv.sh
2. Run the `java weblogic.version -verbose` command to print the version. The output appears similar to the following:
       WebLogic Server Temporary Patch for CR345472 Thu Jan 17 16:13:48 EST 2008
       ImplVersion: 10.0.1.0WebLogic Server Temporary Patch for CR322355 Tue Oct 23 10:53:45 PDT 2007
       ImplVersion: 10.0.1.0AquaLogic DataServices Platform 3.2 10.0 SP1 2008-03-21 15:32:50 PDT
       Patch for CR365525 ImplVersion: 10.0.1.0
CR357742 | 3.0 | 3.2 | Unable to start the AquaLogic Data Services Platform 3.0 sample domain from the QuickStart page.
Platform |  |  | All.
Description |  |  | When attempting to launch the ALDSP 3.0 sample domain by clicking the "Start AquaLogic Data Services Platform 3.0" link on the QuickStart page, a pop-up window appears displaying the following message:
    The link to this application has not been implemented yet. Check this out later!
Workaround |  |  | Click Start -> BEA Products -> BEA AquaLogic Data Services Platform -> Examples -> Start Examples Server to start the sample domain.
CR258884 | 3.0 |  | Security filter decisions are not audited.
Platform |  |  | All.
Description |  |  | Security filter decisions (XQuery functions for security) are not audited.
Workaround |  |  | None.
CR345482 | 3.0 |  | Hyperion Interactive Reporting System is not supported.
Platform |  |  | All.
Description |  |  | ALDSP 3.0 does not support the Hyperion Interactive Reporting System.
Workaround |  |  | None.
CR339279 | 3.0 |  | Upgrading ALDSP 2.5 projects that include multibyte characters may generate errors and produce garbled characters.
Platform |  |  | All.
Description |  |  | When upgrading an ALDSP 2.5 project that includes multibyte characters to ALDSP 3.0, the following error may appear in the log view:
    'Some characters cannot be mapped'
Similarly, when opening the updated data service file, the following error may appear:
    'Exception Message: 'Some characters cannot be mapped   'MS932'
Garbled characters may also appear in the data service file.
Workaround |  |  | The data service file was properly upgraded. Reopen the data service file to have the multibyte characters appear properly.
CR266307 | 3.0 |  | Namespace URIs can become invalid when using file and folder names containing embedded spaces.
Platform |  |  | All.
Description |  |  | ALDSP does not support file and folder names containing one or more embedded spaces. This can cause namespace URIs to become invalid during certain operations such as a Refactor > Move and Refactor > Rename, among others.
Workaround |  |  | Do not create file or folder names containing embedded spaces.
CR350103 | 3.0 |  | ALDSP license changes unexpectedly after installing a new version.
Platform |  |  | All.
Description |  |  | ALDSP uses the first license found in the AquaLogic Data Services Platform license group (in the license.bea file). If you install multiple versions of ALDSP, your license may change unexpectedly because of the order of the licenses, as shown in the following segment:
    <license-group format='1.0' product='AquaLogic Data Services Platform' release='3.0'>
       <license
          component='Data Services Runtime'
          cpus='unvalued'
          expiration='2008-01-28'
          ip='any'
          licensee='BEA Evaluation Customer'
          signature='ZgOAWQ...'
          type='EVAL'
          units='5'
       />
       <license
          component='Data Services Runtime'
          cpus='unvalued'
          expiration='2008-06-04'
          ip='any'
          licensee='BEA Evaluation Customer'
          serial='616351266349-2343532799844'
          signature='MC4CFQ...'
          type='EVAL'
          units='unlimited'
       />
    </license-group>
Note that in this example, the number of "units" in the license changes from an unlimited number to five.
Workaround |  |  | If you have multiple versions of ALDSP installed, do the following: Verify that the most flexible license appears first in the AquaLogic Data Services Platform license group (in the license.bea file). Restart the server.
CR346860 | 3.0 |  | ALDSP 2.5 SDOGen Web service clients need additional steps to run in backward compatibility mode.
Platform |  |  | ALDSP 2.5
Description |  |  | ALDSP 2.5 Web service clients that use static SDOGen do not work out-of-the-box after the ALDSP server and the DSP Control/JWS is source upgraded.
4. Workaround |  |  | To use static SDOGen Web service clients, do the following: In the source upgraded JWS file, modify the portName attribute of the @WLHttpTransport annotation and ensure that it matches the entry present in the 8.1 generated WSDL. Generate the WSDL file for the JWS and save the file to a local disk. Remove the parameterOrder attribute from the WSDL file. Use the saved WSDL file in the client instead of the WSDL file dynamically available from the JWS. For example, consider the following WebLogic 8.1 call:
       String wsdl = 'http://acme/services/CustReadCtrlTest.jws?WSDL'weblogic.jws.proxies.CustReadCtrlTestSoap
          soapCtrl = new weblogic.jws.proxies.CustReadCtrlTest_Impl(wsdl).getCustReadCtrlTestSoap();
   Modify the statement to match the following:
       String wsdl ='file://local/services/CustReadCtrlTest.wsdl';
       weblogic.jws.proxies.CustReadCtrlTestSoap soapCtrl = new
          weblogic.jws.proxies.CustReadCtrlTest_Impl(wsdl).getCustReadCtrlTestSoap()
CR351310, CR351492 | 3.0 |  | Missing entries in the generation log.
Platform |  |  | All.
Description |  |  | The generation log may not contain entries for target entities that cannot be updated. In this case, the update map may be incomplete.
Workaround |  |  | None.
CR337329 | 3.0 |  | Running ALDSP 3.0 in the same domain as WebLogic Integration (WLI) 9.2 can cause conflicts.
Platform |  |  | ALDSP 3.0 and WebLogic Integration 9.2
Description |  |  | ALDSP 3.0 and WLI 9.2 install incompatible versions of the xquery.jar file. The software installed by ALDSP 3.0 is a newer version and is not certified for use with WLI 9.2.
Workaround |  |  | Do not create a domain that is provisioned for ALDSP 3.0 and WebLogic Integration 9.2.
CR354314 | 3.0 | 3.2 | Changes made to multiple dataspaces in a single session do not apply to all dataspaces at runtime.
Platform |  |  | All.
Description |  |  | After acquiring a lock for a session, making changes to multiple dataspaces, and committing the session, the changes are reflected only in a single dataspace. Restarting WebLogic Server causes the changes to be reflected in all modified dataspaces.
Workaround |  |  | Make changes to only a single dataspace during a session. After committing the session, start a new session to make changes to another dataspace.
CR344413 | 3.0 |  | Importing an AquaLogic Service Bus (ALSB) SB proxy or accessing an ALSB SB proxy physical data service requires the ALSB sbresource servlet to be available.
Platform |  |  | All.
Description |  |  | When importing web services that are routed through an ALSB SB proxy, ALDSP requests the SB proxy WSDL through the ALSB sbresource servlet. Similarly, when accessing a physical data service that was created using the ALSB SB proxy, the ALDSP runtime retrieves the SB proxy WSDL through the ALSB sbresource servlet. Both operations require that the ALSB sbreource servlet be available and running.
Workaround |  |  | Ensure that the ALSB sbreource servlet is deployed and running.
CR343216 | 3.0 |  | Oracle timestamp with time zone returns an incorrect value.
Platform |  |  | Oracle 9i (using the BEA Oracle JDBC driver).
Description |  |  | The timestamp (with time zone) returned using the BEA Oracle JDBC driver may be incorrect.
Workaround |  |  | Use the native Oracle JDBC driver.
CR341851 | 3.0 |  | An upgraded JWS that returns an XMLBean type will not compile.
Platform |  |  | Workshop for WebLogic Platform 9.2.2
Description |  |  | All operations on an upgraded JWS that returns an XMLBean type will have a compile error similar to the following after the upgrade:
    The name 'getCustomerByIdResult' specified in javax.jws.WebResult is different to the XmlBean name of 'CUSTOMER'
The message indicates that the return type does not match the element name defined by the XMLBean schema.
Workaround |  |  | Remove the @WebResult annotation or change the name to match the schema type.
CR338622 | 3.0 | 3.2 | Test View in ALDSP does not perform full XML Schema validation of the results of an operation.
Platform |  |  | All.
Description |  |  | Schema validation behavior has changed from ALDSP 2.x to ALDSP 3.0. Using ALDSP 2.x, schema validation occurs on the query return. In ALDSP 3.0, the validation is performed at the SDO structural level and does not constitute a full schema validation.
Workaround |  |  | During testing, temporarily wrap the function body using the XQuery validate construct to validate the results of calling the function against the XML Schema, as shown in the following example:
    validate {
       xquery expression
    }
CR342747 | 3.0 |  | Crystal Reports is unable to use read functions (accepting no parameters) published as stored procedures.
Platform |  |  | Crystal Reports (using the JDBC driver).
Description |  |  | Using a read function (accepting no parameters) published as a stored procedure with Crystal Reports generates an exception similar to the following:
    java.sql.SQLException: Invalid stored procedure reference:
    ReportingToolCertDataServices.Xtreme.'Read
    	at
    com.bea.dsp.jdbc.exceptions.DSPExceptionFactory.create(DSPExceptionFactory.java:148)
    	at
    com.bea.dsp.jdbc.driver.CallableDSPStatementImpl.updateWithNamedParameters(CallableDSPStatementImpl.java:2913)
Workaround |  |  | Publish the read function without parameters as a table instead of a stored procedure.
CR345630 | 3.0 |  | The ALDSP 2.5 server side streaming API cannot be used in ALDSP 3.0 without modification.
Platform |  |  | All.
Description |  |  | In ALDSP 2.5, the streaming API is available on the server side only when used in the same ALDSP 2.5 application as a local Mediator API client. ALDSP 3.0, however, no longer uses the J2EE deployment model for dataspace deployment. As a result, a client using the ALDSP 2.5 streaming API cannot be deployed inside an ALDSP 3.0 dataspace. Doing so results in the following exception:
    javax.naming.LinkException.
Workaround |  |  | ALDSP 3.0 supports the streaming API for all Java Mediator API clients (remote and local). Modify the streaming API client code to use the ALDSP 3.0 Java Mediator API and use the streaming facility in this API.
CR317803 | 3.0 |  | Unable to display data lineage graph using the Metadata Browser with Netscape 8.1.
Platform |  |  | Microsoft Windows, Netscape 8.1
Description |  |  | When using Netscape 8.1, clicking the Data Lineage tab in the Metadata Browser may not display the data lineage graph nor prompt to download and install the SVG viewer.
Workaround |  |  | To view data lineage graphs using Netscape 8.1, do the following: Close the Netscape browser. Download and install SVG viewer plug-in. Copy the NPSVG3.dll file to the <NetscapeHome>/plugins folder. Restart the Netscape browser. Alternatively, you can use the tabular view of the Metadata Browser to display the data lineage.
CR343348 | 3.0 |  | The fn:doc() and fn-bea:collection() functions cannot be accessed using the client API.
Platform |  |  | All.
Description |  |  | ALDSP 3.0 does not offer access to the fn:doc() and fn-bea:collection() functions through the client API. These functions can cause security vulnerabilities and are therefore blocked from client access. The functions are, however, available for use within data service XQuery bodies.
Workaround |  |  | None.
CR318031 | 3.0 |  | The Eclipse IDE displays the following error message: "An out of memory error has occurred."
Platform |  |  | All.
Description |  |  | When working with the Eclipse IDE, an "Internal Error" dialog appears displaying the following error message: "An out of memory error has occurred...Do you want to exit the workbench?"
2. Workaround |  |  | Do the following: Edit the configuration file. When using the Data Service Studio to launch Eclipse, edit the $<ALDSP_HOME>/bin/aldsp.ini file. When using Eclipse independent of Data Service Studio, edit the eclipse.ini file. Specify the following memory parameters for the Eclipse IDE:
       -vm
       <JDK_home>/jre/bin/java.exe
       -clean
       -vmargs
       -Xms256m
       -Xmx1024m
       -XX:PermSize=128m
CR347480 | 3.0 |  | Upgrading an application to ALDSP 3.0 may produce the following error message: "This project needs to migrate WTP metadata."
Platform |  |  | All.
Description |  |  | When upgrading an application from ALDSP 2.5 to ALDSP 3.0, the following error may appear under the Problems tab:
    This project needs to migrate WTP metadata
Workaround |  |  | This is an Eclipse error and can occur independent of ALDSP. Do the following: Using Studio, rename the project. Select the project in the Project Explorer and choose Project > Build Automatically from the main menu to toggle the feature off. Select the project in the Project Explorer and choose Project > Clean from the main menu. Close and relaunch Studio. Optionally, rename the project to the original name. Select the project in the Project Explorer and choose Project->Build Automatically from the main menu to toggle the feature on.
CR347074 | 3.0 |  | Changes to the database definition are not reflected in PreparedStatement calls or in the data service after updating the metadata.
Platform |  |  | All.
Description |  |  | SQL queries use the PreparedStatement interface which, by default, is cached by the WebLogic Server. The default JDBC PreparedStatement cache size for is 10. This can result in incorrect prepared statements being used from the cache when database table or column definitions have changed between prepared statement calls.
Workaround |  |  | Set the PreparedStatement cache size to 0 when the database table definitions are changed. Using the WebLogic Server Administration Console, do the following: Click to expand the Services, JDBC, and Connection Pool nodes to display the list of connection pools in the current domain. Click the connection pool that you want to configure. A dialog displays in the right pane showing the tabs associated with this instance. Click the Configuration tab, then click the Connections tab. In Statement Cache Size, enter zero (0) for the number of statements to cache per connection per connection pool instance. Click Apply to save your changes. Reset the value of the PreparedStatement cache size to the original value.
CR297695 | 3.0 |  | An "optimistic locking failure" exception can occur if Oracle checks for an empty string when the actual value is null.
Platform |  |  | Oracle
Description |  |  | Oracle stores both empty strings and null strings as NULL, and both are always returned as NULL which may cause an optimistic locking error during an update operation. Consider the following mapping:
    <SomeElement>{ data($db_row/VARCHAR_COLUMN)}</SomeElement>
where VARCHAR_COLUMN is a database column of VARCHAR type. In this case, the element is always created even when the column value is NULL. An SDO mapping would therefore map an empty element to the empty string value "". When the updated element is submitted to the database, the following exception occurs: DataServiceException: Optimistic locking failure The exception occurs because the DSP-generated SQL statements instruct Oracle to check for an empty string when the actual value is NULL.
Workaround |  |  | Map the column to an optional element, as shown in the following:
    <SomeElement?>{ data($db_row/VARCHAR_COLUMN)}</SomeElement>
This ensures that the element is not created if the column value is NULL.
CR345834 | 3.0 |  | Expensive functions in LET clauses, such as calls to web services, may be invoked multiple times resulting in degraded performance.
Platform |  |  | All.
Description |  |  | XQuery 3.0 inlines LET clauses that are used only once. This can affect the number of times an expensive function, such as a web service, is called. For example, consider the following query:
    declare function tns:test($id1 as xs:string, $id2 as xs:string ){
    let $order1 := tes:getOrder($id1)/OrderDetail

    let $order2 :=
      for $x in tes:getOrder($id2)/OrderDetail
      return
        <ORDER>
           <ORDER_ID>{fn:data($x/stns:orderID)}</ORDER_ID>
        </ORDER>

      for $o1 in $order1
       return
          <ORDER>
    	<ORDER_ID>{fn:data($o1/stns:orderID)}</ORDER_ID>
            <ORDER_DATE>{fn:data($o1/stns:orderDate)}</ORDER_DATE>
            <TOTAL_ORDER_AMOUNT>
               { fn:data($o1/stns:totalOrderAmount) }</TOTAL_ORDER_AMOUNT>
    	<STATUS>
               { $order2[$o1/stns:orderDate = $o1/stns:estimatedShipDate] }</STATUS>
          </ORDER>
    };
In this example, ALDSP 3.0 inlines both $order1 and $order2 since each are used only once after being defined. This causes the system to perform repeated evaluations of the web service calls as part of the FOR clause (instead of retrieving the saved values from the variables) resulting in degraded performance.
1. Workaround |  |  | Configure ALDSP to prevent the inlining of expensive LET clauses in loops by doing the following: Set the following system property to false:
       weblogic.xml.query.compiler.INLINE_SINGLE_EXPENSIVE_LETS_INTO_LOOPS=false
Restart the WebLogic Server. By default this property is set to true (which is also the default behavior of ALDSP 2.5).
CR314392 | 3.0 |  | An exception occurs when deploying an ALDSP 3.0 application generated using Workshop for WebLogic 9.2 MP1 or earlier.
Platform |  |  | ALDSP 3.0, Workshop for WebLogic 9.2 MP1 or earlier.
Description |  |  | An exception can occur when deploying an ALDSP 3.0 application (using the Admin Console) using a WSDL file generated from Workshop for WebLogic 9.2 MP1 or earlier. ALDSP does not support WSDL files generated using Workshop for WebLogic 9.2 MP1 or earlier.
Workaround |  |  | Generate the WSDL using Workshop for WebLogic 9.2 MP2 and then rebuild and redeploy the application.
CR321293 | 3.0 |  | The server is unable to locate a referenced schema file specified using the Eclipse XSD Editor.
Platform |  |  | Eclipse XSD Editor on Microsoft Windows
Description |  |  | Microsoft Windows does not distinguish case in file and folder names. Therefore, the Eclipse XSD Editor on Microsoft Windows will not flag an error when you specify a schema file name using incorrect case. For example, the editor will not flag the following entry when the actual schema file name is ProfileView.xsd:
    <xsd:import namespace="urn:test"   schemaLocation="profileView.xsd"/>
Workaround |  |  | Verify the case when referencing schema file names using the Eclipse XSD Editor on Microsoft Windows.
CR327132 | 3.0 |  | A schema is generated with "minOccurs=0" for all columns, not just columns that are not null.
Platform |  |  | Informix (using BEA XA and BEA Non-XA JDBC drivers).
Description |  |  | When creating a schema using an Informix database with either BEA XA or BEA Non-XA drivers, a schema is generated with "minOccurs=0" for all columns, not just columns that are not null.
Workaround |  |  | None.
CR327305 | 3.0 |  | The nativeSize of data types appears as zero (0) after importing tables using Sybase drivers.
Platform |  |  | Sybase (using Sybase JDBC drivers)
Description |  |  | When using Sybase drivers, the nativeSize of data types appear as zero (0) after importing tables, as shown in the following sample output:
    xquery version "1.0" encoding "WINDOWS-1252";
    (::pragma xds <x:xds xmlns:x="urn:annotations.ld.bea.com" targetType="t:sqlQuery"
    xmlns:t="ld:SY/datasource/TC_SQLWhereWithConstant/sqlQuery">
    <creationDate>yyyy-mm-ddThh:mm:ss</creationDate>
    <relationalDB name="datasource" providerId="Sybase-12.5.2"/>
    <field xpath="FIRST_NAME" type="xs:string">
       <extension nativeXpath="FIRST_NAME" nativeType="varchar" nativeTypeCode="12" nativeSize="0"
          nativeFractionalDigits="0"/>\\
       <properties nullable="false"/>
    </field>
    <field xpath="LAST_NAME" type="xs:string">
       <extension nativeXpath="LAST_NAME" nativeType="varchar" nativeTypeCode="12" nativeSize="0"
          nativeFractionalDigits="0"/>\\
       <properties nullable="false"/>
    </field>
Workaround |  |  | Use the BEA Sybase JDBC drivers.
CR327820 | 3.0 |  | Certain SQL queries may generate a schema with a missing element name.
Platform |  |  | Sybase
Description |  |  | When using Sybase, SELECT statements similar to the following may generate schemas with a missing element name:
    SELECT t1.PRODUCT_ID, sum(t2.QUANTITY)
    FROM PRODUCT t1 JOIN CUST_ORDER_LINE_ITEM_APPL t2 on (t1.PRODUCT_ID = t2.PRODUCT_ID)
    GROUP by t1.PRODUCT_ID
Workaround |  |  | Specify aliases for the columns in the SQL statements. For example, you could rewrite the previous SELECT statement as follows:
    SELECT t1.PRODUCT_ID as PRODUCT_ID, sum(t2.QUANTITY) as QUANTITY
    FROM PRODUCT t1 JOIN CUST_ORDER_LINE_ITEM_APPL t2 on (t1.PRODUCT_ID = t2.PRODUCT_ID)
    GROUP by t1.PRODUCT_ID
CR328457 | 3.0 |  | The Oracle JDBC driver and the BEA Oracle JDBC driver return different lengths for CHAR output parameters in stored procedures.
Platform |  |  | Oracle (using the Oracle JDBC driver and BEA Oracle JDBC driver).
Description |  |  | The Oracle driver and the BEA Oracle driver may return different lengths for CHAR output parameters in stored procedures. For example:
    CREATE OR REPLACE PROCEDURE
    MYPROCEDURE1(P_CHAR_OUT OUT CHAR)
    ...<procedure_body>...
In this example, P_CHAR_OUT is the output parameter returned by the stored procedure.
Workaround |  |  | None.
CR328861 | 3.0 |  | Ad-hoc queries in DSP controls that return XML that does not conform to the declared XML type generate an exception.
Platform |  |  | All.
Description |  |  | When writing ad-hoc queries in a DSP control, if the ad-hoc query returns XML that does not conform to the declared XML type, the following exception is generated while marshalling the SDO data object.
    java.lang.IllegalArgumentException: A type with this name
    'ADDRESS_TYPE@urn:schemas-bea-com:ld-addr' already exists in this type system.
    <ComponentHandler.handleRequest:115>
    java.lang.IllegalArgumentException: A type with this name
    'ADDRESS_TYPE@urn:schemas-bea-com:ld-addr' already exists in this type system.
Workaround |  |  | Ensure that ad-hoc queries in DSP controls conform to the XML schema for the return type.
CR331184 | 3.0 |  | An exception occurs while parsing a NEIM schema.
Platform |  |  | All.
Description |  |  | An XmlException exception similar to the following may occur while parsing a NEIM schema (when attempting to create a data service and associated schema, for example):
    org.apache.xmlbeans.XmlException: D:\Eclipse
    Workspaces\DSPDemo\NEIM\Schema\lexs\lexs.xsd:54:5: error: Problem parsing referenced XML resource - D:\Eclipse
    Workspaces\DSPDemo\NEIM\Schema\lexs\lexs-digest.xsd:689:1: error: Unexpected element: CDATA
    at org.apache.xmlbeans.impl.schema.SchemaTypeSystemCompiler.compile(SchemaTypeSystemCompiler.java:225)
This may be caused by extra newline and whitespace characters at the end of the file.
Workaround |  |  | Remove any newline or whitespace characters from the end of the NEIM schema file.
CR332755 | 3.0 |  | An exception can occur when using the ALDSP 2.5 JDBC driver with ALDSP 3.0 applications.
Platform |  |  | All.
Description |  |  | When attempting to get a connection using the ALDSP 2.5 JDBC driver (ldjdbc.jar) with an ALDSP 3.0 application, an IncompatibleClassChangeError exception can occur similar to the following:
    Exception in thread "main" java.lang.IncompatibleClassChangeError:
    Implementing class
            at java.lang.ClassLoader.defineClass0(Native Method)
            at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
            at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
Workaround |  |  | Contact BEA Customer Support to request the patch for CR333047 (patch file: CR333047_810sp6.jar) and add the file to your client classpath.
CR333489 | 3.0 |  | XQueries may return an incorrect timestamp using the BEA XA driver.
Platform |  |  | Oracle (using the BEA XA JDBC driver).
Description |  |  | The BEA XA driver may return an incorrect timestamp when issued a query similar to the following:
    <result>
    {
    for $i in f1:DATA_TIMESTAMP_ZONE()
    return
       <row>
          {$i/C_ID}
          {
          if (fn:data($i/C_TIMESTAMP_ZONE_3) instance of xs:dateTime) then
             <C_TIMESTAMP_ZONE_3>
                <type>TIMESTAMP_ZONE</type>
                <xmltype>xs:dateTime</xmltype>
                <data>{fn:data($i/C_TIMESTAMP_ZONE_3)}</data>
             </C_TIMESTAMP_ZONE_3>
          else
             <C_TIMESTAMP_ZONE_3></C_TIMESTAMP_ZONE_3>
          }
       </row>
    }
    </result>
In this example, the expected return value is the following:
    <C_TIMESTAMP_ZONE_3>
       <type>TIMESTAMP_ZONE</type>
       <xmltype>xs:dateTime</xmltype>
       <data>1999-04-15T08:00:00-07:00</data>
    </C_TIMESTAMP_ZONE_3>
The BEA XA driver instead returns the following:
    <C_TIMESTAMP_ZONE_3>
       <type>TIMESTAMP_ZONE</type>
       <xmltype>xs:dateTime</xmltype>
       <data>1999-04-09T17:20:00+09:00</data>
    </C_TIMESTAMP_ZONE_3>
Workaround |  |  | Use the Oracle native XA JDBC driver.
CR333689 | 3.0 |  | XQueries may return inconsistent results using the BEA XA driver.
Platform |  |  | Oracle (using the BEA XA JDBC driver).
Description |  |  | The BEA XA driver may return inconsistent results when issued a query similar to the following:
    declare namespace ns = "ld:test/RDBMS/OR-CR/DATA_NUMBER";
    declare namespace ns1 = "ld:test/RDBMS/OR-CR/DATA_FLOAT";
    declare namespace ns2 = "ld:test/RDBMS/OR-CR/DATA_NUMBER_N_S";
    declare namespace ns3 = "ld:test/RDBMS/OR-CR/DATA_NUMBER_N";
    declare variable $ext as xs:decimal external;

    <result>
    {
       <column>
       {
          let $x := for $y in ns:DATA_NUMBER()
          where ($y/C_ID  mod 2) ne 0
          return $y/C_NUMBER mod $y/C_ID
             return(
                <all>
                   <test1>{$x}</test1>
                   <sql>{fn-bea:get-sql($x)}</sql>
                </all>
             )
          }
       </column>
    }
    {
       <const>
       {
          let $x := for $y in ns1:DATA_FLOAT()
          where $y/C_ID gt ($y/C_FLOAT mod 2)
          return fn:concat( xs:string($y/C_ID), xs:string( 5 mod 4))
             return(
                <all>
                   <test2>{$x}</test2>
                   <sql>{fn-bea:get-sql($x)}</sql>
                </all>
             )
          }
       </const>
    }
    {
       <func>
       {
          let $x := for $y in ns2:DATA_NUMBER_N_S()
          where fn:string-length(xs:string($y/C_ID)) eq fn:abs( -5 mod 4)
          return fn:concat( xs:string($y/C_NUMBER_38_38 ), xs:string(4 mod 5))
             return(
                <all>
                   <test3>{$x}</test3>
                   <sql>{fn-bea:get-sql($x)}</sql>
                </all>
             )
          }
       </func>
    }
    {
       <join>
       {
          let $x:= for $y in ns:DATA_NUMBER()
          for $z in ns2:DATA_NUMBER_N_S()
          where $y/C_ID eq $z/C_ID
          return $y/C_NUMBER mod $z/C_NUMBER_38_38
             return(
                <all>
                   <test1>{$x}</test1>
                   <sql>{fn-bea:get-sql($x)}</sql>
                </all>
             )
       }
       </join>

    }
    {
       <orderby>
       {
          let $x:= for $y in ns:DATA_NUMBER()
          where true()
          order by $y/C_ID mod $y/C_NUMBER
          return $y/C_ID mod $y/C_NUMBER
             return(
                <all>
                   <test1>{$x}</test1>
                   <sql>{fn-bea:get-sql($x)}</sql>
                </all>
             )
          }
       </orderby>
    }
    </result>
In this example, the expected return value is the following:
    <result><column><all><test1>1.1E-130 2.33</test1><sql>SELECT
    MOD(t1.'C_NUMBER',CAST(t1.'C_ID' AS NUMBER)) AS c1
    FROM 'CRM'.'DATA_NUMBER' t1
    WHERE (MOD(t1.'C_ID',2) != 0)</sql></all></column><const><all><test2>11 21
    31</test2><sql>SELECT (TO_CHAR(t1.'C_ID') || '1') AS c1
    FROM 'CRM'.'DATA_FLOAT' t1
    WHERE (CAST(t1.'C_ID' AS NUMBER) &gt;
    MOD(t1.'C_FLOAT',2.0))</sql></all></const><func><all><test3>.123456789012345678901234567890123456784
    .1234 .14</test3><sql>SELECT (TO_CHAR(t1.'C_NUMBER_38_38') || '4') AS c1
    FROM 'CRM'.'DATA_NUMBER_N_S' t1
    WHERE (NVL(LENGTH(TO_CHAR(t1.'C_ID')),0) =
    1)</sql></all></func><join><all><test1>1.1E-130 -1.1E-30
    0.03</test1><sql>SELECT MOD(t1.'C_NUMBER',CAST(t2.'C_NUMBER_38_38' AS
    NUMBER)) AS c1
    FROM 'CRM'.'DATA_NUMBER' t1
    JOIN 'CRM'.'DATA_NUMBER_N_S' t2
    ON (t1.'C_ID' = t2.'C_ID')</sql></all></join><orderby><all><test1>-INF
    9.0E-31 0.67</test1><sql>SELECT MOD(CAST(t1.'C_ID' AS NUMBER),t1.'C_NUMBER')
    AS c1
    FROM 'CRM'.'DATA_NUMBER' t1
    ORDER BY MOD(CAST(t1.'C_ID' AS NUMBER),t1.'C_NUMBER')
    ASC</sql></all></orderby></result>
The BEA XA driver instead returns the following:
    <result><column><all><test1>1.1E-130 2.33</test1><sql>SELECT
    MOD(t1.'C_NUMBER',CAST(t1.'C_ID' AS NUMBER)) AS c1
    FROM 'CRM'.'DATA_NUMBER' t1
    WHERE (MOD(t1.'C_ID',2) != 0)</sql></all></column><const><all><test2>11 21
    31</test2><sql>SELECT (TO_CHAR(t1.'C_ID') || '1') AS c1
    FROM 'CRM'.'DATA_FLOAT' t1
    WHERE (CAST(t1.'C_ID' AS NUMBER) &gt;
    MOD(t1.'C_FLOAT',2.0))</sql></all></const><func><all><test3>.123456789012345678901234567890123456784
    .1234 .14</test3><sql>SELECT (TO_CHAR(t1.'C_NUMBER_38_38') || '4') AS c1
    FROM 'CRM'.'DATA_NUMBER_N_S' t1
    WHERE (NVL(LENGTH(TO_CHAR(t1.'C_ID')),0) =
    1)</sql></all></func><join><all><test1>1.1E-130 -1.1E-30
    0.03</test1><sql>SELECT MOD(t1.'C_NUMBER',CAST(t2.'C_NUMBER_38_38' AS
    NUMBER)) AS c1
    FROM 'CRM'.'DATA_NUMBER' t1
    JOIN 'CRM'.'DATA_NUMBER_N_S' t2
    ON (t1.'C_ID' = t2.'C_ID')</sql></all></join><orderby><all><test1>0.0 9.0E-31
    0.67</test1><sql>SELECT MOD(CAST(t1.'C_ID' AS NUMBER),t1.'C_NUMBER') AS c1
    FROM 'CRM'.'DATA_NUMBER' t1
    ORDER BY MOD(CAST(t1.'C_ID' AS NUMBER),t1.'C_NUMBER')
    ASC</sql></all></orderby></result>
Workaround |  |  | Use the Oracle native XA driver.
CR334116 | 3.0 |  | RequestConfig.OUTPUT_FILENAME and invokeToFile() causes a DASException to occur.
Platform |  |  | All.
Description |  |  | The RequestConfig.OUTPUT_FILENAME capability has been removed from ALDSP 3.0. Similarly, the mediator function invokeToFile() is no longer available in ALDSP 3.0 Note that the RequestConfig.OUTPUT_FILENAME flag is still available to ensure backward compatibility with certain methods, however, the feature is no longer supported in ALDSP 3.0 and causes the DASException to occur if used.
Workaround |  |  | None.
CR324401 | 3.0 |  | Binary string datatype parameters to DB2 stored procedures may cause an exception to occur.
Platform |  |  | DB2
Description |  |  | Using binary string datatype parameters (for bit data) with DB2 stored procedures may cause an XQueryTypeException similar to the following to occur:
    Caused by: weblogic.xml.query.exceptions.XQueryTypeException: [ad-hoc], line 3, column 39:
    {err}XP0004: Invalid static type: {http://www.w3.org/2001/XMLSchema}hexBinary
       at
    weblogic.xml.query.compiler.TypeMatchExpression.typeCheckNoCache(TypeMatchExpression.java:124)
       at weblogic.xml.query.compiler.Expression.typeCheck(Expression.java:308)
Workaround |  |  | Do not use binary string datatype parameters with DB2 stored procedures.
CR329108 | 3.0 |  | Projects are not listed when added during new server configuration.
Platform |  |  | All.
Description |  |  | Projects do not appear under a configured server in the Server View when you complete the following steps: You create a new server and then delete the server (maintaining the configured runtime). You create a new dataspace runtime (the target runtime is defined but not the target deployment server). You add a new server using the same runtime created earlier. You add the project while creating the server.
Workaround |  |  | When adding the project, click 'Finish' on the 'Add and Remove Projects' screen instead of 'Click Next and Finish.'
CR339199 | 3.0 |  | SQL substitution statements do not work in applications migrated from ALDSP 2.5 to ALDSP 3.x dataspaces.
Platform |  |  | All.
Description |  |  | SQL substitution statements created for ALDSP 2.5 may no longer work after the application is migrated to an ALDSP 3.0 dataspace. This is because the original SQL statements may have changed between ALDSP 2.5 and ALDSP 3.0.
Workaround |  |  | When migrating applications from ALDSP 2.5 to ALDSP 3.0 dataspaces, recreate and test any SQL substitution statements.
CR351305 | 3.0 |  | Microsoft Visual Studio displays an error when referencing data service libraries containing functions that return item().
Platform |  |  | Microsoft Visual Studio/ADO .NET
Description |  |  | ADO .NET does not support WSDL files that use xs:anyType as the return value. Since ALDSP converts functions that return item() to anyType*, Visual Studio displays an error similar to the following when attempting to reference data services containing these types of functions:
    Custom tool error: Unable to import WebService/Schema.
    Unable to import binding 'librarySoapBinding' from namespace 'ld:Logical/library_ws'.
    Unable to import operation 'XqueryNoInputOutput'.
    The element, XqueryNoInputOutputResponse, from namespace,
    ld:Logical/library_ws, was imported in two different contexts: (StructMapping, MembersMapping).
Workaround |  |  | Do not .NET-enable data service functions that return item().
CR349648 | 3.0 |  | ADO.NET cannot handle a WSDL file that has multiple Schema type sections importing types in an identical target namespace.
Platform |  |  | All.
Description |  |  | ALDSP can generate WSDL files that have multiple type sections referring to an identical target namespace. Although this is a legitimate WSDL file, ADO.NET is unable to process this type of WSDL file. The following provides a couple of situations in which you may encounter this ADO.NET limitation: A web services map refers to functions in a data service with a key, thereby bringing in the return type schema and key schema. Typically the return type schema and key schema are in the same namespace. The resulting WSDL file would therefore have a type section for each schema while the namespace for both type sections would be identical. A web services map refers to a set of data service files that have return types in the same namespace. This would also result in a WSDL file that would have a type section for each schema while the namespace for both type sections would be identical. Similarly, there are other scenarios that can result in this situation.
Workaround |  |  | Do one of the following: Associate a user-created EDS key that does not have the same namespace as the return type namespace. Expose functions and procedures that do not have keys. Limit web service maps to a single data service so that the resulting WSDL file does not include multiple types with an identical target namespace.
CR349102 | 3.0 |  | XQSE procedures and functions do not support element-level security.
Platform |  |  | All.
Description |  |  | Read-only library functions and non-read-only library procedures of a data service do not support element-level security. Element-level and data-driven security apply only to read and navigate functions.
Workaround |  |  | As an alternative to element-level security, you can make relevant XQSE functions and procedures protected or private, and write a single-line XQuery wrapper function for functions and procedures that you need to make public.
CR348492 | 3.0 |  | Eclipse-based tools are installed on Solaris and HP/UX-based systems even though they are not officially supported on these platforms.
Platform |  |  | Solaris and HP/UX.
Description |  |  | In silent/console mode, the AquaLogic Data Services Platform installer application installs Eclipse on Solaris and HP/UX-based systems and creates links to the client tools.
Workaround |  |  | Do not use the tools on Solaris and HP/UX-based systems. The ALDSP Eclipse-based IDE tools are supported on Microsoft Windows and Linux-based platforms. The tools are not supported on Solaris and HP/UX-based systems.
CR347980 | 3.0 | 3.2 | Missing vertical scroll bar in the Design View when viewing a schema tree.
Platform |  |  | All.
Description |  |  | The vertical scroll bar does not appear when viewing a schema in the Design View if no functions exist. This is true even if the schema tree expands beyond the currently displayed view.
Workaround |  |  | Adding a function displays the scroll bar.
CR347865 | 3.0 |  | The tree display in the Test View may not display fonts correctly on Linux-based systems.
Platform |  |  | Linux.
Description |  |  | When using AquaLogic Data Services Platform on Linux-based systems, the default Linux font size may render text in the tree display of the Test View too large, resulting in labels that are vertically clipped.
Workaround |  |  | Decrease the default Linux desktop application font size to 8 point or smaller by choosing Application > Preferences > Font > Application Font. If you do not have the Application menu on your desktop, consult the Linux documentation on how to set application fonts.
CR346978 | 3.0 |  | Unable to specify a key for certain types of entity data services.
Platform |  |  | All.
Description |  |  | When attempting to manually select the fields to specify the key for a web-service-based data service, the AquaLogic Data Services Platform (Eclipse ALDSP perspective) may display an "Invalid Key Specified" dialog indicating that the system cannot save the schema file.
Workaround |  |  | To specify the key for a data service, the following conditions must be met: The key schema element must be in the same namespace as the EDS return type namespace. The key schema element and the path selector elements must be in the same namespace as key schema element namespace.
CR346456 | 3.0 |  | The ALDSP perspective does not appear in Eclipse following installation of ALDSP.
Platform |  |  | Eclipse
Description |  |  | A pre-installed version of Eclipse configured to use JDK1.4 will not be able to detect an ALDSP installation.
Workaround |  |  | When using a pre-installed version of Eclipse, configure Eclipse to use JDK 150_10 or higher.
CR339726 | 3.0 |  | Deploying a dataspace with name longer than 64 characters is not supported.
Platform |  |  | All.
Description |  |  | Dataspace names are limited to 64 characters. Attempting to deploy a dataspace with a name longer than 64 characters causes a 'Name not valid' message to appear in the ALDSP Console.
Workaround |  |  | Use dataspace names with fewer than 64 characters.
CR339900 | 3.0 |  | An illegal URI error message is displayed when creating a new logical data service.
Platform |  |  | All.
Description |  |  | When creating a new logical data service, including preceding or embedded spaces in the schema file or folder name causes an illegal URI error message to appear, similar to the following:
    ERROR: ld:JoinPattern/Logical/CustAddrCredit_1toM_1toM_Inner_Join.ds, line 9,
    column 125: {err}XQ0046:
    'ld:JoinPattern/Logical/schemas/ CUSTOMER_ADDRESS_CREDIT_INNER_JOIN.xsd':
    illegal URI UpdatePattern/JoinPattern/Logical
    CustAddrCredit_1toM_1toM_Inner_Join.ds	line 9	1188433233135	3403
Workaround |  |  | Do not include preceding or embedded spaces in schema file and folder names.
CR352843 | 3.0 |  | AquaLogic Data Services Platform 3.0 requires two Workshop for WebLogic 9.2 MP2 patches to be applied following installation.
Platform |  |  | Workshop for WebLogic 9.2 MP2
Description |  |  | Two required Workshop for WebLogic 9.2 MP2 patches are not automatically applied as part of the AquaLogic Data Services Platform 3.0 installation process.
| This issue does not apply to ALDSP 3.2.
Workaround |  |  | After installing ALDSP 3.0, manually apply the following Workshop for WebLogic 9.2 MP2 patches using the smartupdate tool: RQSU PF7M The patches are in the 'downloaded' state after ALDSP 3.0 installation. You must have Workshop for WebLogic 9.2 MP2 installed to apply the patches.
CR343891 | 3.0 |  | Asynchronous operations do not propagate the transaction context.
Platform |  |  | All.
Description |  |  | Asynchronous web services and Java controls do not propagate the transaction context, regardless of the transaction requirements or settings (such as ReadTransaction). Asynchronous operations are likewise unable to start new transactions.
Workaround |  |  | None.
CR352226 | 3.0 | 3.2 | When performing certain tasks after adding an external function, an error message may appear.
Platform |  |  | All.
Description |  |  | After adding an external function, one of the following errors may appear: Clicking the Source tab may cause a "Resource is out of sync with the file system" error to appear. Clicking the Source tab and modifying the code may cause the following update conflict error message to appear: "The file has been changed on the file system. Do you want to overwrite the changes?" Right-clicking to delete an existing function from the Overview page may cause the following refactoring message to appear: 'The file "..." is out of sync with the underlying file system."
Workaround |  |  | Click Refresh in the Project Explorer. Alternatively, you can click "Yes" to overwrite the file.
CR338127 | 3.0 | 3.2 | Unable to display data lineage graph using Solaris-based web browsers.
Platform |  |  | Firefox web browser on Solaris.
Description |  |  | The Solaris version of the Firefox web browser does not include a native SVG viewer or plug-in. Therefore, you cannot display a graphical view of the data lineage.
Workaround |  |  | Display the data lineage using the tabular view.
CR338237 | 3.0 | 3.2 | Unable to display data lineage graph using HP-UX-based web browsers.
Platform |  |  | Firefox web browser on HP-UX.
Description |  |  | The HP-UX version of the Firefox web browser does not include a native SVG viewer or plug-in. Therefore, you cannot display a graphical view of the data lineage.
Workaround |  |  | Display the data lineage using the tabular view.
CR352805 | 3.0 |  | Unable to deploy Java projects upgraded using ALDSP 3.0.
Platform |  |  | All.
Description |  |  | When upgrading Java projects (required by a data service) using ALDSP 3.0, the upgrade process adds Java 6.0 facets that makes the Java projects non-deployable in a WebLogic Server 9.2 MP2 environment.
Workaround |  |  | Do the following: In the \.settings\org.eclipse.wst.common.project.facet.core.xml file of the upgraded Java project, change the line <installed facet='jst.java' version='6.0'/> to <installed facet='jst.java' version='5.0'/>. In the \.settings\org.eclipse.jdt.core.prefs file of the upgraded Java project, change the value of the following properties from 1.6 to 1.5: org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 org.eclipse.jdt.core.compiler.compliance=1.5 org.eclipse.jdt.core.compiler.source=1.5
CR343934 | 3.0 | 3.2 | Starting to service administration requests on a deployed dataspace that is in the active state generates an error.
Platform |  |  | All.
Description |  |  | When a deployed dataspace is already in the active state, clicking to start servicing administration requests causes a deployment exception to be logged and displays the following message:
    EAR activation for dataspace '<name>' failed. Cause(s): - [Deployer:149156]
    Illegal state for operation start: 'STATE_ACTIVE'
Workaround |  |  | Do not start servicing administration requests on a deployed dataspace that is in the active state. Instead, do the following: Stop the dataspace. Click to start servicing administration requests
CR352634 | 3.0 |  | Certain data service functions cannot be published as stored procedures.
Platform |  |  | All.
Description |  |  | The following types of data service functions cannot be published as stored procedures: Functions with side-effects (procedures) Functions with a simple return type
Workaround |  |  | None.
CR333331 | 3.0 |  | SQL query generates an "Extra characters at the end of a datetime or interval" error.
Platform |  |  | Informix, all UNIX (using the Informix XA JDBC driver).
Description |  |  | When using the native Informix XA driver, certain SQL queries may generate an "Error executing SQL query: Extra characters at the end of a datetime or interval" error, as shown in the following example:
    Caused by: com.bea.ld.wrappers.rdb.exceptions.RDBWrapperException: [ad-hoc],
    line 10, column 1: {bea-err}RDBW0004: [ifrtl20ds]: [SELECT DISTINCT
    t1.cc_type AS c1
    FROM rtlall_20:informix.credit_card t1, rtlall_20:informix.address t2
    WHERE ((t1.customer_id = t2.customer_id) AND (t1.exp_date >= {ts '2007-01-01
    00:00:00'}) AND (t2.city = 'San Jose'))]:
    Error executing SQL query: Extra characters at the end of a datetime or interval.
    	at
    com.bea.ld.wrappers.rdb.exceptions.RDBWrapperException.create(RDBWrapperException.java:81)
Workaround | 3.0 |  | Use the BEA Informix JDBC driver.
CR344349 |  |  | A query produces an invalid XML character in the resulting document.
Platform |  |  | DB2 (using the native DB2 JDBC driver).
Description |  |  | When using the native DB2 driver, a query may produce an invalid XML character (Unicode: 0x0) in the resulting document.
Workaround |  |  | Use the BEA DB2 JDBC driver.
CR345306 | 3.0 |  | SOAP 1.2 encoding not supported for ALDSP native web services.
Platform |  |  | All.
Description |  |  | ALDSP supports SOAP 1.1 and 1.2, and uses the version to determine the type of SOAP binding to create during WSDL generation. The default is 1.1. SOAP 1.2 encoding is not supported. Encoding is an optional feature defined by the SOAP 1.2 specification.
Workaround |  |  | Create JAX-RPC handlers to handle encoded messages.
CR355266 | 3.0 |  | ALDSP 2.5 applications using JPD calls fail to work with ALDSP 3.0.
Platform |  |  | All.
Description |  |  | ALDSP 3.0 does not support applications migrated from ALDSP 2.5 to ALDSP 3.0 that use JPD call outs in update overwrites.
Workaround |  |  | This feature is not available in ALDSP 3.0. Future versions of ALDSP will support this feature.
CR294861 | 3.0 |  | An exception occurs if a timestamp with time zone is fetched before LONG_RAW.
Platform |  |  | All (using the Oracle JDBC driver).
Description |  |  | When using an Oracle database, if a timestamp with a time zone is fetched before a LONG_RAW a "... Stream has already been closed" exception occurs. This is consistent with the way Oracle handles LONG_RAW fetched before blob and clob.
Workaround |  |  | Reverse the fetch order of timestamp with time zone and LONG_RAW when using Oracle.
CR286359 | 3.0 |  | When importing or synchronizing metadata with an Oracle database, the native width of float elements may be incorrectly calculated.
Platform |  |  | All (using the BEA Oracle JDBC driver).
Description |  |  | When importing or synchronizing metadata with an Oracle data source, the width of float elements may be rendered incorrectly (15 instead of 6 or 9). This problem has been observed when using the WebLogic JDBC Oracle driver (version 3.0.5.0).
Workaround |  |  | Metadata synchronization using Oracle's native JDBC driver (Oracle.jdbc.driver.OracleDriver) did not exhibit this problem. Therefore, if the width of native float elements is an issue use the Oracle JDBC driver.
CR292257 | 3.0 |  | Duplicate names are allowed when mapping stored procedures to data services during metadata import.
Platform |  |  | All.
Description |  |  | The SQL name mapping user interface may allow more than one stored procedure with the same name to be configured under the same schema. However, if more than one stored procedure with the same name is configured, the user will see unexpected results in the JDBC metadata API and on execution of the procedures via JDBC.
Workaround |  |  | In the Publish Data Service Functions for SQL Use wizard, manually rename stored procedures so that there are no duplicate names.
CR291781 | 3.0 |  | Excel Add-in will initially attempt to reuse HTTP basic authentication login credentials for all Web services hosted on the same port.
Platform |  |  | All.
Description |  |  | In cases where multiple Web services are configured in a single Excel worksheet, and these Web services are hosted by the same host machine and port number, the Excel Add-In will initially attempt to reuse the previously accepted username/password for these services. If the username/password is not valid for a particular Web service, a login dialog will be displayed. Subsequent Web service invocations during the same Excel session will use the correct login information for each service.
Workaround |  |  | No action has to be taken, unless it is not deemed acceptable that an attempt is made to authenticate a web service call initially with incorrect credentials. In such cases Web services requiring different credentials should be grouped in different servers OR Web services requiring different credentials hosted on the same host/port should be used on separate Excel worksheets.
CR290239 | 3.0 |  | Several underlying WSDL Element definition attributes and Attribute definition attributes are not currently supported in the AquaLogic Data Services Platform Excel Add-in.
Platform |  |  | All.
Description |  |  | The following Element definition attributes are currently unsupported: substitutionGroup default fixed form abstract block final The following Attribute definition attributes are currently unsupported: default fixed form abstract block final
Workaround |  |  | Any WSDL containing the definition attributes listed above may not function as expected. If problems are encountered, remove these definition attributes from your WSDL.
CR284834 | 3.0 |  | You need to maximize performance when accessing data in an Informix database through ALDSP.
Platform |  |  | All using Informix database systems.
Description |  |  | The WebLogic Informix JDBC driver is less performant than the native Informix JDBC driver when accessing data through AquaLogic Data Services Platform.
Workaround |  |  | No workaround necessary, but for best performance with Informix data use the native JDBC driver.
CR279492 | 3.0 |  | When using a data service based on a Web service at runtime, a validation error may occur if form and/or elementFormDefault do not match. This happens because redefinition of the 'Form' attribute is not supported.
Platform |  |  | All.
Description |  |  | At design time, if: The elementFormDefault attribute in the primary schema does not match the elementFormDefault attribute in an imported or included schema, or if the form attribute of an element does not match the elementFormDefault attribute in the primary schema then at runtime validation errors will occur when accessing Web service-based data services.
Workaround |  |  | The elementFormDefault in the primary schema and any imported or included schemas should match prior to compilation. Also, the form attribute of the element should match the elementFormDefault in the primary schema.
CR288384 | 3.0 |  | The Data Lineage feature in AquaLogic Data Services Platform administration console requires the X11 graphical environment in Linux and UNIX environments.
Platform |  |  | UNIX and Linux
Description |  |  | The following error: java.lang.NoClassDefFoundError: sun/awt/X11GraphicsEnvironment may occur while accessing the Data Lineage feature of AquaLogic Data Services Platform Administration Console. The circumstances arise when the Administration Server hosting AquaLogic Data Services Platform Administration Console is running on a Linux or UNIX host with one of the following conditions (not an exhaustive list): A headless environment is in use — for example, without monitor and/or X server. With a monitor, but the user running the administration server is not the same user logged-in from the monitor, and therefore, does not have display permissions to the default display (:0.0).
Workaround |  |  | To resolve this issue, set the following headless property to true: -Djava.awt.headless=true The property can be found in the Weblogic Server startup script (startWeblogic.sh) in the section of the script where the server is started.
CR283262 | 3.0 |  | Unable to add criteria to SQL when using MS Excel with EasySoft or OpenLink.
Platform |  |  | All.
Description |  |  | In Microsoft Query, adding a query criteria using the Add Criteria window, (Criteria ?Add Criteria) throws an error message when accessing AquaLogic Data Services Platform data sources.
Workaround |  |  | To work around this issue: In the Microsoft Query window, select the Records menu option. If the Automatic Query option is checked, then clear this option. Click View > Criteria. This will add a Criteria window to the query window into which you can enter appropriate criteria. To execute query with the criteria added, click Records > Query Now.
CR264597 | 3.0 |  | String comparison operations involving MS-SQL (and Sybase) may return incorrect results when the comparison operation is computed by MS-SQL.
Platform |  |  | All.
Description |  |  | See CR264597 Details
Workaround |  |  | See CR264597 Details
CR204243 | 3.0 |  | When casting xs:decimal from an xs:integer or xs:long, resulting values may not be precisely correct.
Platform |  |  | All.
Description |  |  | As above.
Workaround |  |  | To avoid the possibility of an incorrect result use a string literal instead of an xs:integer literal. For example instead of: xs:decimal( 9223372036854775807 ) use: xs:decimal( "9223372036854775807" )
CR260587 | 3.0 |  | An exception during an SDO update operation can occur if the order of elements in the client diffgram is changed and the Validate option is active.
Platform |  |  | All, using ADO.NET clients.
Description |  |  | Sometimes the order of elements in a diffgram changes, potentially leading to datagraph validation failure.
Workaround |  |  | If possible, turn off validation for the operation.
CR265950 |  |  | End-point name changes do not take effect for operations in document style Web services.
Platform |  |  | All.
Description |  |  | Document style Web services use input (call parameter) types to determine the Web service operation being invoked. The operation name is not included in the SOAP request. For this reason, overwriting the operation name as part of an end point change does not work for document style Web services.
Workaround |  |  | None.
CR256214 | 3.0 |  | Some DBMS systems may not properly handle "pushed down" constants.
Platform |  |  | Database platforms for which only generic support is provided.
Description |  |  | SQL statements sent to base (not specifically supported) database platforms use a "best guess" as to the syntax for string literal. Such formulations may not work in all cases. An example of this is MySQL which requires every backslash [aldsp2: \ ] to be escaped with another backslash. Such cases are not handled by SQL generation code and might result in invalid SQL being generated.
Workaround |  |  | There are two possible workarounds for this problem: Convert constants to parameters by using an external variable instead of a constant. For example: where $customer_id eq fn-bea:fence("CUSTOMER001") Properly escape the XQuery string literal according to the rules of the underlying database.
CR248407 | 3.0 |  | Metadata import wizard fails to detect in/out parameters.
Platform |  |  | All.
Description |  |  | In some situations associated with MSSQL and Sybase stored procedures, a resultset is returned which is not automatically detected.
Workaround |  |  | First, manually build a schema that is mapped to the output of the resultset. Then, when importing metadata use the wizard, add a ROWSET and link it to the previously created schema.
CR242938 | 3.0 |  | Multi-dimension soap arrays are not supported in RPC mode.
Platform |  |  | All.
Description |  |  | The Web services wrapper provided by AquaLogic Data Services Platform only supports single-dimension arrays in RPC style Web services.
Workaround |  |  | None.
CR224815 | 3.0 |  | The initial invocation of a Web service from an application server typically takes more time than subsequent calls. If the timeout value is less than the time required for the first call, the alternate expression (typically a timeout error) will be evaluated.
Platform |  |  | All.
Description |  |  | There is "startup overhead" the first time that a web service is invoked. The overhead can exceed the timeout threshold, leading to the specified timeout error.
Workaround |  |  | When setting timeout on expressions that have a Web service invocation, set the timeout value to be greater than the measured amount of time required for the first invocation.
CR239369 | 3.0 |  | XQueries may generate invalid SQL for databases not supporting UPPER and LOWER (SQL-92). Also, empty input handling for base databases (databases not specifically support) as well as Oracle deviates from the XQuery specification when UPPER(null) or LOWER(null) is pushed down to the database level.
Platform |  |  | All platforms running base databases and Oracle databases.
Description |  |  | There are two aspects to this problem: XQueries containing upper-case() or lower-case() functions are pushed down for database processing as UPPER and LOWER. Some databases may not support these SQL-92 keywords, however. In such cases the generated SQL will be invalid and upon execution will fail. Similarly, input handling by base databases (as well as Oracle databases) may not match the XQuery specification. The reason for this is that the XQuery specification requires that functions return an empty string if input is an empty sequence. However, when these functions are pushed down, they return an empty sequence instead. This happens because LOWER(NULL) is NULL in SQL.
Workaround |  |  | Use the fn-bea:Fence() function to prevent pushdown of upper-case() or lower-case() functions to the database. Example: lower-case(fn-bea:fence(...))
CR207637 | 3.0 |  | An exception appears for XQuery functions accessing metadata derived from Microsoft SQL Server stored procedures containing xs:decimal.
Platforms |  |  | All.
Description |  |  | When importing a stored procedure from Microsoft SQL Server, the BEA JDBC driver incorrectly maps SQL decimal type to schema integer (xs:int) type.
Workaround |  |  | During stored procedure import, change the data type from xs:int to xs:decimal. Alternatively, you can change the imported data service's metadata to specify the schema type for the affected column to be xs:decimal.
CR203394 | 3.0 |  | ROWTYPE input cursor is not supported when creating a data service from a stored procedure.
Platform |  |  | All.
Description |  |  | Stored procedure IN and INOUT cursors containing ROWIDs are not currently supported for metadata import.
Workaround |  |  | Avoid importing metadata on stored procedures which required use of IN or INOUT ROWID parameters.
CR214585 | 3.0 |  | Erroneous results may occur when using fn:matches() with a regular expression containing a caret (^).
Platform |  |  | All.
Description |  |  | The match beginning-of-line operator (^) in regular expressions produces erroneous results when used with fn:matches().
Workaround |  |  | Do not use fn:matches() with a regular expression containing a caret (^).
CR215251 | WLS 9.0 |  | Identifiers within two characters of the maximum length allowed by the DBMS may result in an error.
Platform |  |  | All platforms running Sybase (and possibly other) databases.
Description |  |  | Some DBMS systems place limits on the length of identifiers (30 in the case of Sybase). AquaLogic Data Services Platform places single quotes around queries being pushed to the database, effectively reducing the maximum identifier length by two characters (28 in the case of Sybase).
Workaround |  |  | Possible options include renaming the table or creating a view with a shorter name.
CR226019 | 3.0 |  | Access control policies associated with a data service function may disappear if the function's number of parameters is changed.
Platform |  |  | All.
Description |  |  | A data service function's signature is its QName and the number of parameters (arity) of the function. If you set security policies on a function and then change the number of parameters to the function, the function is treated as new and any previously set policies will no longer be in effect.
Workaround |  |  | If a function's arity is changed, reapply security policies to that function.
CR213916 | 3.0 |  | BEA Informix JDBC driver does not return nullability information.
Platform |  |  | All platforms running Informix.
Description |  |  | The BEA Informix driver does not return information about table column nullability (that is, it is marked as unknown). During metadata import the minOccurs of the elements corresponding to the columns in the generated XML schemas is set to 0.
Workaround |  |  | Modify the imported metadata files by changing the minoccurs value for the nullable columns from 0 to 1.
CR214983, CR211701, CR201821 | 3.0 |  | MSSQL VARIANT datatype has only limited support.
Platform |  |  | All.
Description |  |  | There are two limitations with this MSSQL VARIANT data type (sql_variant): For SQL_VARIANT data type update will fail. You cannot read a null value for the SQL_VARIANT data type.
Workaround |  |  | None available.
CR221015, CR319972 | 3.0 |  | During metadata import the BEA Sybase JDBC driver may not display all tables to which user has authorized access.
Platform |  |  | All platforms accessing Sybase through the BEA Sybase JDBC driver.
Description |  |  | During metadata import the BEA Sybase JDBC driver may not show all tables which have been granted access to the user.
Workaround |  |  | This is a BEA Sybase driver limitation. For the import purpose, you can change to dbo user to see the full complement of available tables.
CR202963 | 3.0 |  | When using BEA Oracle JDBC driver with a TIMESTAMP values, stored procedures are truncated.
Platform |  |  | All platforms running Oracle with the BEA Oracle JDBC driver.
Description |  |  | When using the BEA's Oracle JDBC driver, if a stored procedure returns a TIMESTAMP value then the value gets truncated at the milliseconds level. For example, if the value was: 1997-01-31 09:26:50.124 then the stored procedure will return a 1997-01-31 09:26:50.0 value.
Workaround |  |  | Use the Oracle JDBC driver stored procedures that returning TIMESTAMP values.
CR223429, CR228802 | 3.0 |  | Sybase JDBC driver does not support a getBlob() call.
Platform |  |  | All platforms running Sybase with the Sybase JDBC driver.
Description |  |  | The AquaLogic Data Services Platform cache configuration does not work if using Sybase JDBC driver because the configuration implementation uses a getBlob( ) call on the JDBC driver. The Sybase JDBC driver does not support getBlob( ).
Workaround |  |  | Use the BEA JDBC driver for Sybase databases when utilizing Sybase as the AquaLogic Data Services Platform cache data source.
CR214730 | 3.0 |  | SQL Server JDBC driver incorrectly renders the tinyint maximum value.
Platform |  |  | All platforms running SQL Server with the SQL Server JDBC driver.
Description |  |  | The SQL Server tinyint maximum value of 255 gets interpreted as -1 by the Microsoft SQL Server JDBC driver.
Workaround |  |  | Use the BEA JDBC driver for SQL Server.
CR223486, CR226239, CR226171 | 3.0 |  | The Informix JDBC driver does not support standard JDBC syntax for specifying TIMESTAMP values.
Platform |  |  | All platforms running Informix with the Informix JDBC driver.
Description |  |  | The Informix native driver does not support standard JDBC syntax for specifying TIMESTAMP values. For example: 1979-03-01 00:00:00.0 is not supported.
Workaround |  |  | Use the BEA JDBC driver for Informix.
CR199675 | 3.0 |  | The BEA JDBC driver for Oracle does not support UROWID column type for data retrieval.
Platform |  |  | All platforms running Oracle with the BEA JDBC driver.
Description |  |  | When using BEA JDBC driver for Oracle, retrieving UROWID returns an error, identified by the following message:
    [aldsp2:BEA][aldsp2:Oracle JDBC Driver]Internal error: Net8 protocol error
Workaround |  |  | Use the Oracle JDBC driver if your data contains UROWID column type.
CR212515 | 3.0 |  | The Oracle stored procedure returning PL/SQL RECORD, BOOLEAN, or table with non-scalar element types is not supported.
Platform |  |  | All platforms using Oracle.
Description |  |  | Oracle stored procedure limitations are detailed in the following currently-available document: http://www.stanford.edu/dept/itss/docs/oracle/9i/java.920/a96654/ref.htm#1007714
Workaround |  |  | None available
CR202041 | 3.0 |  | Metadata for SQL Server stored procedures returning CURSOR output cannot be created.
Platform |  |  | All platforms using SQL Server.
Description |  |  | When importing metadata from SQL Server, stored procedures that return CURSOR output are not supported.
Workaround |  |  | Modify the imported data service file to identify the correct data type for the cursor.
CR227440 | 3.0 |  | Metadata for DB2 stored procedures returning CLOB data cannot be created.
Platform |  |  | All platforms using DB2.
Description |  |  | When importing metadata from DB2, stored procedures returning CLOB data are not supported.
Workaround |  |  | None available.
CR265965 | 3.0 |  | Updating or deleting Oracle's CHAR/NCHAR with trailing blanks failed with an Optimistic locking failure message using Oracle JDBC driver.
Platform |  |  | All using Oracle's non-XA JDBC driver.
Description |  |  | With Oracle's non-XA JDBC driver, CHAR and NCHAR columns can only be updated if the number of characters is 1024 or less.
Workaround |  |  | Where possible use BEA's Oracle JDBC driver (Type 4).
CR202962 | 3.0 |  | Oracle stored procedures containing CHAR or NCHAR as input may cause a Server error.
Platform |  |  | All.
Description |  |  | If you have Oracle stored procedures that use an INOUT parameter, you may get an error when you run a stored procedure using AquaLogic Data Services Platform. The error is similar to: java.lang.RuntimeException: ORA-01460: unimplemented or unreasonable conversion requested ORA-06512: at "WIRELESS.SP_CHAR", line 17
Workaround |  |  | Modify your stored procedure call by reducing the size of the INOUT parameter using TRIM. See aldsp2:Sample code related to CR202962, in aldsp2:Listing 1.
## Supplemental Release Note Documentation This section contains code and other additional information related to previously described release notes. #### CR264597 Details ##### Summary String comparison operations involving MSSQL (and Sybase) may return incorrect results when the comparison operation is computed by MSSQL. ##### Description Depending on the database and server configuration, MSSQL Server may use case-insensitive collation for string comparison operations (this is the default configuration). This is in contrast to XQuery string comparison operations, which are case-sensitive. When generating SQL, the AquaLogic Data Services Platform currently does not take database string collation into account. This can lead to different results being produced by expressions that are "pushed down" to an MSSQL database, as compared to the results from their evaluation by the XQuery engine. The following types of expressions are affected: string comparison operations string functions: fn:contains( ), starts-with( ), ends-with() order by clauses group by clauses. For example, consider the following two-row, two-column table based on: CUSTOMER(ID, FIRST_NAME)
ID | FIRST_NAME
--- | ---
1 | John
2 | john
The following XQuery might return different results depending whether it is evaluated by the database or not. for $c in CUSTOMER() where $c/FIRST_NAME eq "john" return $c/ID According to XQuery semantics, this query should return:
    <ID>2</ID>
as only the second record matches the selection criteria. However, when the AquaLogic Data Services Platform pushes the query to the underlying MSSQL database, the following SQL is generated: SELECT t1."C_ID" AS c1 FROM "CUSTOMER" t1 WHERE t1."FIRST_NAME" = "john" This might result in both records being returned by the MSSQL database (with case-insensitive string collation set): <ID>1</ID> <ID>2</ID> ##### Workaround There are several workarounds to conforming with XQuery semantics for string comparisons when pushing computations down to MSSQL. ###### Option 1 Consider changing the collation setting that the database uses for string comparisons. See "SQL Server Collation Fundamentals" document located as of this writing at: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/architec/8_ar Collation can change on a server, database or column level basis. ###### Option 2 Use the fn-bea:fence( ) function to block pushdown. In the above example, this would be rendered as:
    for $c in CUSTOMER()
    where fn-bea:fence(data($c/FIRST_NAME)) eq "john"
    return $c/ID
Notice, however, that this approach may negatively impact performance since the AquaLogic Data Services Platform engine now must fetch and process the entire table. To optimize performance, consider replicating the comparison operation in the query, thus allowing one copy to be evaluated by the database while keeping the second copy on the AquaLogic Data Services Platform engine. The following query illustrates such an approach:
    for $c in CUSTOMER()
    where $c/FIRST_NAME eq "john"
    where fn-bea:fence(data($c/FIRST_NAME)) eq "john"
    return $c/ID
This approach limits the number of results that the XQuery engine must process but still applies the second selection in order to obtain the correct XQuery semantics. #### CR202962 Listing 1 Here is the sample code for CR202962:
    ** CREATE OR REPLACE PROCEDURE WIRELESS.SP_CHAR
    (P_CHAR_IN IN CHAR,
    P_CHAR_OUT OUT CHAR,
    P_CHAR_INOUT IN OUT CHAR,
    P_ID_OUT OUT VARCHAR2 )
    IS
    TEMP VARCHAR2(10);
    BEGIN
    SELECT C_ID INTO P_ID_OUT
    FROM WIRELESS.ALL_DATATYPES
    WHERE C_CHAR = P_CHAR_IN;

    SELECT C_CHAR INTO P_CHAR_OUT
    FROM WIRELESS.ALL_DATATYPES
    WHERE C_ID = '2';

    SELECT C_ID INTO TEMP
    FROM WIRELESS.ALL_DATATYPES
    WHERE C_CHAR = P_CHAR_INOUT;

    SELECT 'WORK' INTO P_CHAR_INOUT
    FROM WIRELESS.ALL_DATATYPES
    WHERE C_ID = TEMP;
    END;
    /
    to adjust the size of PCHAR_INOUT using TRIM (see highlighted code)
    CREATE OR REPLACE PROCEDURE WIRELESS.SP_CHAR
    (P_CHAR_IN IN CHAR,
    P_CHAR_OUT OUT CHAR,
    P_CHAR_INOUT IN OUT CHAR,
    P_ID_OUT OUT VARCHAR2 )
    IS
    TEMP VARCHAR2(10);
    \*ACHAR CHAR(500);

    BEGIN
    ACHAR := trim(P_CHAR_INOUT);
    \*
    SELECT C_ID INTO P_ID_OUT
    FROM WIRELESS.ALL_DATATYPES
    WHERE C_CHAR = P_CHAR_IN;

    SELECT C_CHAR INTO P_CHAR_OUT
    FROM WIRELESS.ALL_DATATYPES
    WHERE C_ID = '2';

    SELECT C_ID INTO TEMP
    FROM WIRELESS.ALL_DATATYPES
    \*WHERE C_CHAR = ACHAR; // used to fail here
    \*
    SELECT 'WORK' INTO P_CHAR_INOUT
    FROM WIRELESS.ALL_DATATYPES
    WHERE C_ID = TEMP;

    END;
    /
Version: | 10gR3
Document Date: | January 2008
Revision: | January 2009

Document generated by Confluence on Jan 14, 2009 21:25