Sun Java Composite Application Platform Suite (Java CAPS) combines technologies from Sun to form a modular and pluggable business integration platform that supports the complete spectrum of service integration requirements. Java CAPS includes repository-based core components and Adapters along with JBI Service Engines and Binding Components, giving you more options and greater flexibility in designing your composite applications. It uses NetBeans as the visual development environment, and the applications you create are deployed on the GlassFish Enterprise Server. This combination allows you to develop custom composite applications, Java EE applications, web applications, mobile applications, and web services using Java EE, JBI, and repository-based components.
The changes for this release are described in the following topics:
To access all the Java CAPS documentation in HTML and PDF format, go to the Sun Java Composite Application Platform Suite documentation page at docs.sun.com.
Java CAPS 6.2 supports newer versions of NetBeans and GlassFish Enterprise Server. In addition, release 6.2 provides support for new operating systems and external systems.
The following sections list the newly supported systems and platforms:
For a complete list of supported operating systems and external systems, see Java CAPS 6.2 Supported Operating Systems in Planning for Java CAPS Installation and Java CAPS 6.2 Components and Supported External Systems in Planning for Java CAPS Installation .
This release of Java CAPS uses the following versions of NetBeans and GlassFish:
NetBeans IDE 6.5.1
GlassFish Enterprise Server 2.1 patch 2
The supported JDK versions are 1.5.0_14 or later and 1.6.0_03 or later. For JDK version information for specific platforms, see Java CAPS 6.2 Supported JDK Versions in Planning for Java CAPS Installation .
JDK 1.6.0_13 and 1.6.0_14 are not recommended for use with Java CAPS.
This release of Java CAPS provides new support for the following operating systems:
Design-Time
Windows Server 2008
Red Hat Enterprise Linux Server 5.3 (64 bit)
Runtime
Windows Server 2008 (OS: 32 bit; JVM: 32 bit)
OpenSolaris 2008.11 (OS: 32 bit; JVM: 32 bit)
Red Hat Enterprise Linux Server 5.3 (OS: 32 bit; JVM: 32 bit)
Red Hat Enterprise Linux Server 5.3 (OS: 64 bit; JVM: 32 bit)
IBM AIX 5L 5.3 (OS: 64 bit; JVM: 32 bit)
Java CAPS 6.2 no longer supports AIX 5L 5.2. Red Hat Enterprise Linux is supported on both the basic Server and the Advanced Platform versions.
This release of Java CAPS adds support for the following browsers and external systems:
Firefox 3.5.2 for accessing all Java CAPS browser components
OpenSSO Web Services Security (WSS) Agent for the HTTP Adapter
SWIFT 2009 message support and SWIFT 2009 certification
SAP JCo 3 for the SAP BAPI Adapter
There are two paths to upgrade the Repository-based Java CAPS components from previous versions of release 6. In the first method, you install Java CAPS 6.2, export all projects from the older release 6 environment, and then import them into the new 6.2 environment. In the second method, you install Java CAPS 6.2, install a patch to update the older release 6 Repository, and then connect to the older Repository from the Java CAPS 6.2 environment. With the second option, you have a side-by-side installation, but you do not use the new Repository. Instead you continue to use the existing upgraded Repository.
The patch to upgrade the Repository is included on your installation media in patches/patches_ml.zip. The patch file is named 6836560-01-REP.zip. For full upgrade instructions, see Upgrading to Java CAPS 6.2.
The changes listed in the following sections provide enhanced functionality to the products or address issues in such a way that affects general usability of the components.
For a list of additional fixes to existing issues, see Issues Addressed in Java CAPS 6.2.
HL7 JCA Adapter
This new component is part of the Adapter Pack, and provides JCA support for HL7 messaging.
Java CAPS includes the following new JBI features and components in this release. In addition, GlassFish clustering is supported for JBI components in Java CAPS 6.2; clustering support does not extend to Repository-based applications.
Scheduler Binding Component
This new component provides scheduling capabilities for initiating JBI services and allows you to schedule triggers to launch other JBI components.
BPEL Service Engine
Support for validate activities.
The ability to add JavaScript code to a business process as an activity.
File Binding Component
Support for UTF-16 characterset encoding.
Configurable options for on-demand reads that allow you remove a file resource once it has been read.
The ability to specify polling file names using Java regular expression-based file name patterns. This is supported through a new file:message attribute named fileNameIsRegex. Note that regex is not supported for output files.
The ability to specify a directory location for lock files rather than the location being relative to the fileDirectory property. This is supported through a new file:address attribute named persistenceBaseLoc.
FTP Binding Component
The ability to specify a directory location for lock files using a new ftp:address attribute named baseLocation.
HTTP Binding Component
Support for OpenSSO Web Services Security (WSS) Agent, which allows the HTTP BC to communicate with OpenSSO Enterprise 8 on a remote or local machine.
LDAP Binding Component
Support for connection pooling.
JMS Binding Component
Support for using multiple queues with WebSphere Message Queue. (CR 6812395)
Java CAPS includes the following changes and enhancements to repository-based components in this release:
General Changes and Enhancements
The ability to use any JAR file by creating a common path, netbeans.user/userdir/lib, for user library JAR files instead of manually importing changed files. You can now copy external JAR files to this directory and to domain/lib on the application server where the applications are deployed. (CR 6735569)
In the Server Type list on Enterprise Manager, “Sun Java System Application Server Domain” refers to both SJSAS 9.1 and GlassFish ES v2.1. (CR 6866695)
Support for prefixes for LDAP groups. To use prefixing for roles and groups, you need to add the following to the JAVA_OPTS section of startserver.bat (or .sh):
-Dorg.apache.catalina.realm.JNDIRealm.ROLE_PREFIX=prefix
where prefix is the full LDAP prefix to use; for example, com.sun.java.
(CR 6760987)
Alert Agent
The ability to set mail.smtp.auth to false when creating or configuring an alert channel on the Enterprise Manager so email can be sent to SMTP servers that do not have authentication. To facilitate this, a new check box named Use Authentication was added to the Channels window that appears when you click New or Edit of the Alert Agent's Channels tab on Enterprise Manager. (CR 6847411)
The ability to send alert notifications to a JMS topic in Sun Java System Message Queue (SJSMQ). To configure the Alert Agent channel, click New or Edit on the Alert Agent's Channel tab on Enterprise Manager. In the Type field of the Channels window, select JMS. The window changes to display JMS properties. (CR 6736357)
Business Process Manager
Provides a graphical display of the appropriate abstract types, supports cast selection, and automatically generates the correct BPEL code to support these features.
The Worklist Manager now provides the ability to filter tasks, allowing you to perform queries and select data based on attributes. The filters support AND/OR operators. (CR 6637459)
Sun Adapter for HTTP
The ability to obtain the length of the messages processed by the HTTP Adapter. Very long messages can increase processing times, and this feature allows you to avoid processing messages that are above a given size. Two new methods were added to accommodate this:
public void head () throws HTTPApplicationException
This method invokes the HTTP head operation. It is in the HttpClientApplication class, and is similar to get except the server does not return the message body in the response. You can set HTTP request data using the HTTPRequest object returned from the getRequest method, and then obtain the result from the HTTPResult object returned from the getResult method. The syntax is:
public int getContentLenght() throws HTTPApplicationException
This method is in the HTTPResult class. It extracts the content length provided by the HTTP Response Headers. The exception is thrown if the content-length header value is not set.
(CR 6860182)
Sun Adapter for SAP BAPI
Provides an easy way to configure an inbound SAP BAPI Adapter for load balancing. To support this, one new property was added to the inbound Adapter properties in the Connectivity Map, and two new properties were added to the inbound External System properties in the Environment. The new properties are listed below:
Use Load Balanced Server: Configure this property in the Connectivity Map. Set it to true if you are using a load-balanced SAP server; otherwise set it to false.
Message Server Hostname: Configure this property in the Environment. On the Properties Editor, expand Inbound SAP BAPI eWay and then select Server Connection Settings to access the property. Specify the host name of the R/3 Message Server.
Application Server Group: Configure this property in the Environment in the same location as above. Specify the name of the SAP application servers that are sharing the work load.
(CR 6725723)
Exposes the following outbound connectivity properties in the OTD for dynamic configuration:
Application Server Hostname
System Number
Client Number
User
Password
Language
System ID
Gateway Hostname
Gateway Service
Message Server Hostname
Application Server Group
Router String
To use the properties, do the following:
Set the connection property values using the set* methods.
Call connectWithNewParams to switch the SAP connection configuration object values with the dynamic values.
Call connect to establish the connection to SAP.
(CR 6733879)
STCMS
Provides a new limit on the number of uncommitted messages a subscriber can have in protected concurrent FIFO mode (this value is configurable, but defaults to 1000). Previously, when using message selectors and protected concurrent FIFO, and a message is received out of order, the STCMS server might time out. The new limit prevents the timeout from occurring. (CR 6845501)
Supports the asterisk wildcard character (*) in destination names. (CR 6601025)
XSD OTD Wizard
When you export an XSD node from the XSD OTD Editor a dialog box appears. The dialog box includes these two new options so you can control the namespace in the marshalled output:
Emit Default namespace
Emit Optional default attributes
OTD inheritance and object casting features can now be used without having to import the XSDArtifact.jar file. (CR 6734083)
Sun Master Index
To improve performance when looking up the active EUID for a merged EUID, an index was added on the merged_euid column of the sbyn_merge table. To implement this change in existing databases, run the following SQL statement against your Master Index database:
CREATE INDEX SBYN_MERGE2 ON SBYN_MERGE (MERGED_EUID ASC)
The ExecuteMatchLogics class includes a method rejectAssumedMatch that can be used to stop an assumed match from occurring. These rejected assumed matches should become potential duplicates, but they are not. To address this, two additional methods were added to the DecisionMakerResult class:
void rejectAssumedMatch() - Flag the assumed match to be rejected.
void acceptAssumedMatch() - Flag the assumed match to be accepted.
In the MasterControllerCoreImpl.processMatch method, when the ExceuteMatchLogics.rejectAssumedMatch method returns true and the disallowAdd method returns false, the new rejectAssumedMatch method is called. See Open Dm MI Issue 135. (CR 6739926)
When Sun Master Index server and client projects are deployed on different servers, you need to modify the NetBeansHome/etc/netbeans.conf file by adding the following text to the netbeans_default_options property.
-J-DJNDI_PROVIDER_URL=\"corbaname:iiop:MasterIndexHost:iiop-port\"
where MasterIndexServer is the name of the server hosting the application server on which the master index server project is deployed, and iiop-port is the port number of orb-listener-1 in domain.xml.
(CR 6755913)
The following sections list the issues addressed by this Java CAPS release. The repository-based issues are listed in this document; links are provided for the JBI issues.
Numerous updates were made to the JBI design-time and runtime components for this release. Below are links to the issues addressed for both design-time and runtime components.
To view all runtime issues that were resolved in this release, see the OpenESB IssueTracker.
To view all design-time issues that were resolved in this release , see the NetBeans IssueTracker.
The links above require you to perform a query for the issues. You can find links to the complete lists of JBI runtime and design-time issues that were resolved under Issues Resolved in the GlassFish ESB Release Notes.
The issues in the following table were also addressed for JBI components:
The following table lists and provides brief descriptions for the issues addressed for the repository-based components for this release.
The following tables list and provide brief descriptions for the issues addressed for master index components for this release.
Table 1 Sun Master Index (Repository) IssuesTable 2 Sun Master Index Issues
Issue ID |
Description |
---|---|
Outbound messages from Master Index are missing the create date and update date values. |
|
The MIDM Audit Log currently displays the create date as a date rather than a timestamp. There can be many transactions within a short period, so a timestamp would be more useful. |
|
When an address field is added with an apostrophe in the text, the field cannot be edited. |
|
The banner for the Information dialog box that appears when you tab away from the Edit Source Record window is partially hidden. |
|
The generated outbound.xsd file is unusable in NetBeans. The following lines were added to address this: xmlns:tns="uri:PersonOutMsg" targetNamespace="uri:PersonOutMsg" |
|
The transaction reconstruction for Master Index is inefficient. In addition, the timestamp is only to the second, which can lead to an exception when two transactions are processed in the same second. |
|
The Transaction Detail does not display when the EPath parser finds invalid characters. |
|
If the same code list is being used for more than one field on the MIDM, then the generated codelist.sql file will contain that code list more than once. This causes an error when running the script. |
|
The update.xsd file that is used to validate update.xml does not allow fields to be specified in the system-fields element in the survivor calculator. |
|
Fields that are defined as not editable can be modified through the Source Record View/Edit window. |
|
The resolved date for potential duplicates is not stored in the database. |
|
The outbound JMS message XML does not have a namespace. |
|
The Clear buttons for child objects on the Source Record window do not work consistently. |
|
A remote call to the Master Controller EJB fails on merge methods because the result object cannot be instantiated on the client. |
|
Data enclosed in square brackets cause a validation error in the FieldDescriptor.validate method. |
|
When a field contains data of the type Long, the text covers the next record. To prevent this, Long data fields only display 20 characters. If the field contains more characters, an ellipsis (...) appears at the end of the data. Mousing over the ellipsis displays the full text. |
|
The generated outbound,xsd file has maxOccurs=”1” for the SBR element. Some transaction types have two SBR elements. |
|
The Print button on the Transactions window does not appear correctly. |
|
Transaction History on the MIDM does not work correctly with Firefox 2.0.x. |
|
When the system and local ID are displayed on the Transaction History and Audit pages, the local ID is displayed first. Since the formatting of the local ID is dependent on the selected system, the system field should appear first. |
|
The MIDM does not allow variable local ID lengths. |
|
The topic connection is not closed when the EJB call that triggers an outbound message completes, resulting in too many open connections. A processing exception is thrown. |
|
Non-updateable fields do not appear on the Potential Duplicate report. |
|
When Master Index generates outbound messages, it includes deleted child objects in the message even though they are flagged as being removed. |
|
When you clean and build an MDM project, the properties are rest for the corresponding EJB project, which removes any custom changes including the additional of JAR files. The EJB project will no longer compile. |
|
The error message is not displayed in certain cases of SEQException, so the cause of the exception is not apparent. |
|
The SBYN_MERGE database table should have an index on the merged_euid column. |
|
6682971 |
Range search fields should be arranged more clearly on the MIDM search windows. |
6708211 |
A record's history displays incorrectly after an unmerge transaction. |
6710895 |
When a record is updated while you are viewing its transaction history on the MIDM, you are not alerted that you are no longer viewing the most current information. |
6858060 |
When you enter a field name with more than 20 characters, a message appears warning of an Oracle limitation. This limitation also exists for MySQL databases, but can be removed since MySQL does not have the same limit. |
6700054 |
The field labels and field values look too similar on the MIDM Records Detail page. |
6703149 |
When you enter an invalid local ID on the Duplicate Records page on the MIDM, an error message appears. When the error message is closed, you cannot click on the local ID field to fix it and the System field is cleared. |
6829621 |
A null pointer exception occurs as a result of a multi-threading issue in the Sun Match Engine and on TransactionObjectDB. |
The following sections list and describe the known issues in this release. Work-arounds are also documented where applicable. In the following sections, links are provided to issues that originated in the OpenESB project, and “CR” refers to the change request number for an issue.
The following are known issues for Sun Adapters:
CR 6676202
If you import a 5.1.0 project that contains an Oracle Adapter (eWay) along with its associated Environment, the Environment Properties window for the External System does not list the Outbound non-Transaction properties. This occurs because release 5.1.0 did not support non-transactional messaging.
To work around this issue, create and configure a new Oracle External System in the imported Environment.
CR 6702711
The MSMQ Adapter implemented the connection pooling feature, which made changes to the template and added properties to the external system.
If you import and build MSMQ projects from Java CAPS 5.1.3 and earlier, you need to open the environment properties and Connectivity Map properties in order to build the project.
CR 6674397
The database table locks if the application server goes down during the middle of an XA Transaction.
To work around this issue, restart the database to release the lock.
CR 6697220
There is no LDAP support for inbound configuration of HTTP, Siebel, and PeopleSoft Adapters.
CR 6779560
The HL7 V3 functionality is disabled from use in HL7 JCA-based EJBs.
CR 6854684
The Oracle Adapter must be installed before installing the Oracle Applications Adapter to ensure the correct JAR files are installed. Note that the Oracle Adapter is installed in the standard Java CAPS installation.
The Adapter Development Kit does not support creating Global RAR (JCA Adapters). (CR 6876283)
eWays created using the 5.1.x version of the eWay Development Kit need to be recreated in Java CAPS 6.x using the Adapter Development Kit.
For BPEL SE stop and restart issues, see Known JBI Management Issues.
The following are known issues for the BPEL Service Engine:
If a BPEL project is deleted using the Delete Source option and a new project is then created that reuses the same name, the newly created project's Properties window cannot be opened.
To work around this issue, stop and then restart the NetBeans IDE.
The BPEL Service Engine only creates connection pools and data sources for the Derby database. This functionality is available to assist developers and is not available for other databases or in a cluster. The BPEL Service Engine does create the persistence tables automatically for all supported databases, but only in standalone mode; this feature is not available in cluster mode. If you create connection pools, data sources, and tables before you install the BPEL Service Engine, it is possible to install the component with persistence enabled. Otherwise, installing to the cluster will fail.
To work around the issue of tables not being automatically created, you can create the tables in standalone mode and then add the BPEL SE to the cluster.
When an optional node is missing in the input message, an invalidVariable exception is thrown. This should not occur since the node is not required. This is due to an issue with BPEL case and message variables of the schema type.
The following is a known issue for the Composite Page Designer:
CR 6624231
A user-generated portlet for a project found in the tutorial operates when deployed on portal server in the application server web container (using a Solaris 10 x86 zone), but it does not render properly in Firefox.
To work around this issue, change the portlet to thin rather than thick. This will not fix the problem entirely but will make it easier to view.
The following are known issues for the Sun Data Integrator Service Engine:
There is a compatibility issue with existing eTL/Data Integrator projects (Modern) from previous Java CAPS releases that are migrated into Java CAPS 6.2. To resolve this issue, you need to update the build-impl.xml file for each project. The file is located in ProjectHome/nbproject. Add the following two entries for each project:
include name="org-openide-io.jar"/ include name="org.openide-explorer.jar"/ |
CR 6681744
Importing eTL 5.1.x projects into Java CAPS 6 using a command line results in an exception.
When importing 5.1.x projects, set the NB_HOME, DB_DRIVERS_HOME, ETL_MIGRATION_CLASSPATH and DB_DRIVER_PATH variables as shown below. Exceptions still persist if the eTL collaborations contain database tables. There are no issues when flat files are used. To work around the database table issue, restart the repository, and then rerun the import command. Alternatively, import the project using the NetBeans GUI.
set NB_HOME=C:/JavaCAPS6/netbeans set DB_DRIVERS_HOME=C:/JavaCAPS6/.netbeans/caps/modules/ext set ETL_MIGRATION_CLASSPATH= %NB_HOME%/ide9/modules/org-netbeans-modules-project-ant.jar; %NB_HOME%/ide9/modules/org-netbeans-modules-projectuiapi.jar; %NB_HOME%/ide9/modules/org-netbeans-modules-projectapi.jar; %NB_HOME%/platform8\lib\org-openide-util.jar; %NB_HOME%/soa2/modules/org-netbeans-modules-etl-editor.jar; %NB_HOME%/soa2/modules/org-netbeans-modules-etl-project.jar; %NB_HOME%/platform8\modules\org-openide-dialogs.jar; %NB_HOME%/platform8\core\org-openide-filesystems.jar; %NB_HOME%/ide9/modules/org-netbeans-modules-db.jar; %NB_HOME%/platform8\modules\org-openide-nodes.jar; %NB_HOME%/platform8\modules\org-openide-text.jar; %NB_HOME%/xml2\modules\org-netbeans-modules-xml-validation.jar; %NB_HOME%/ide9\modules\org-netbeans-api-xml.jar; %NB_HOME%/soa2\modules\org-netbeans-modules-soa-ui.jar; %NB_HOME%/\platform8\modules\org-openide-loaders.jar; %NB_HOME%/platform8\modules\org-openide-windows.jar; %NB_HOME%/platform8\modules\org-openide-awt.jar; %NB_HOME%/xml2\modules\org-netbeans-modules-xml-xam-ui.jar; %NB_HOME%/platform8\modules\org-openide-options.jar; set DB_DRIVER_PATH=%DB_DRIVERS_HOME%/db2adapter/db2builder.jar; %DB_DRIVERS_HOME%/stc/ewaycommon/com.stc.ewayrepositoryapi.jar; %DB_DRIVERS_HOME%/../com-stc-bpms-common.jar; %DB_DRIVERS_HOME%/../com-stc-log4j.jar; %DB_DRIVERS_HOME%/otd/com.stc.otd.fwbuildapi.jar; %DB_DRIVERS_HOME%/stc/ewaycommon/com.stc.ewayutils.jar; %DB_DRIVERS_HOME%\oracleadapter\oraclebuilder.jar; %DB_DRIVERS_HOME%/sqlserveradapter/sqlserverbuilder.jar; %DB_DRIVERS_HOME%/sybaseadapter/sybasebuilder.jar; |
CR 6694617
Importing eTL 5.1.x projects with fixed width tables fails at runtime. Runtime test resulted in a java.sgl.SQLException.
To work around this issue, check whether the execution of the imported eTL project fails due to the exception java.sql.SQLException: LOADTYPE property required in organization clause. If so, open the ETL Collaboration file and verify that the ORGPROP_LOADTYPE attribute is listed for each flat file table that is used. If the ORGPROP_LOADTYPE attribute is missing, then manually add it, save the Collaboration, and then rerun the project. For example:
<attr name="ORGPROP_LOADTYPE" type="java.lang.String" value="FIXEDWIDTH" /> <attr name="ORGPROP_LOADTYPE" type="java.lang.String" value="DELIMITED" /> |
CR 6705843
For a 5.1.x eTL project that was upgraded using the eTL Migration Tool and modified to use the JBI Bridge, command line codegen fails to create the EAR file.
To work around this issue, use the NetBeans GUI to build and deploy migrated Data Integrator projects.
CR 6707522
Changing the sun-etl-engine setting in the Loggers properties does not change log and message levels in the server log file.
CR 6669876
If you import a 5.1.3 eTL project into a Java CAPS 6.x environment, modify the ETL Collaboration, and then re-import the project, the ETL Collaboration does not refresh. In other words, you still see the changes you made earlier, though they should have been overwritten by the import process.
To work around this, do one of the following:
Restart NetBeans. When you open the ETL Collaboration, it will be the original, imported version.
Before you re-import the project, delete the ETL module from the Project window and then manually delete the directory JavaCAPSHome/.netbeans/caps/eTL/Imported Projects/ProjectName.
The following are known issues for the Data Mashup Service Engine:
When querying an Axion database using the current_timestamp function in the WHERE clause, a parsing exception occurs.
To work around this issue, use the now function instead.
For example:
WHERE DEPARTMENT.DEPTID=EMPLOYEES.DEPTID and EMPLOYEES.DEPTDATE <= NOW()
In the Collaboration Properties window for a Data Mashup project, the Response Type field is no longer a drop-down field. It accepts the following values:
WebRowset
RelationalMap
JSON
The following are known issues for the Database Binding Component:
The ojdbc5.jar driver for Oracle does not support prepared statements. The following error message is given:
java.sql.SQLException: Unsupported feature
No resultset is populated, and java.lang.string is selected for every parameter, regardless of the datatype.
To work around this issue, use DataDirect drivers instead of ojdbc5.jar.
No error message displayed if too many parameters are supplied in an insert prepared statement. For example, insert into table values(?,?,?,?,?) into a 3-column table causes a runtime exception, and no parameters are added.
When a prepared statement is used to update or delete parameters, the result displays the default java.lang.String datatype irrespective of the actual datatype. This is because the DataDirect connect of JDBC driver for Oracle does not support returning parameter metadata information for an update statement with mixed literal and parameterized arguments.
To work around this issue, manually change the datatype of the parameter in the generated XSD.
Built-in functions require an alias to avoid misinterpreting names of elements with special characters. For example, the prepared statement select avg(float) from table where number in(...); yields the following error:
ERROR: s4s-att-invalid-value: Invalid attribute value for 'name' in element 'element'. Recorded reason: cvc-datatype-valid.1.2.1: 'AVG(NUMBER)' is not a valid value for 'NCName'.
To work around this issue, use an alias for the function. For example: select avg(float) avg from table where number in(...);
DataDirect driver does not return correct metadata, resulting in an incorrect resultset for output parameters of stored procedures. This is a driver error, and work ticket W809210001 has been filed with DataDirect about the metadata call getProcedureColumns() returning incorrect parameters.
A datetime value cannot be inserted for SQL Server 2005 using the sqljdbc.jar driver. This was caused by a syntax error involving spaces and parentheses.
See the resolution at http://forums.microsoft.com/technet/ShowPost.aspx?siteid=17&postid=4061403.
Stored procedures do not support the BLOB (binary large object) datatype. Although the procedure runs without generating an error, a select statement fails to yield any BLOB data.
When using a Derby database for polling in a clustered environment with the Number of Records option set to a low value, the following exception is thrown and the connection pool becomes unusable:
java.sql.SQLException: Connection closed.
To work around this issue, configure the number of records per poll to a high number; for example, 100 per 1000 records. A second workaround is to create all cluster-related tables in the same database
When the Database BC is implemented in a clustered environment across multiple servers, failover does not always work because the message status in the polling table prevents the in-process messages from being picked up by another instance (or by the same instance when it resumes).
To work around this issue, manually delete records in the polling table that are have a status of “In progress” or “SENT”. This allows running instances to pick up the messages and reprocess them.
When the Database BC is used with a business process that has persistence enabled, the stored procedure fails and an exception is thrown.
When you create a Database BC WSDL document using the wizard, an XSD file named table_name.xsd is also created. If there is already an existing XSD file by that name, it is overwritten.
To work around this issue, make sure the table name is different from any existing XSD file names.
The following are known issues for the Enterprise Service Bus:
CR 6670699
When using Firefox, scrollbars do not appear when a Connectivity Map or Business Process is larger than the viewable canvas. You cannot view the portions of the Connectivity Map or Business Process that are not in the viewable area.
To work around this issue, resize the Connectivity Map or Business Process to fit within the original frame.
CR 6699303
NetBeans throws a SocketTimeOutException when you create a new CAPS repository branch.
To work around this, increase the repository connection timeout to 60000.
CR 6700931
Username token with password digest is not supported. You cannot open the properties to test the password digest for the username token. This support is not fully integrated across NetBeans, WSIT, and GlassFish security.
CR 6706429
If you enable persistence for alert management without restarting the domain, alerts that are generated into the persistence database do not reach the Enterprise Manager.
To work around this issue, restart the domain after enabling alert management persistence.
CR 6706921
The env.sh command does not set the PATH on UNIX. It should set something similar to PATH=$ENGINE_HOME/BIN:$JAVA_HOME/BIN:$PATH to make samples and other executables available.
To work around this issue, set the path manually.
CR 6708514
Java CAPS projects with imported WSDL files fail when the JCD loads (on Red Hat Enterprise Linux 5).
CR 6695408
The OTD Tester does not launch for transactions for OTD libraries. The OTD Tester does not handle dependent JAR files correctly, especially JAR files for Forest API-based OTDs and B2B OTDs.
To work around this issue, modify the netbeans.conf as follows.
Navigate to JavaCAPSHome/netbeans/etc and open netbeans.conf in a text editor.
Locate the line that starts with netbeans_default_options=, and add the following option to the end of the line.
--cp:p JavaCAPSHome/.netbeans/caps/modules/com-stc-antlrimpl.jar
where JavaCAPSHome is the location of the Java CAPS home directory.
Make sure this option is inside the closing double quote that is the last character of the line.
This instructs NetBeans to prepend com-stc-antlrimpl.jar to the IDE's classpath so that the antlr classes supplied by this JAR file, which the B2B OTD libraries depend on, will take precedence over NetBean's default antlr.
Add the following option to the netbeans_default_options= property:
-J-Dantlrmaxaltblklines=3000
The following are known issues for the File Binding Component:
The File BC supports encodings in UTF-8 format only; if the encoding is in non-UTF-8 format, the File BC fails to read the input data. However, data of any encoding style (either UTF or non-UTF-8) and binary data can both be forwarded as attachments.
You can work around the UTF-8 limitation by doing the following:
To read non-UTF-8 data, employ a custom encoder upstream of the File BC and convert it to UTF-8 format, which in turn can be provided as input to File BC.
To write non-UTF-8 data, route the output from the File BC to a custom encoder and convert it from UTF-8 to the preferred encoding format. For more information, refer to Designing Custom Encoders.
On the Windows operating system, when the File BC transforms XML text to bytes, an additional carriage return is added for each newline character. For example, \r\n is converted to \r\r\n.
When using the File BC in on-demand mode and setting a normalized message property value for an assign activity, if you set the property value in the ReadOut node, it is not used by the application. You need to set the values in the ReadIn node.
The following are known issues for the FTP Binding Component:
When the messageCorrelate attribute is set to true in the ftp:transfer element of the FTP WSDL, the FTP BC expects the input file to match a fixed pattern (req.UUID) so the UUID can be used as the ID to correlate a request with a response.
A project with invalid FTP BC property values can be built using command-line builds (ant tasks) but fails validation in NetBeans and is not built. This happens because certain validations that are performed automatically by NetBeans when building a project are not performed by command-line builds (ant tasks). For example, a project with a non-positive or non-integer FTP BC poll value (pollIntervalMillis) fails validation in NetBeans but can be built using ant commands.
On all operating systems, the delimiter for path components specified for preReceiveLocation (in sendTo, receiveFrom, and so forth) is the forward slash (/). Using the backslash instead results in errors such as the following:
FTPBC-E004026.
Exception when preparing ftp connection parameters in inbound processor. java.lang.Exception:
FTPBC-E004019.
No directory name found in PreReceiveLocation [...] when PreReceiveCommand is RENAME or COPY.
When the append attribute is set to true in the file:transfer element of the WSDL file, the FTP BC overwrites the existing output file instead of appending the information to the end of the file.
The following are known issues for the IEP Service Engine:
When using Oracle as the IEP database platform, you must use Oracle JDBC driver version 10.2.0.4.0 or above. The default driver included with Oracle 9.2 (ojdbc14.jar) is version 9.0.2.0.0, and will not work with IEP. To determine the driver version you are using, view the manifest.mf file in the driver JAR file.
When a cluster instance is stopped using the asadmin stop-instance command, IEP processes that are currently running do not fail over to a live instance. This is due to the order in which methods are called during the stop process.
To work around this issue, stop and restart the Service Assembly.
The IEP SE might not work as expected in high availability and failover mode. When there are two instances of the IEP SE and a project is deployed on instance 1 and then on instance 2, instance 1 generates the output in normal conditions. If you undeploy the project from instance 2 and then from instance 1, and then redeploy the project on instance 2 and then on instance 1, instance 2 should generate the output. Instead, both instance 1 and instance 2 generate the output.
To work around this issue, restart the IEP SE on instance 2.
This issue applies only to upgrading from previous versions of Java CAPS. After the patches are applied and the GlassFish application server is started, the IEP Service Engine might be unable to connect to Java DB or might return exceptions indicating that iepseDB does not exist.
To work around this issue, uninstall and then reinstall the IEP Service Engine by performing the following steps:
In the Services window of the NetBeans IDE, expand Servers > GlassFish V2 > JBI > Service Engines .
Right-click sun-iep-engine and select Uninstall. The IEP Service Engine is uninstalled.
Launch the GlassFish Admin Console.
In the Navigation panel on the left, expand Resources and expand JDBC, and select JDBC Resources.
Delete the resources named jdbc/iepseDerbyXA and jdbc/iepseDerbyNonXA.
If the iepseDB directory exists in the install-dir/.netbeans-derby directory, log out of the NetBeans IDE and remove the iepseDB directory.
Restart the NetBeans IDE and then restart the GlassFish application server.
In the NetBeans Services window, right-click Service Engines and select Install and Start.
In the window that appears, browse to install-dir/appserver/domains/domain1/jbi/autoinstall and select the iepserviceengine.jar file.
Accept the default configuration and click Install. The IEP Service Engine is installed and connected to Java DB (iepseDB) successfully.
When the IEP database is configured to use Oracle, the Union operator may not work as expected. In a test case, two Relation Aggregator operators were connected to the Union operator. The output was expected to contain seven events. However, the output contained only three events. In another test case, two Time Based Window operators were connected to the Union operator. For every event that is received by one of the Time Based Window operators, the Union operator is calculated as expected. However, the Union operator is recalculated when the Time Based Window operator expires, which seems to be incorrect.
The relation aggregator does not work as expected for various operations, and the output is an incorrect number of events. For example, invalid aggregations are not removed for Oracle. In certain cases with Derby, aggregations are updated even if the aggregation has not changed, leading to extra events.
When running the IEP SE on Solaris SPARC using an Oracle database, connection errors might occur.
To work around this issue, restart the GlassFish server.
When IEP SE is running on Solaris SPARC and using a Derby database, not all events are processed. This is due to an issue with a JDK method used by the IEP SE to get the current timestamp.
To verify whether you are having this issue, send events to an IEP application and verify the timestamp.
When the IEP SE is configured for Oracle and a RelationStream operator is used to retrieve events from an input relation, duplicate events may be produced.
To work around this issue, use an InsertStream operator instead of RelationStream. Another option is to use a Distinct operator after the RelationStream operator to filter duplicates. Note that neither of these options may be able to completely replace RelationStream
The IEP Service Engine creates connection pools and JDBC resources during installation. This automatic creation takes place only when the IEP Service Engine is installed in a GlassFish Domain Administration Server (DAS) instance. If the IEP Service Engine is installed in a GlassFish standalone instance, then the IEP Service Engine does not create the connection pools and JDBC resources.
To work around this issue, manually create the connection pools and JDBC resources and then install the IEP Service Engine.
An IEP Module project can have multiple event processors, and one database connection is created and kept open for each event processor. Therefore, each event processor has a dedicated database connection. When the event processors stop running (for example, when the Composite Application is stopped), this connection is released. Because the IEP SE uses database connections for other tasks, the maximum pool size of the connection pools should be larger than the number of event processors that are running in the IEP SE by a count of 10.
By default, the IEP SE generates a WSDL document for each IEP process document, and regenerates the WSDL document every time the IEP process is edited. By default, bindings and services are generated in this WSDL, and these elements usually need to be edited to work properly when deployed. However, if these WSDL documents are edited, the edits are replaced by the default values every time the WSDL document is regenerated.
Bindings and services created in the CASA Editor are not affected when the IEP WSDL documents are regenerated. However, you should not clone the IEP WSDL file to customize its generated bindings and services in the CASA Editor because updates to the generated WSDL files are not updated after cloning. Over time, the cloned and edited WSDL deployed for the bindings becomes inconsistent with the WSDL document deployed for the IEP Service Engine. Consider using the following procedure for setting up your Composite Application and IEP project for iterative development:
Define the IEP Module project.
Turn off the generation of concrete configuration elements (bindings and services) in the IEP generated WSDL files by setting the always.generate.abstract.wsdl flag in the project.properties file to true.
Build the IEP Module project.
Add the IEP Module project to a new Composite Application project and build the project.
Define the binding components and connections using the CASA Editor. To use the composite application test feature, define SOAP input and file output bindings as appropriate for your test environment.
Build and deploy the composite application.
Run tests.
Change the IEP Module project, adjust binding component and service configurations if necessary in the CASA Editor, and rebuild and redeploy the composite application. Run tests and repeat.
The following is a known issue for Java Application projects with JAXB:
In Java Application projects for JAXB, JAXB class files are deleted at runtime and the application fails to run.
To work around this issue, deselect Compile on Save in the Project Properties window. Compile on Save is located in the Build > Compiling properties node.
The following are known issues for the projects containing a JBI Bridge:
CR 6683017
When a JCD calls the JBI Bridge, the Composite Application fail to deploy even though both the repository-based project and the JBI Bridge project build successfully. The deployment produces the following error message: ERROR: Starting service assembly failed.
To work around this issue, manually start the service assembly using the JBI Mapper.
CR 6646537
The JBI Bridge does not work with abstract WSDL. The build process for the JBI Bridge only works if the WSDL file used by the business process contains the binding and service sections.
To work around this issue, edit the WSDL file using the JBI WSDL Editor. Add the appropriate binding information and then reimport the WSDL file back to the repository-based project.
CR 6654477
Single-part input/output literals are not supported between BPEL 1.0 and BPEL 2.0 engines across the JBI Bridge.
The following are known issues for the LDAP Binding Component:
When the authentication type is not agreed upon between the LDAP server and client, an AuthenticationNotSupportedExceptionoccurs. For example, the error occurs when a client specifies strong SSL authentication with a DSEE 6 server that handles none or simple authentication, but not strong authentication.
No design-time validation is performed when an invalid root DN is supplied (such as dc=sun instead of dc=sun,dc=com), and the user is (incorrectly) allowed to create LDAP WSDL files with the incorrect values. Such a project correctly fails at runtime with a No such object error message.
The following is a known issue for Sun Master Index projects:
CR 6718625
If a field is included in the EDM reports but is not configured to be visible on the EDM, the reports will not generate.
To work around this issue, do not include fields that are not visible on the EDM in the reports.
CR 6867017
When a Master Index application is redeployed from NetBeans, updates to the deployment destination (for example, host name and port number) are not updated.
To work around this issue, deploy from the GlassFish Admin Console or the command line. To deploy from NetBeans, open NetBeansProjects/ProjectName/nbproject/private/private.properties in a text editor and modify the j2ee.server.instance property. For example:
j2ee.server.instance=[C:\\CAPS62\\appserver]deployer:Sun:AppServer::localhost:21048
CR 6757529
In the Sun Match Engine, the date comparison functions (dY, dM, dD, and so on) do not work correctly when used as a direct string comparison rather than a relative distance calculation. That is, the y option does not return the correct value.
To work around this, use date comparison functions with a direct string comparison (the n option).
The following are known issues for the XSLT Service Engine:
A SEVERE error appears in the server log when running an XSLT project with an HTTP/SOAP binding. The error is:
Unable to create envelope from given source because the root element is not named Envelope
This is an erroneous log message and does not interfere with the running of the XSLT project.
To prevent the message from being logged, set the SAAJ Logger for the XSLT SE to OFF.
If you change text in the XML editor, clicking Validate does not save the changes before compiling and validating the code. You need to click Save All before validating the XML.
Issue 1760 and NetBeans Issue 162869
The XSLT SE does not support catalog.xml, which is required for the correct Referenced Resources support. For example, when referencing a WSDL document from another project using Project Reference, the XSLT project fails to deploy.
The following are know issues for Composite Application (CA) projects:
A test case cannot be created using the SOAP12 binding, even though GlassFish otherwise supports SOAP 1.2.
To work around this issue, use a SOAP binding instead of SOAP12.
NetBeans Issue 152455 (now 138971)
When the design canvas of the CASA Editor is at certain sizes, the display of its scrollbars oscillates and CPU usage goes to 100%.
To work around this issue, increase the size of the window or of the CASA Editor design canvas so scrollbars do not display.
When a new project type is freshly installed, the Composite Application project is initially unable to determine the service engine type and is thus unable to deploy the service unit. The following error message appears:
Cannot add JBI module project_type. Its target component type engine_name is unknown.
To work around this issue, stop and then restart the NetBeans IDE.
You cannot rebuild a Composite Application project after a Service Unit (SU) has been deleted from it.
To work around this issue, manually edit the build-impl.xml file and delete all sections that operate on the deleted SU.
The following are known issues in managing JBI components:
Issue 884, Issue 885, and OJC Issue 559
When a component is shut down while there are configuration errors, it cannot be restarted and its configuration settings cannot be edited within the NetBeans IDE or the web console.
When this occurs, the state of the component changes to “Stopped”, and you can reconfigure the properties correctly. After you correct the property values, shutdown and then restart the component in order for the changes to take effect.
For the BPEL Service Engine, when there is an error in the JDBC resource name, the engine will create the resource with the given name and assume that the default connection pools are used. If the Derby database is not started, the default connection pools are not created.
Selecting the Compile on Save option in a Java Application Project Properties window causes a JAXB class file to be deleted at runtime. The project fails at runtime with the following exception:
Exception in thread "main" java.lang.NoClassDefFoundError
To work around this issue, deselect the Compile on Save option. This option is located on the Java Application Properties window under Build > Compiling.
The following are known localization issues:
When you perform the following steps in a non-English locale, you cannot expand the GlassFish server tree to select the value.
Launch the New File Wizard to create a new JCA message-driven bean.
Complete steps 1 through 3 on the wizard.
For the Connection URL in step 4, click the ellipses button and start the GlassFish server to obtain the JNDI value.
To work around this issue, use the GlassFish Admin Console to retrieve the JNDI value to enter for the Connection URL. The value is located under Resources > Connectors > Admin Object Resources.
CR 6883496
When a Composite Application is created on a Chinese locale, the build process fails for the Composite Application.
The following are known installation issues:
CR 6706840
When installing Java CAPS on Red Hat Enterprise Linux 5, the installer stops responding when the installation is complete.
To work around this, select the 'X' button in the top right corner of the window. A new window appears with a message that says “Installation not complete”. Select OK on this window.
CR 6684782
Uploading SAR files fails on AIX 5.3 with JDK 6.
To work around this issue, only use JDK 5 with AIX 5.3 and not JDK 6.
CR 6710310
Running the importProject.sh command fails on AIX 5.3.
To work around this issue, only use JDK 5 with AIX 5.3 and not JDK 6.
CR 6820147
When running on OpenSolaris 2008.11, the GlassFish server times out on startup. When you run asadmin start-domain, the following message appears, even though the domain is actually started and functioning:
Timeout waiting for domain domain1 to go to starting state.CLI156 Could not start the domain domain1.
CR 6797262
Before you install Java CAPS on OpenSolaris, make sure the following packages are installed for OpenSolaris. These are not included in the default package set, and Java CAPS installation will fail without them.
SUNWfontconfig
SUNWj6dev
SUNWj6rtx
SUNWxwplt
SUNWdbus
SUNWxcu4 (on OpenSolaris 2009.06)
CR 6881305
When using JDK 1.6.0_12 or later with Java CAPS, issues occur with the wizards and editors used to develop applications. In addition, the installation fails on Windows when using JDK 1.6.0_13 or 1.6.0_14. The Java CAPS Installer does not support JDK release 1.6.0_04 in 64–bit versions on Solaris SPARC or AMD environments. The installer also does not support JDK 1.6.0 or later on AIX 5.3.
To work around this issue, only use JDK versions 1.6.0_03 to 1.6.0_11 when using JDK 6 with Java CAPS, with the exceptions noted above for Solaris SPARC, AMD, and AIX.
CR 6881054
On the installer, certain messages are truncated and the full text cannot be read. In some cases, you can expand the width of the installer window to view the entire message.
CR 6865075
When you import 5.0.x projects into Java CAPS 6.2, the connections in the Connectivity Map might not be brought forward correctly. If this occurs, you will see Connectivity Map errors when building the Project. The error messages provide information about the connections that need to be fixed.
CR 6881054
On the JDK selection section on the Java CAPS installer, messages are truncated and cannot be read.
The following are known interoperability issues:
CR 6707146
The default Access Manager setup provided by Java CAPS does not work with Federated Access Manager 8.0.
CR 6662622
The Worklist Manager portlet from Java CAPS 5.1.3 does not deploy on Portal Server 7.
CR 6761432
You cannot undeploy amserver (under GlassFish V2 > Applications > Web Applications). When you try to undeploy amserver, the connection between NetBeans and GlassFish is broken.
CR 6703514
Access Manager is preconfigured for the localhost, causing remote accessibility issues when it is accessed through FQDN
To work around this issue, perform the following steps:
Stop GlassFish.
Navigate to JavaCapsHome/appserver/domains/DomainName/applications/j2ee-modules/amserver/WEB-INF/classes and open AMConfig.properties in a text editor.
Uncomment the com.sun.identity.server.fqdnMap[<invalid-name>]=<valid-name> property.
Modify the property by substituting the proper values for <invalid-name> and <valid-name>.
Restart GlassFish.
CR 6882644
Deployment of Web Space Server WAR files fails if GlassFish and Web Space Server were installed from different file-based distributions.
To work around this issue, deploy the files manually by either using the Admin Console or copying the files to the domain autodeploy directory.
Java CAPS 6 is tested and certified to work with NetBeans plugins that are installed by the Java CAPS Installer. Installing any other NetBeans plugins or plugin updates to your NetBeans IDE can cause compatibility issues. This recommendation does not apply to plugins or updates that you get from Java CAPS Support.
When starting NetBeans IDE, you may be prompted to install updates for the third-party plugins in your IDE. Do not install them. To avoid being prompted in the future, please follow the instructions below:
On the NetBeans IDE, click Tools and then select Plugins.
In the Plugins window, select the Settings tab.
Select only CAPS Repository Update Center and deselect any other Update Centers.
Click Close to save your changes and close the Plugins window.
If you want to use other NetBeans plugins, backup the .netbeans directory, which can be found in the top level Java CAPS installation director. Alternatively, use a separate NetBeans installation to try other plugins that are not included with Java CAPS. If you need to restore a backed up .netbeans directory, make sure that your NetBeans IDE is not running. Then remove the current .netbeans directory and replace it with the backed up directory.
CR 6684658
The STCMS server does not shut down properly when GlassFish Enterprise Server is run as a Windows service. Even after stopping the service, STCMS is still present in the Windows task manager.
To work around this issue if you install Java CAPS 6 on Windows and you intend to run Java CAPS as a Windows service, add the following line to domain.xml after installation:
<jvm-options>-Dcom.sun.enterprise.server.ss.ASQuickStartup=false</jvm-options>
CR 6744439
The asadmin commands for creating and managing an STCMS instance are not listed in the output of asadmin help. The available STCMS commands are:
create-stcms
delete-stcms
list-stcms
show-stcms-status
enable-stcms
disable-stcms
You can access the help information for these commands by typing asadmin help CommandName, where CommandName is one of the commands listed above.
You must have STCMS installed in order to access the help information for these commands. STCMS is not supported on Mac OS, and is thus not included as part of the default Java CAPS installation on Mac.
CR 6785405
In order to use the recycle-size feature to limit the number of server.log files that are created, you need to install the Sun GlassFish Enterprise Manager Performance Advisor. This patch can be downloaded from http://sunsolve.sun.com. The patch ID is 140751. Follow the installation instructions in the readme file. The readme file also provides links to additional information about the Performance Advisor.
CR 6882939
When you install Java CAPS on Mac OS using the Chinese locale, the default domain is not created correctly.
The following are known issues for working with Java CAPS JBI components in a clustered environment:
When you configure cluster instances using the GlassFish Admin Console, the configuration does not propagate to any new cluster instances. This is because instances are configured individually. In some cases, this can cause deployment to fail.
To work around this issue, configure each cluster instance individually or use the following asadmin command to configure all instances in the cluster:
asadmin update-jbi-application-variable --component=sun-jms-binding name=value
See asadmin help for usage information.
CR 6883003
A web application is unable to find the WSDL file on a second instance when the web service is deployed in a GlassFish cluster where the first node includes the DAS and a node agent, and the second node includes just a node agent.
To work around this issue, on the second cluster instance create a directory hierarchy for DAS and copy or create a symbolic link to the WSDL file in the location where the web application expects to find it. For example:
mkdirhier /opt/glassfish/domains/domain1/applications/j2ee-modules/WebAppName/WEB-INF/wsdl/client/WSDLName/
cd /opt/glassfish/domains/domain1/applications/j2ee-modules/WebAppName/WEB-INF/wsdl/client/WSDLName/
cp /opt/glassfish/nodeagents/ClusterNodeAgent/InstanceName/applications/j2ee-modules/WebAppName/WEB-INF/wsdl/client/WSDLName/WSDLName.wsdl
ln -s /opt/glassfish/nodeagents/ClusterNodeAgent/InstanceName/applications/j2ee-modules/WebAppName/WEB-INF/wsdl/client/WSDLName/WSDLName.wsdl
MySQL does not support microseconds, so if an incoming message contains any time or timestamp fields that drill down to the microsecond, the fractal part of the seconds is ignored in the database. For example, if the value of a timestamp is '2010–12–10 14:12:09.019473', the last six digits (019473) are ignored.
CR 6761256
The Enterprise Manager command stopserver throws an exception when Enterprise Manager is not running instead of letting you know it is not running.
CR 6744536
There is no mechanism to switch on and off the Unique Particle Attribution (UPA) rule for the XML Schema, which prevents schema ambiguity. In Java CAPS 5.1.3, the default is to have UPA checking disabled; in Java CAPS 6, the default is to have UPA checking enabled.
To work around this issue, create a file named XML.properties, and add the following line:
enforceUnqPartAttrib=false
Save the file to /.netbeans/caps/config/Preferences/com/stc/capsee/cor/utilities. This disables UPA checking. To enable UPA checking, remove the file or set the parameter to true.
CR 6662117
Release 6 does not support using components from previous 5.x releases with Release 6 components. For example, you cannot connect to a Release 6 Repository from a 5.1.3 Enterprise Designer, and you cannot connect to a 5.1.3 Repository from NetBeans. It is similar for Enterprise Manager.