IBM(R) WebSphere(R) Host Access Transformation Services (HATS) Refresh Pack V6.0.10

Copyright International Business Machines Corporation 2002, 2009. All rights reserved. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

Release notes

This document includes the following information:

V6.0.10 Description

This refresh pack may be applied to HATS Studio V6 installations. HATS Studio V6 may be installed in conjunction with Rational Software Development Platform V6.0.

Update history

This refresh pack contains fixes for APARs as well as internal fixes.

Problems fixed in this refresh pack

Please see the HATS support page for a more detailed description of these APARs.

This update includes the following fixes:

IC58460 - Hidden fields are not being masked properly with DBCS.

IC59452 - Screen size 27X132 being rendered as 24X80.

IC61286 - Blank browser screen returned instead of HATS Admin console when z/OS WAS bootstrap and orb listener ports not set to 2809.

V6.0.9 Description

This refresh pack may be applied to HATS Studio V6 installations. HATS Studio V6 may be installed in conjunction with Rational Software Development Platform V6.0.

Update history

This refresh pack contains fixes for APARs as well as internal fixes.

Problems fixed in this refresh pack

Please see the HATS support page for a more detailed description of these APARs.

This update includes the following fixes:

IC53334 - Missing Data when the alternate=Default attribute is used on a HATS component tag.

IC53441 - Scroll bar not lining up on right side of dialog box.

IC53594 - Customer getting errors when trying to generate portal project from a HATS project.

IC53634 - Data being rendered from previous screen after macro runs.

IC53658 - 5250 session takes 120 secs to timeout when trying to use duplicate workstation IDs.

IC54144 - Memory leak in HATS application.

IC54175 - Unable to serialize Integration Objects.

IC54546 - An Integration Object does not handle SOSI correctly.

IC54642 - HATS Administrative Console displays configured host name, not the actual host name (if a backup host name has been used.)

IC54843 - Extra threads started before first connection request.

IC55166 - Prompts/Extracts not completely deleted when changes are made using Host Terminal.

IC55230 - Problem with "Insert Data" action in screen event after applying HATS V6.0.8.

IC55512 - Create IO & chained IO menu options missing when you right click the macro menu.

The following problems were found internally, so there is no additional information about them on the HATS support page.

36989 - Memory leak in HATS toolkit (Font objects not being disposed).

37084 - Input-related widgets fail to render if the Extract field captions boxes are not checked for the components.

37401 - Custom component can't render a subfile in the dialog widget.

37722 - NoClassDefFound error when shutting down the runtime for RCP projects.

38138 - Text can be pasted into a protected area of the screen.

V6.0.8 Description

This refresh pack may be applied to HATS Studio V6 installations. HATS Studio V6 may be installed in conjunction with Rational Software Development Platform V6.0.

Update history

This refresh pack contains fixes for APARs as well as internal fixes.

Problems fixed in this refresh pack

Please see the HATS support page for a more detailed description of these APARs.

This update includes the following fixes:

IC52255 - Very slow response time for popup on IO when many inputs.

IC52464 - Input Fields come up as blanks.

IC52472 - Number entered on numeric keypad using numlock is followed by a letter when using Firefox browser.

IC52564 - HATS V6 Input widget CSS styles affect other non-HATS input fields on the same portal page.

IC52688 - Check box and radio button not being rendered with usual dotted line to show focus.

IC52693 - Macro recorder does not recognize new screen when "Auto Enter" is used.

IC52818 - HATS using DBCS codepage sends just character(s) typed in one type of input field, but HOD/PCOMM seem to send them with padding.

IC52879 - Not able to add background image to function key button.

IC52946 - Input field loses focus if radio button defined on page.

IC52968 - Certain screens in HATS not accepting input data.

IC53056 - Font size selection added to stylesheet to improve ENPTUI scrollbar sizing.

IC53208 - HATS BIDI error when HATS 6.0.7 project run on WAS 6.1.0 server.

IC53213 - Specified LU or pool name field not updated after multiple exits and entries into the field.

The following problems were found internally, so there is no additional information about them on the HATS support page.

32469 - Checkbox widget has no focus during runtime.

36661 - Autoadvance is not working correctly for Opera browser.

36671 - BIDI: Wrong data rendering in RTL tables in Model I Pages.

36703 - disconnectOnClose does not work with URL rewriting.

36769 - BIDI: A macro internal error causes the macro to stop.

36884 - Eliminate servlet clash messages received when running on WebSphere Application Server V6.1.

36891 - DBCS: The final DBCS was trimmed on O field when SI/SO off.

36900 - 27x132 screen size does not work for 5250W connections.

36920 - DBCS: HATS should not accept a DBCS name when creating a connection.

V6.0.7 Description

This refresh pack may be applied to HATS Studio V6 installations. HATS Studio V6 may be installed in conjunction with Rational Software Development Platform V6.0.

Functions extended by this refresh pack

Host code mapping for codepages 1390 and 1399

There have been host-to-PC code mapping inconsistencies for DBCS using codepages 1390 and 1399. In Host On-Demand, the UseHODCDRA1399 flag controls the Unicode remap to correct the inconsistencies.

Beginning with this refresh pack, HATS has adopted the Host On-Demand setting. The default for UseHODCDRA1399 is true in HATS V6 beginning with this V6.0.7 refresh pack. To disable the UseHODCDRA1399 flag in HATS:

  1. Select the HATS project.
  2. Select the specified connection in the HATS connections folder.
  3. Click Advanced.
  4. Click Add.
  5. Select UseHodCDRA1399 under Name.
  6. Set the parameter value to false.
  7. Click OK.

Selection list component setting modified

Prior to this refresh pack, the selection list component always sent an AID key to the host, even if the input field was blank. Sometimes, you may not want to send an AID key to the host.

With this refresh pack, a check box setting labeled Auto submit on select is available for the selection list component. By default, the box is checked, and the AID key is sent to the host. However, if no AID key needs to be sent to the host, clear the check box.

Cut, copy, and paste enabled in HATS Host Terminal

The Eclipse Standard Widget Toolkit (SWT) provides two key combinations for each of the cut, copy, and paste functions:

Cut
Ctrl-X and Shift-Delete
Copy
Ctrl-C and Ctrl-Insert
Paste
Ctrl-V and Shift-Insert

Prior to this refresh pack, only the Shift-Delete, Ctrl-Insert, and Shift-Insert key combinations worked in the HATS Host Terminal.

This refresh pack enables the Ctrl-X, Ctrl-C, and Ctrl-V key combinations to work also.

Update history

This refresh pack contains fixes for APARs as well as internal fixes.

Problems fixed in this refresh pack

Please see the HATS support page for a more detailed description of these APARs.

This update includes the following fixes:

IC50610 - HATS runtime customizes a host screen that is different than the recognized screen customization event.

IC51053 - Autotab advance occurs even if user doesn't type anything.

IC51093 - DDS HTML fields are being appended in host screen capture files.

IC51108 - ArrayIndexOutOfBoundsException for large variable with DDS HTML keyword.

IC51218 - Busy.jsp is not displayed in English; it is displayed in Japanese.

IC51363 - StringIndexOutOfBoundsException: String index out of range: -1 causes HAT0400 error.

IC51579 - HATS V6 disconnect event not processed when browser running asynchronous update applet is closed (by pressing X in corner.)

IC51661 - Macro Record does not recognize "pageup" and "pagedown" as AID keys.

IC51843 - The ">" symbol incorrectly performs as a ">=" condition.

IC51903 - HATS V6 asynchronous update applet stops working, meaning that users must manually refresh screens.

IC51956 - Memory leak involving HODWatcher objects if IOGV.setGlobalVariable is called before HATS entry servlet.

IC51968 - 1 character input field with ">" or "?" value not sent to host.

IC52013 - HATS V6 ECL0010 parameter position not valid.

IC52164 - Ampersand in drop-down string fails at runtime.

The following problems were found internally, so there is no additional information about them on the HATS support page.

33241 - Maintain the cursor position in HATS macro editor when saving the macro.

34211 - Replacing text containing trailing blanks causes widgets to display incorrectly.

35670 - Template is corrupted in Host screen preview.

35721 - BIDI: Text is reversed in application host screen preview.

35730 - HATS Administration language preference setting ignored and reset.

36439 - Modified project-level component or widget settings not correct in Properties view.

36627 - Text replacement spanning multiple fields does not replace text.

36642 - BIDI: Numeric swapping in text replacement is incorrect.

36643 - BIDI: Incorrect matching of unicode numbers in screens.

36644 - BIDI: Design view presentation is slow for screens with many field widgets.

36652 - Null Pointer Exception when running portlets.

36653 - SBCS: autoAdvance not triggered in numeric shift field.

36654 - Custom rendering set creates empty prepopulated transformation.

36658 - HATS portlet steals focus on click when multiple portlets are on a page and autoAdvance=true.

36659 - Visual Table not displayed by Netscape, Mozilla, or Firefox.

36666 - Script error in studio running portlet project.

36669 - DBCS: The final DBCS was trimmed when SI/SO off.

V6.0.6 Description

This refresh pack may be applied to HATS Studio V6 installations. HATS Studio V6 may be installed in conjunction with Rational Software Development Platform V6.0.

Functions extended by this refresh pack

Portlet deployment support for WebSphere Portal Version 6.0.x

HATS 6.0.6 added support for portlet deployment on WebSphere Portal Version 6.0.x.
Note: The Portal Tools necessary for creating HATS portlets are not available in all HATS supported client software. Please refer to the documentation for the specific client software to determine whether Portal Tools are included.

Alternate way to input negative numbers in signed numeric fields

Beginning with HATS Version 6.0.6, you can enter a minus sign in the first position of a signed numeric field to input a negative number instead of using Field- and incurring a round trip to the server. When using this feature, you should enable the Automatically delete host field data setting. You should also clear any unwanted prefilled data from the field before tabbing to another field.

Notes:
1. Do not enter a minus sign in the first position and also press Field-, Field+, or Field Exit.
2. The previous method of entering negative numbers into signed numeric fields still works.

New setting to control the selection of text on focus

When you tab to a new input field in the HATS browser, and the field receives focus, all the text in the field is selected. You might not always want the text to be selected.

A new setting, selectAllOnFocus, has been added to enable you to control whether the text in the field is selected. There are two values for the setting:

true
HATS functions as it did in prior to this refresh pack; all the text in the field is selected when the field receives focus.
false
None of the text is selected when the field receives focus, and the caret is positioned in the first input position. This is similar to the way that a typical terminal emulator functions.

Note: This setting does not affect the overwrite mode behavior. By default, overwrite mode is enabled, and you can simply type over existing text within a field. You are not required to delete the text before entering data in the field.

The default value of selectAllOnFocus is true. To change its value, add the following lines to the application.hap file for your project:

<class name="com.ibm.hats.common.RuntimeSettings">
   <setting name="selectAllOnFocus" value="false" />
</class>
If the com.ibm.hats.common.RuntimeSettings class already exists, simply add the selectAllOnFocus setting line inside the class.

Note: This setting is only valid when Internet Explorer is used as the browser for the application.

DBCS specific implications for selectAllOnFocus combined with the current showUnprotectedSISOSpace setting

Prior to this refresh pack introducing the selectAllOnFocus setting, when you tabbed to a 5250 J-field, all of the text in the field was selected when that field received focus. If you entered DBCS characters and used Field Exit to leave the field, the last character of the string might have been deleted.

Now, with the selectAllOnFocus setting, plus other functional changes:

  1. If selectAllOnFocus is set to false and showUnProtectedSISOSpace is set to true, the cursor is positioned in the first input position of the field. You can begin typing at this position and click Field Exit to leave the field.
  2. If showUnProtectedSISOSpace is set to false, HATS increases the cursor position by one to preserve the last character of the string.

Note: These statements only apply to 5250 J-fields.

Update history

This refresh pack contains fixes for APARs as well as internal fixes.

Problems fixed in this refresh pack

Please see the HATS support page for a more detailed description of these APARs.

This update includes the following fixes:

IC49929 - When renaming a transformation JSP page, not all of the files needed are updated to point to the new name.

IC50172 - Using 930 Japanese_Katakana, HATS adds extra spaces for remaining presentation space if user inputs lower case characters.

IC50205 - HATS V6 calendar widget does not change the caret position.

IC50317 - When running a macro, get arrayIndexOutOfBoundsException

IC50325 - HATS V6 Host Terminal cannot run advanced macro with a custom java class.

IC50361 - 'Disabled area style' setting for Dialog widget has no effect.

IC50444 - SBCS fields immediately after DBCS fields lose data.

IC50709 - Problem with Contention Resolution in HACL component.

IC50864 - DisconnectOnClose does not work with Internet Explorer V7.0.

The following problems were found internally, so there is no additional information about them on the HATS support page.

34205 - Application response time very slow on a WebFacing server when the message waiting indicator is active.

34234 - Java 2 Security error when running HATS EJB applications.

34308 - Integration Objects running in a Portal 5.1 project fail.

34332 - Exception errors sometimes occur when attempting to delete files.

34632 - Can not log on to the host with Internet Explorer 5.2.3 on MacIntosh OS X.

34634 - Problems entering uppercase characters in Safari and Opera 7.54 browsers on MacIntosh OS X.

34770 - Cannot create a new HATS project after installing a refresh pack.

34806 - HATS URL component does not recognize Web addresses that wrap to the next line.

35126 - Errors occur when prompting for the Workstation ID or LU in portlet projects.

35293 - Screen capture preview problems when multiple rendering sets are defined.

35496 - Some DBCS characters entered in J-Field truncated with SO/SI turned on.

35518 - Default Component Recognition for subfiles does not work unless a full screen is selected.

35524 - DBCS: The ending DBCS characters are lost from J-Field with SO/SI turned off.

35637 - Java script error when navigating a HATS Web application subfile screen.

35681 - DBCS: Should not be able to enter SBCS data in DBCS J-Field and G-Field.

V6.0.5 Description

This refresh pack may be applied to HATS Studio V6 installations. HATS Studio V6 may be installed in conjunction with Rational Software Development Platform V6.0.

Functions extended by this refresh pack

Cookies no longer required for HATS Administrative Console

In previous releases and refresh packs of HATS V6, the HATS Administrative Console required support of cookies to function correctly. Beginning with this refresh pack, the HATS Administrative Console no longer requires cookie support. However, if cookies are enabled, there will be no change in the function of the HATS Administrative Console.

If cookies are disabled, the following changes occur:

Server Support for WebSphere Application Server Version 6.1

HATS 6.0.5 added server support for WebSphere Application Server (WAS) Version 6.1.

Defaults changed for Function Key component settings

HATS V6.0.1 added the searchType setting to the Function Key component. The default value for the setting was entireKey, which searches for the start delimiter, delimiter, and end delimiter for a single function key, then searches for the next key.

Beginning with this refresh pack, the default value for searchType is changed to allDelimitersFirst, which searches for all of the start delimiters and delimiters first, after which the component attempts to derive the end delimiters from the areas that exist between the start delimiters.

The reqValueAfterDescription setting works in conjunction with the searchType setting. In V6.0.1, the default value was "  | " (two spaces OR a single space).

Beginning with this refresh pack, the default value for reqValueAfterDescription is two spaces, to allow for reliable detection of multiple word descriptions for function keys.

Message Waiting indicator added to the OIA

For a 5250 emulator, there are two types of message delivery: *BREAK and *NOTIFY. You can see the message queue attributes using the WRKMSGQ command. Enter the name of the queue (your user id) and select option 2 to change the queue attributes.

If the message delivery is set to *NOTIFY, a message waiting indicator (MW) appears in the 5250 emulator OIA when a new message is waiting for the end user. When the end user views the Display Messages panel on the 5250 host, the indicator is cleared until another new message is received.

With this refresh pack, you can specify whether to display the message waiting indicator in the OIA of the transformation. However, the indicator does not appear until the current screen is submitted for processing.

The message waiting indicator in HATS is the image of an envelope. For accessibility purposes, the text read for the image is MW. The MW alternate text for the envelope image is used regardless of the language displayed to the end user.

A new setting in the application.hap file determines whether the message waiting indicator is included in the OIA. If you do not add the new setting to the application.hap file, the default is to display the indicator when it appears on the 5250 emulator OIA. You can turn the display of the message waiting indicator off by modifying the source of the application.hap file to add the setting, and specify the value of the setting as false.

<class name="com.ibm.hats.common.OIA">
    <setting name="active" value="true"/>
    <setting name="appletActive" value="false"/>
    <setting name="autoAdvanceIndicator" value="false"/>
    <setting name="bidiControls" value="true"/>
    <setting name="cssClass" value="statusArea"/>
    <setting name="cursorPosition" value="false"/>
    <setting name="cursorRowColumn" value="true"/>
    <setting name="fieldData" value="false"/>
    <setting name="inputInhibited" value="true"/>
    <setting name="insertMode" value="true"/>
    <setting name="layout" value="horizontal"/>
    <setting name="msgWaiting" value="false"/>
    <setting name="sslCheck" value="true"/>
    <setting name="systemWait" value="true"/>
</class>

Trimming extra spaces from widget captions

In HATS version 6, extra spaces in a caption supplied to widgets were automatically trimmed from the text before being displayed in the transformation. With this refresh pack, you can specify whether to trim the spaces from the captions or to keep them when displayed in the transformation.

The widgets affected by this new setting are:

When defining settings for these widgets, a check box labeled Trim spaces on caption follows an input field labeled Caption type or Custom caption.

To enable these settings at the project level, edit the application.hap file and add the following line under the class settings section for the widget:

<class name="com.ibm.hats.transform.widgets.%WidgetName%">
	<setting name="trimCaptions" value="true"/>
</class>

Update history

This refresh pack contains fixes for APARs as well as internal fixes.

Problems fixed in this refresh pack

Please see the HATS support page for a more detailed description of these APARs.

This update includes the following fixes:

IC48685 - When accessing a HATS V6.0.3 application with Internet Explorer browser on Mac OS, the AID keys do not work.

IC48691 - Portlet messaging with HATS does not work.

IC48751 - Macro run from transformation sends all fields to host session, even unmodified fields.

IC48769 - Custom screen event HATS GV string compare does not produce correct runtime code when value to compare is true or false.

IC48830 - HATS V604 turnAutoTabOn feature causes autoAdvance to skip the last field on the transformation page.

IC48850 - Default screen rendering fails to render screen correctly when field component is last rendering item.

IC49279 - Safari 1.3.2 on Mac will hang with HATS V6.0.3.

IC49364 - When a 5250 display size in HATS is configured to use a display of 27x132, HATS errors HAT0414 and HAT0040 are logged.

IC49393 - When entering any data in a 5250 RTL field, the data gets entered in the wrong place.

IC49395 - Running on WAS 5.1.1.9, HATS returns classcast exceptions when servlet context returns nonfile objects.

IC49430 - HPS5031 Object not defined error message when using connection overrides.

IC49493 - Host is input-inhibited but client can still type data in browser screen.

IC49518 - Printing from 3270 host prints incorrect number of lines per page.

IC49559 - When a subfile marker is blank, the last line of the subfile fails to display.

IC49659 - Input field (J-FIELD) does not change upper/lower case character.

IC49701 - Moving the arrow key to the right and back again and then pressing Enter causes "Enter key not allowed" message.

IC49849 - HATS V6 setHPubStartPoolName causes HPS5031 Object not defined error message when Integration Object is not located in the target Web application.

IC49948 - The host screen preview tab fails to display correct rendering when multiple default renderings exist.

IC49965 - Cannot extract data into a global variable from hidden data field.

IC49979 - Screen customization cursor position invert attribute is changed from "true" to "false."

The following problems were found internally, so there is no additional information about them on the HATS support page.

32629 - Creating a portal project with Admininistration support causes broken links.

32761 - ENPTUI scrollbar processing interferes with ENPTUI selection field processing.

32853 - Unable to successfully deploy portal WAR file; the message "This portlet is unavailable." is issued. Refer to APAR IC47745.

33011 - Add BIDI support to list widget.

33069 - BIDI: Enable screen reverse button; check box doesn't show checked.

33220 - Play of WEL macro in terminal causes exception/hang.

33376 - CMPIE007 message is received at runtime because the Credential Mapper authentication type is not a required field in the configuration interface.

33381 - Create project - Uncheck "Use default location" has no effect.

33556 - HATS Project view should be the default, active view in the HATS perspective.

33672 - reverseVideoBlack.css file has syntax error.

33770 - Full page preview for custom transformations doesn't show HATS components and only the template appears. This is caused by the HATS:Component tag being incorrectly inserted inside a comment tag.

33772 - HAT0300 NoSuchElementException - HATS V5 Administration fails with HATS V6 applications and vice versa.

33833 - EJB SSL error - cannot connect to host using SSL.

33867 - DBCS: Default value of the button widget Trim caption attribute isn't enabled.

33871 - DBCS: Unable to trim DBCS/SBCS space for radio button widget.

33920 - Explicit 10pt font missing from monochrometheme.css.

33997 - HAT0300 PatternSyntaxException - HATS Administration not working.

34093 - DBCS: Grid line output incorrect when running HATS Terminal.

34131 - DBCS: Spaces trimmed in link widget when Trim caption is disabled.

34132 - DBCS: Spaces are not trimmed in radio button widget when Trim caption is enabled.

34133 - Radio button widget cannot set two columns per row.

34138 - Running HATS portlets on Portal Server 5.0x fails to render host screens.

34213 - Input field in RTL screen can't be rendered as a check box or a radio button.

34219 - HATS Portal Projects are targeted for wrong platform.

34220 - Preference panel should not display in HATS Administration with URL rewriting turned off.

34228 - BIDI: Data is reversed in calander widget.

34241 - DBCS: Extra space displayed in 5250 J-Field.

Updates to Publications

Programmer's Guide

EJBAccessHandle example code incorrect

In Chapter 6 of the HATS Programmer's Guide, there is a section entitled "EJB Access Bean Chaining". This section contains a numbered list of instructions for chaining EJB Access Beans outside of a Web container. The example code in Step 6 of the procedure is incorrect.

The text should read:

Extract and save the handle for the HATS EJB instance corresponding to the Integration Object chain:

Object myHandle = EJBChain1.getHPubAccessHandle();
The getHPubAccessHandle method returns the handle for the HATS EJB instance corresponding to the Integration Object chain as an object rather than a string.

V6.0.4 Description

This refresh pack may be applied to HATS Studio V6 installations. HATS Studio V6 may be installed in conjunction with Rational Software Development Platform V6.0.

New functions in this refresh pack

WebFacing Server Support

The HATS Version 6.0.4 Studio provides two connectivity options for connecting to iSeries host screen applications:

There is no difference in the data flow between HATS and a TN5250 server or HATS and a WebFacing server. Both connections provide access to 5250 applications, but the connection to the WebFacing server does not require on-line transaction processing (OLTP) capacity. This significantly reduces the overall cost of a HATS application on iSeries.

To enable connection to a WebFacing server, select the 5250W connection type from the Type field in the New Project wizard, the New Connection wizard, or the Connection editor. The default Port for the WebFacing server connection is 4004.

You can enable existing projects to take advantage of this connectivity option by simply selecting it from the Connection editor. The WebFacing server connection can serve as the main transformation connection or any background connections in the project.

Connection to the WebFacing server requires the server process to be running on the iSeries machine. To start the WebFacing server, enter the following command from the i5/OS command line:

STRTCPSVR SERVER(*WEBFACING)
To stop the WebFacing server, enter the following command from the i5/OS command line:
ENDTCPSVR SERVER(*WEBFACING)
To ensure that the WebFacing server is running, enter the following command from the i5/OS command line to list all WebFacing jobs:
WRKACTJOB JOB(QQF*)
The WebFacing runtime server job QQFWFSVR and the WebFacing virtual terminal server job QQFVTSVR should both be displayed. It is normal to see more than one QQFVTSVR job in the list of jobs.

Note: Check the system value QAUTOVRT. The value for QAUTOVRT determines the number of virtual terminal (VT) jobs that can be auto started. The WebFacing runtime server relies on VT jobs. If the value is 0, no browser sessions can be launched. If necessary, set QAUTOVRT to *NOMAX or some value greater than 0. To change the value for QAUTOVRT, use the WRKSYSVAL iSeries server command to work with system values.

WebFacing Server connection jobs are still listed under the QINTER subsystem and marked as INT (interactive), but they are not counted as part of the interactive capacity of the server.

Limitations
Prerequisites

The WebFacing iSeries server must have the following installed prior to establishing a connection:

For the latest information about HATS supported server requirements see the Host Access Transformation Services V6 - Supported Platform Summary page.

New list widget

A new widget has been added for creating list boxes. The list widget is similar in function to the drop-down widget. As with the drop-down widget, the list can be populated from a global variable, a string, or from a hint (when using the input field with hints component). A setting enables you to specify how many rows of the list are visible to the end user. The list widget can be used with the following components:

The list widget cannot be used with the function key or selection list components.

New projects created using the HATS Version 6.0.4 Studio will automatically have support for this new widget. Existing projects created in previous versions of HATS need to be manually updated. To add the list widget to existing projects, edit the ComponentWidget.xml file and add the list widget, as described below. To edit the ComponentWidget.xml file, switch to the Navigator view of the HATS perspective.

Add the following line under <widgets> to register the list widget with the HATS Studio:

    <widget className="com.ibm.hats.transform.widgets.ListWidget" displayName="List" image="list.gif"/>

Add the following line to the <associatedWidgets> of each component in the previous list to register the list widget with the components:

    <widget className="com.ibm.hats.transform.widgets.ListWidget"/>

Java 2 Security policy added to HATS applications

Java 2 security provides a policy-based access control mechanism that checks for permission before allowing an application access to certain protected system resources, such as file I/O, sockets, and environment properties.

Java 2 security is supported by the application server, but it is disabled by default. However, Java 2 Security is enabled automatically when you configure WebSphere security to enable global security. Although Java 2 Security is enabled when you enable WebSphere global security, you can disable it. You can configure Java 2 security and global security independently of each other. Disabling global security does not disable Java 2 security automatically. You need to explicitly disable it.

HATS Version 6.0.4 supports Java 2 security when running applications on WebSphere Application Server (WAS) on any supported server software platforms. HATS does not support Java 2 Security for the following:

The HATS Version 6.0.4 Studio includes a Java 2 security policy that gives deployed applications the required permissions to operate when Java 2 security is enabled. Although basic HATS operations have been tested with Java 2 security enabled, you might need to modify the policy file for some HATS applications to operate with Java 2 security enabled. For example, the business logic in your application accesses system resources, or a keyring file or another file exists in a path not already covered by the policy file.

Policy file location

You can find the policy file for a HATS application in the Navigator view of the HATS perspective. Expand the EAR project for the HATS application, and open the META-INF folder to find the was.policy file.

HATS copies the default policy file into every new project you create. If you want to modify the default policy file, it is located under the installed HATS plug-in in predefined\projects\earProject\META-INF. For example, if you installed HATS to C:\HATSv6, the complete file path would be C:\HATSv6\eclipse\plugins\com.ibm.hats_6.0.4\predefined\projects\earProject\META-INF\was.policy. For more information on Java 2 security and policy files, see the WebSphere Information Center.

New connection management API defined

The HATS runtime has added a new API that enables you to acquire an existing transformation connection in a servlet context in anticipation of executing a middle-in-chain Integration Object against that transformation connection. The purpose of this new API is to provide better integration between HATS applications and other, non-HATS Web applications.

The API consists of two new static methods, acquireExistingTransformationConnection and releaseExistingTransformationConnection, added to the RuntimeFunctions class in the com.ibm.hats.runtime package. The signatures of the method are:

public static final String acquireExistingTransformationConnection(HttpServletRequest request) throws HostConnectionException, ApplicationUnavailableException
public static final void releaseExistingTransformationConnection(HttpServletRequest request)

acquireExistingTransformationConnection

The purpose of the acquireExistingTransformationConnection method is twofold:

The caller uses the returned label to call the setHPubStartChainName() method of the Integration Object. This label will be used by the Integration Object to locate the connection against which to run. If a null label was returned, then the connection is not accessible to the Integration Object. If a HostConnectionException is thrown, it means that the application instance exists, but there is no transformation connection. If an ApplicationUnavailableException is thrown, it means that no application instance exists or, if it does, it is currently checked out.

To prevent the Integration Object from destroying the transformation connection when an error is encountered, call the setHPubSaveConnOnError(true) method prior to invoking doHPTransaction() to run the Integration Object.

releaseExistingTransformationConnection

The purpose of the releaseExistingTransformationConnection method is to check in the application so that it can be used through the entry servlet or by other Integration Object chains.

The caller should invoke the releaseExistingTransformationConnection after all Integration Objects in the Integration Object chain have been run. The releaseExistingTransformationConnection call should be used to make the transformation connection available again even if an Integration Object encounters an error while running. This call signifies that the Integration Object chain no longer needs access to the transformation connection. 

Support for the Eclipse team feature

Eclipse team functions can be accessed from the HATS Project view context menu. HATS projects and artifacts can be shared easily with a supported repository, such as CVS or ClearCase.

Team functions can only be accessed if a project is already shared. To share a project, select the Team > Share menu item from the Navigator view of the HATS perspective. Select the type of repository with which you want to share the project.

Licensing Options and Runtime Enablement

During the installation of the full HATS Version 6.0.4 Studio (as opposed to a Trial Toolkit), you must select the licensing option based on your Proof of Entitlement. The options are:

If you specify the User licensing option, you must also enter the number of licenses purchased.

Once HATS has been installed, you can change your license options using the HATS runtime enablement tool, which can be started by selecting the HATS > Enable HATS runtime menu option in the HATS Version 6.0.4 Studio. In the Enable HATS Runtime dialog, specify:

Running the HATS runtime enablement tool sets the license options for every open EAR project in the current workspace. These license selections are also applied to all newly-created projects in any workspace. Unlike with previous versions of the runtime enablement tool, you can run the tool more than once if you have purchased additional licenses or have changed to a different license type.

For applications that have already been deployed to an application server, you can change the license options for these applications using the HATS Administration Console.

To change license options in the HATS Administration Console, navigate to the License Settings panel found under License Management in the tree on the left side of the console. On that panel, you can select the same options that were available in the HATS runtime enablement tool.

Overriding CSS Style settings

You can override CSS style settings in HATS using the same dialogs that other Web tools in the Rational Toolkit use. Each 'Style' entry field for a widget has a launcher button next to it that opens a style properties dialog. This style properties dialog frees you from the need to understand CSS to change the font, color, or other style settings for the widget. The launcher buttons are available in the Project Settings editor Rendering tab, as well as in the widget settings dialog for the Add or Edit Default Rendering and the Insert or Edit Host Component wizards. See Dynamic widget previews for information about another advantage of using the launcher buttons and style properties dialog.

Dynamic widget previews

When you set or modify widget settings in any widget settings dialog, the widget preview area is automatically updated to show you the effect of the changes you make, before you click OK to commit those changes.

Calendar widget enhancements

In the calendar widget, there are three date fields for which you can set a date.

The date pattern for all three of the fields is "MM/DD/YYYY" for all locales.

The date is validated to ensure the correct format. If the format of the date supplied for any of the fields are not correct, the following error message is shown:

You did not supply a valid date for the setting: {0}

Dates specified for the restricted dates are the earliest or latest date that an end user can select from the calendar pop-up. However, the end user can manually enter an earlier or later date directly into the associated input field.

The Default value date field is optional. This field represents the initial date selected on the calendar pop-up when the host application does not pre-fill the associated input field with a valid date between the specified dates. It is also used when the end user enters an invalid date (including a date out of range) prior to selecting the calendar pop-up control. In releases prior to HATS V6.0.4, this field setting was incorrectly used to pre-fill the associated input field when no date was specified by the host application. This has been corrected. In HATS V6.0.4, this field is handled as follows:

Update history

This refresh pack contains fixes for APARs as well as internal fixes.

Problems fixed in this refresh pack

Please see the HATS support page for a more detailed description of these APARs.

This update includes the following fixes:

IC47514 - In portlet, getting exception EJPKB0010E when trying to publish a global variable from HATS portlet

IC47634 - Context root of "/" causes errors when trying to use a CONNECT macro

IC47637 - When the parent browser window is closed, the HATS application on the child is also closed

IC47640 - HATS mistakenly marks unmodified DBCS fields as modified

IC47689 - HATS template bleeding into the HATS portlet area.

IC47724 - HATS V6 causes a number format exception error in the Studio .LOG file

IC47745 - Portlet .WAR with JSF-IMPL.jar included fails on WPS

IC47906 - Selection List rendered in a subfile does not allow SBCS input.

IC47957 - Next Screen function not working properly.

IC48051 - After tab action in macro, the cursor position is invalid.

IC48137 - ArrayIndexOutOfBoundsException.

IC48207 - Dialog component leaves a row of border characters inside dialog window on some screens.

IC48371 - HATS V6 filling data on the last input field on a screen, the cursor stays in that field. It should go up to the first input field.

IC48521 - HATS hidden field data is visible for CP939.

IC48644 - HATS V6 applet auto refreshes after one second on every screen.

The following problems were found internally, so there is no additional information about them on the HATS support page.

30360 - The linkage between a screen capture and its associated transformation is lost when a screen capture is renamed because the file that registers a screen capture with a transformation is not updated after the renaming.

32078 - Javadoc for com.ibm.hats.runtime.IOGV has been added to the HATS API Reference on the Information Center.

32169 - Javadoc for com.ibm.hats.common.TransformInfo.java has been added to the HATS API Reference on the Information Center.

32282 - Selection list and button transformations do not work properly with Mac versions of Internet Explorer and Opera.

32287 - In Firefox, Mozilla and Safari on Mac and Firefox 1.0.6 on Windows XP, a tabbed folder overlays the field component.

32392 - When global rules are created but not saved before creating a new customization, the global rules are lost and a "Contents out of sync" message is generated.

32419 - Text replacement does not work (no image is displayed) with ROS in Portal Test environment.

32449 - BIDI: Incorrect tabbing between HATS fields for CHKRTLB screen with Mozilla browser.

32450 - BIDI: autoAdvance promotes caret to adjacent field (from right side, not left) in CHKRTLB screen.

32481 - Slow performance when adding prompt or extract actions in a project that has many macros that include many prompt and extract actions.

32485 - Period in a project name prevents renaming any portion of the name that is to the right of the period.

32508 - BIDI: "Highlight input fields" check box in transformation wizard does not work on host screen with Hebrew codepage (424).

32517 - Parsing problem when a customreco tag stanza contains the string resource anywhere within the stanza.

32521 - Mozilla browser locks after using Field Exit.

32522 - Field widget text wrapping incorrectly.

32529 - BIDI: Operator information area (OIA) is incorrectly displayed at the bottom of the browser window instead of within the host screen.

32530 - BIDI: Numbers cannot be typed into numeric field if alphanumeric characters were previously typed into the field.

32532 - BIDI: Auto advance not working correctly after a mouse right - click in an input field.

32542 - Applet fails to initialize when HATS application has context root of / (slash).

32555 - Support pseudo Shift Out/Shift In (SO/SI) in Basic Mapping Support (BMS) Import wizard.

32565 - Project updates copies jar files to the wrong place in EAR projects.

32566 - Widget settings box is too small to display full buttons and other components.

32575 - No Host On Demand (HOD) tracing available in HATS V6.0.3.

32576 - BIDI: Characters can't be inserted into a field if the contents of the field are selected.

32579 - No need to display the Go button if Auto submit on is selected.

32636 - Add was.policy file to HATS portal application.

32654 - DBCS: In Mozilla, J- and G-type fields continue to show data after the Enter key is pressed when IME is used to input SBCS characters.

32660 - DBCS: Characters show twice in J- and G-type fields when the Enter key is pressed.

32665 - Cannot insert a host component under RAD version 6.0.1.1.

32684 - Font style does not change when the font name is within double quotes.

32690 - Run On Server fails when a new project is renamed before the project is published to the server.

32693 - DBCS: Link widget drops any DBCS characters that are in a URL.

32720 - OIA support for Unicode field.

32756 - Edit Host Component fails with RAD version 6.0.1.1.

32814 - Aborted Operation error on Internet Explorer.

32837 - getImage4File in HatsPlugin is creating multiple SWT image objects and not disposing them.

32880 - CSS style settings are not working properly for the BIDI link widget.

32892 - Portlets fail to run after a RAD 6.0.1.1 update.

32893 - Graph widgets display as tables in widget settings dialog preview area.

32896 - Check for right-to-left, top-to-bottom fails to work properly with code page 424 (Hebrew).

32907 - Jars that are in the runtime classpath for an application (for example, WEB-INF\lib) are not being picked up in the Studio.

32911 - BIDI: Cannot perform a paste operation in pre-filled HTML input fields.

32957 - A JavaServer Pages Standard Tag Library (JSTL) 1.1 pop-up error message is generated when a HATS portlet's target server is WebSphere Application Server 6 and portal server 5.1 is selected with Rational Application Developer 6.0.1.1.

32989 - DBCS: Function key cannot display correctly in the Chinese or Japanese environment.

32994 - Portlet projects are not being updated when running Enable HATS Runtime.

V6.0.3 Description

This refresh pack may be applied to HATS Studio V6 installations. HATS Studio V6 may be installed in conjunction with Rational Software Development Platform V6.0.

New functions in this refresh pack

New suppressUnchangedData project-level setting

This feature modifies the default behavior of a HATS application to send modified input field data even when the contents of the field are identical to the data supplied by the host.  For example, if the host filled a field with "ABC" and the user typed "ABC" into the field, the typed data will be returned to the host.  Prior to this change, the typed data would not have been returned to the host.  If the previous behavior is required by your application, then you may revert back to it by adding a new project setting in the application.hap file.

To enable the old default behavior, add the following to the application.hap file:

	<class name="com.ibm.hats.common.RuntimeSettings">
        <setting name="suppressUnchangedData" value="true"/>
</class>

If there is already a <class> section by this name, just add the <setting> line inside the section.

Additional bidirectional support added to Integration Objects

Two new bidirectional attributes were added for bidirectional users of Integration Objects. The bidirectional attributes are as follows:

PromptRTLTextOrientation: You can send data to HATS Web Services in Logical (implicit) right-to-left in case promptReordering is "true" or visual right-to-left format in case promptReordering is "false"

ExtractRTLTextOrientation: You can receive data from HATS Web Services in Logical (implicit) right-to-left in case promptReordering is "true" or visual right-to-left format in case promptReordering is "false"

The following Integration Object methods are now available to bidirectional developers:

Support added for customized 937 Macau code page

A new advanced configuration parameter, useAccentedCharacters, enables the use of the accented character support for Traditional Chinese code page 937 in an iSeries or 5250 connection. To enable the new support:

  1. Edit the .hco file for which you want to enable this support.
  2. Click the Advanced tab.
  3. Click the Add button. The Add Parameter panel opens.
  4. Set the name as "useAccentedCharacters", and set the value as "true" in the Add Parameter panel.
  5. Click OK to apply the changes and close the panel.
  6. Save the change in the .hco file.

In addition, because the CCSID 937 does not support accented characters, to use this support you must ensure that the CCSID is 65535 on the host.

Note: This feature is supported for DBCS Code Page 937 in iSeries and 5250 only.

New option to follow transformation order instead of green-screen order if autoAdvance=true

This feature enables you to specify that HATS use auto-advance tabbing that follows the screen transformation order of fields on the screen to include your non-HATS input areas. This feature overrides the previous HATS autoAdvance support if it is enabled.

To enable the feature, add the following lines of code to your transformation .jsp anywhere after the JavaScript (.js) file declarations and before the closing HATS:Form tag:

<script> 
turnAutoTabOn(); 
</script>

This gives the transformations with this setting the ability to auto-tab. Alternatively, if the entire project requires auto-tab, add the following line to the end of the HATS project's Web Content\common\lxgwfunctions.js file:

turnAutoTabOn();

This feature changes the initial position of the caret to the first input field on the page, while the position of the cursor is the input field indicated by the host cursor. If you would rather have the caret be in the same position as the cursor position, add the following line to the transformation .jsp or the lxgwfunctions.js file immediately after the turnAutoTabOn statement:

initialInputFocusFromCursor = true;

If you add or change any of the above attributes, you must refresh your browser window and refresh the page for the change to become effective.

Allow additional Host On-Demand print session properties for HATS 3270 print

This feature enables HATS to output host 3270E print files in formats other than PDF (for example, ASCII text files) and send them to your Web browser, where they can be printed, saved or both. The feature is enabled by supplying Host On-Demand print settings on the initial request to start the HATS application. The particular print settings supplied are specified by your application programmer.

Host On-Demand print settings can now be passed in via URL using the URL override feature of HATS. See the Host On-Demand page in the WebSphere Software Information Center for detailed information about Host On-Demand print session properties.

To enable 3270E HATS Print with overrides:

  1. Create the HATS application with 3270E print support enabled. This is just as before. You still must have TN3270E printer LUs associated with each TN3270E display LU, as before.
  2. Enable URL overrides for each of the settings you plan to send to HATS on the initial request.
  3. Start the application with a URL that contains a set of Host On-Demand printing overrides to modify the Host On-Demand print behavior. You can create a Web page with the URL encoded as a link so that the end-user is not burdened with typing in the long list of overrides when starting the application.

Application developer considerations:

Tested URL override examples:

Support provided for Eclipse resource decorator

This feature enables other toolkits such as such as Java Compile and CVS to decorate HATS labels and images displayed in the HATS Project views (for example: when there is an error, a red-mark can be displayed next to the file; when checking out files from a CVS repository, the version numbers can be displayed next to the file names).

Below is an example of how you would enable or disable the use of resource decorators through the Rational Application Developer Studio Preferences:

  1. Open the Rational Application Developer Studio Preferences window.
  2. In the left pane, expand the Workbench folder and then select Label Decorators.
  3. In the right pane, select the desired label decorations.
  4. Click OK to apply the changes and close the window.

Note: The decoration preferences in Rational Application Developer Studio are similarly located in other Rational Studios. More information can be found by searching the Rational Studio Help System for Debug on Server or Profile on Server.

Quick access to related actions and perspectives

New shortcuts have been added that provide quick access to common actions and related perspectives. They are:

The new shortcuts appear on the File > New and Window > Open Perspective menus.

Debug and Profile on the server in HATS Project view

This feature enables you to Debug and Profile HATS projects from the HATS perspective by selecting new menu options. The new menu options, Debug on Server and Profile on Server, now appear on any menu on which Run on Server appears.

Debug on Server enables you to step through Java code, such as HATS business logic, while the HATS application is running on the application server.

Profile on Server enables you to locate the operations that require the most time, and identify actions that are repeated, to eliminate redundancy. You can use this function for performance analysis, helping you to get a better understanding of your application.

Detection of corrupted or missing 'licenseHardLimit' values in runtime.properties

Error message HAT0362 will be logged in the message file if the "licenseHardLimit" value in runtime.properties is not present. When the licenseHardLimit value is not present, HATS will default to allowing only two connections to be established. The full text of the message is "ERROR HAT0362 HATS License key is missing. Default assigned". Please see the HATS Support page for a detailed description of how to resolve the issue identified by this message.

Update history

This refresh pack contains fixes for APARs as well as internal fixes.

Problems fixed in this refresh pack

Please see the HATS support page for a more detailed description of these APARs.

This update includes the following fixes:

IC46626 - An unexpected exception was received: java.lang.ArrayIndexOutOfBoundsException15 >= 15

IC46765 - HATS inserts SOSI pair into incorrect position in J-field

IC46779 - Subfile menu displayed multiple times

IC46846 - Position is mis-calculated for screens containing a DBCS character

IC46870 - ENPTUI Links do not show initial focus

IC47196 - Pressing Field Exit after typing N-1 characters in a 5250 numeric field of length N doesn't justify input correctly

IC47239 - HPS5137 MSG and macro checkin screen isn't matched if string comparison is used for screen recognition

IC47260 - Recognizing the subfile header by color does not work

IC47308 - Attempt to invoke "window.close" browser call from a HATS session fails with object unknown

IC47315 - If autoAdvance is enabled, cannot use IME on some DBCS input fields

IC47625 - Macro loops when next screen pointer is to current screen

IC47629 - Using Portuguese causes error "unable to create part"

The following problems were found internally, so there is no additional information about them on the HATS support page.

31641 - Images in OIA are not transparent

32130 - VIF does not work correctly in Mozilla

32177 - Uppercase field information not shown in OIA

32188 - Cannot administer all portlets that are installed on a single WebSphere_Portal server

32200 - Performance: reduced memory consumption when Subfile component inadvertently enabled in a 3270 application

32218 - View Print button broken with Overrides from a JSP page

32225 - Default file name for runtime enablement is not "runtimeenablement.jar"

32228 - DBCS Spaces not trimmed in link/button/radio button widget

32243 - DBCS characters shifted in DBCS-open wrapping field after submittal

32259 - Widget scenario causes a javascript error

32263 - Terminal: X-lock screen symbol sign is not displayed

32269 - DBCS: JavaScript error (event.srcElement) when using Mozilla

32303 - Component and widget tracing does not work

32307 - Dialog component and widget settings are not shown in the project editor

32329 - Graph or calendar image not shown - incorrect URI

32383 - DBCS: Characters in 5250 J/G/O fields were duplicated after submittal

32445 - After preview, components land outside free layout

32455 - ROS for V6 zSeries server does not include port in URL

V6.0.2 Description

This refresh pack may be applied to HATS Studio V6 installations. HATS Studio V6 may be installed in conjunction with Rational Software Development Platform V6.0.

New functions in this refresh pack

New components for 3270 lightpen applications

3270 selector pen (also known as light pen) support has been added in HATS 6.0.2. This support enables you to interact with light pen fields just as if you were using a light pen. The following types of selector pen fields are supported:

A HATS component for each type of selector pen field is provided. An attention pen selector field can be rendered as a button, link, or radio button. A selection pen selector field can be rendered as a check box. In the case of an attention pen selector field, depending on the designator character (the first character of the field), clicking the button, link, or radio button will cause either an [enter] or [cursel] key to be sent. In the case of a selection pen selector field, if the designator character is a ">", the rendered check box will be selected. If the designator character is a "?", the rendered check box will be unselected.

To enable this support, you must first include the new components in the component and widget registry file. This makes the components viewable in the project's wizards and editors. To update the component and widget registry file:

  1. From within the HATS Studio, switch to the Navigator view.
  2. Double-click the ComponentWidget.xml file, located in the root of your project. Switch to the Source tab to view the source of the file.
  3. Add the following tags directly after the <components> tag, as shown in Example 1:

    Example 1

    	
    <component className="com.ibm.hats.transform.components.SelectorPenAttentionComponent"
               displayName="Selector pen (attention)" image="field.gif">
       <associatedWidgets>
          <widget className="com.ibm.hats.transform.widgets.ButtonWidget"/>
          <widget className="com.ibm.hats.transform.widgets.LinkWidget"/>
          <widget className="com.ibm.hats.transform.widgets.SLRadioButtonWidget"/>
       </associatedWidgets>
    </component>
    <component className="com.ibm.hats.transform.components.SelectorPenSelectionComponent"
               displayName="Selector pen (selection)" image="field.gif">
       <associatedWidgets>
          <widget className="com.ibm.hats.transform.widgets.CheckboxWidget"/>
       </associatedWidgets>
    </component>
  4. Save this file.

To enable Selector Pen fields from the HATS Host Terminal environment:

If you are accessing a selector pen application using the HATS Host Terminal, you can enable support for selector pen fields in the Host Terminal by setting the lightPenMode connection parameter to true.

Note: This setting has no effect at runtime and is not required to use the new selector pen components.

Use the following steps to add the parameter to your connection definition:

  1. Double-click on the connection definition to open it in the Connection editor.
  2. Select the Advanced tab.
  3. Select the Add button next to the "Configure optional, advanced connection settings" box.
  4. In the "Add Parameter" dialog, enter "lightPenMode" as the name and set the value to true.
  5. Select OK.
  6. Save the new connection definition.

To enable this support in Default Rendering:

  1. Use the HATS Host Terminal to capture a screen that contains attention pen selector fields.
  2. Open the Project Settings editor.
  3. Select the Rendering tab, click Rendering Sets, and then click the Add button next to the table of components and widgets.
  4. In the Description field, enter "Transform attention pen selector fields," then click Next.
  5. Select the screen that you captured in step 1, right-click on the screen and click Select All, then click Next.
  6. Select the Selector pen (attention) component from the list of components.
  7. Select an appropriate widget (either button, link, or radio button), then click Finish. If desired, use the Up button to move your new entry to the top of the list (although you are not required to have this item at the top of the list).
  8. Select File > Save.

Repeat steps steps 3 through 8 to add support for selector pen selection fields.

You may also use these components when creating customized transformations; they function like other HATS components.

Note: These components will not appear in the Palette view when using the Page Designer JSP editor.

Both components have a setting, "consumeFieldRemainder", that controls whether the entire field or just the first character of the field is consumed and rendered by the widget. By default, this setting is set to "true", which means that the entire field is consumed and rendered. For example, in the case of an attention pen selector field, the contents of the field are rendered as the caption of the button or link. When in Default Rendering, setting this value to "false" will cause the remainder of the field (everything except for the first character of the field) to be rendered by some other widget (in most cases by the field widget). Only the first character will be rendered as the button, link, radio button, or check box. This is useful if you want to preserve colors and/or extended attributes in the remainder of the field.

To change the value of this setting at the project-level:

Add the following to the <classSettings> section of the Project Settings (application.hap) file:

	
<class name="com.ibm.hats.transform.components.SelectorPenAttentionComponent">
      <setting name="consumeFieldRemainder" value="false"/>
</class>

To change the value of this setting in Default Rendering:

Update the <componentSettings> section of the applicable default rendering item as follows:

	<componentSettings>
    <setting name="consumeFieldRemainder" value="false"/>
</componentSettings>

Known Issues:

  1. If you captured a screen with pen selector fields prior to HATS 6.0.2, you must recapture the screen. HATS 6.0.2 stores pen selector-specific information in screen capture files (specifically what type of field it is).
  2. Only 3270 pen selector fields are supported.

HTTP compression support

This feature reduces the number of bytes being transferred between the HATS runtime, which is running on the WebSphere Application Server, and the end user's browser. This reduces the transfer time between the HATS runtime and the browser (which increases response time) and reduces the number of bytes flowing in the network (which increases network utilization).

To enable this feature, you must update the Web Deployment Descriptor file (web.xml) of your project to include the new compression filter (unless you are creating a new project using HATS 6.0.2 or above) as well as enable the compression filter in the Project Settings file (application.hap) of your project.

To add the compression filter to the web.xml:

  1. From the HATS Studio, switch to the Navigator view of the HATS perspective.
  2. Open "web.xml" located in the Web Content \ WEB-INF folder of your project.
  3. Click the Source tab to view the source of this file.
  4. Copy the following after the last defined servlet mapping (search for the last </servlet-mapping> tag):
    <filter>
       <description>Provides compression for output from HATS entry servlet</description>
       <display-name>CompressionFilter</display-name>
       <filter-name>CompressionFilter</filter-name>
       <filter-class>com.ibm.hats.runtime.filters.CompressionFilter</filter-class>
    </filter>
    
  5. Copy the following after the last defined filter mapping (search for the last </filter-mapping> tag):
    <filter-mapping>
       <filter-name>CompressionFilter</filter-name>
       <servlet-name>EntryServlet</servlet-name>
       <dispatcher>ERROR</dispatcher>
       <dispatcher>FORWARD</dispatcher>
       <dispatcher>INCLUDE</dispatcher>
       <dispatcher>REQUEST</dispatcher>
    </filter-mapping>
    <filter-mapping>
       <filter-name>CompressionFilter</filter-name>
       <url-pattern>/</url-pattern>
    </filter-mapping>
    <filter-mapping>
       <filter-name>CompressionFilter</filter-name>
       <url-pattern>/index.jsp</url-pattern>
    </filter-mapping>
    

    Note: If your project is targeted for WebSphere Application Server 5.1, you do not need to include the <dispatcher> tags in the above filter-mapping.

  6. Save the file.

If you have already run this project on the server, you will need to republish the application for WebSphere Application Server to pick up the change to web.xml

To enable support in the Project Settings file:

  1. From the HATS Studio, open the Project Settings file.
  2. Click the Source tab to view the source of the file.
  3. Add the following tags after the <classSettings> tag:
    <class name="com.ibm.hats.common.RuntimeSettings">
          <setting name="enableCompression" value="true"/>
    </class>
    
  4. Save the file.

To enable tracing:

To determine if compression is working properly and to see before and after page size in bytes, you can enable tracing by updating the trace.UTIL line in the runtime.properties (or runOnServer.properties file if running inside the HATS Studio). For example:

trace.UTIL=7

Known limitations:

  1. This feature is not applicable when running the HATS application on WebSphere Portal Server.
  2. All browsers supported by HATS, except for Internet Explorer 5.2.3 on Mac, support gzip compression by default. HATS ensures the "Accept-Encoding" HTTP header contains "gzip" before compressing a page.
  3. You must restart the application server if you want changes made to compression-related settings picked up while the application is running on the server. Typically, you are not required to restart the application server if changes are made in the project settings file.
  4. Javascript (.js) and Cascading Stylesheet (.css) files are not compressed by this new function. You must configure HTTP compression within your HTTP server to provide compression for these types of files. See the documentation of your HTTP server for more information.

Automatically delete host field data

The HATS server can optionally detect when you have cleared an input field of all data or changed the data, and to automatically clear the field on the host. If there is newer data supplied, that newer data will then be put into the cleared host field.  To enable the feature, add the following to the <classSettings> section of the application.hap file:

<class name="com.ibm.hats.common.RuntimeSettings">	
      <setting name="autoEraseFields" value="true"/>
</class>

Limitations: Any host field that is rendered as multiple HTML input fields will not be automatically cleared. For example, long host fields that wrap from one line to the next are rendered as multiple HTML input fields, and so will not be automatically cleared before updating.

Support for 3270/5250 numeric, 5250 uppercase and lower-case, and 5250 auto enter input fields for Firefox, Mozilla, Netscape and Opera clients

The following functions are now supported for Firefox (version 0.9 and above), Mozilla (version 1.6 and above, all supported platforms), Netscape (version 6.2.3 for Windows and 7.0 and above for all supported platforms), and Opera (version 7.0 and above, all supported platforms):

The above functions have previously been (and continue to be) supported for Internet Explorer version 6.0 and above for Windows.

Known Limitations:

Asynchronous update applet debug capability

There is a new parameter to enable asynchronous update applet client-side tracing for IBM support personnel. To enable applet tracing on the client, you must specify an HTML parameter "appletJavaConsoleTrace=true" on the HATS entry servlet URL. For example:

http://myhost/myhats/entry?appletJavaConsoleTrace=true

Note that this is client-side tracing as opposed to the HATS server-side tracing and complements the server-side tracing for debugging applet issues.

Asynchronous update applet disconnect compatibility for Internet Explorer

This feature enables Internet Explorer to have the same asynchronous update applet-disconnect behavior as all other browsers (non-Internet Explorer). To illustrate:

This feature enables you to specify that for Internet Explorer, the session should be cleaned up after the disconnectDelay timer has expired when either the browser is closed or the end user browses away from the HATS application.

To change the Internet Explorer behavior:  Replace "disconnect" for Internet Explorer with "disconnectAlways". The parameter list for Internet Explorer then appears as shown in the example below:

<class name="com.ibm.hats.common.AppletSettings">
	<setting name="allowOverride" value="false"/>
	<setting name="disconnectDelay" value="10000"/> 
	<setting name="enable" value="true"/> 
	<setting name="ie" value="disconnectAlways|refresh|local"/> 
	<setting name="netscape6+" value="disconnect|refresh|local"/>
	<setting name="nonWindows" value="disconnect|refresh|local"/>
	<setting name="other" value="disconnect|refresh|local"/>
	<setting name="port" value="0"/>
</class>

Alternative to HTML anchor tags for "allow positioning on protected text" feature

This feature provides enhancements to help reduce the number of bytes being transported from HATS to client browsers, which improves network utilization and end user response time.

Currently, the field widget has a setting named "Allow positioning on protected text". When this setting is enabled, the field widget generates HTML anchor <A> tags around each segment of protected text (the number of tags generated changes based on the "alignment" setting). An example of a typical tag that can negatively affect the overall size of a page:

<a href="javascript:setCursorPosition(162, 'HATSForm');
   ms('[enter]', 'HATSForm')" class="HBLUE null HATSPROTLINK" style="">

Tabbing between input fields is also a problem with the current implementation. Because HTML anchor tags can receive focus, you must tab over these links to navigate between input fields. This is both time consuming and not consistent with a typical terminal emulator.

To solve both of these problems, an enhancement has been added to the field widget. You can choose between using the current protected text positioning mechanism (anchor tags) or the new method. The new method works by adding an "id" attribute to the existing <td> (table cell) tags that are generated by the field widget. The "id" attribute indicates the 1-based linear screen position of the cell. An example of a typical tag:

<td id="p_162" class="HBLUE" colspan="28">

An example of the tag generated when you specify that a specific aid key be sent when a user clicks the text:

<td id="p_162" class="HBLUE" colspan="28" action="[enter]">

When running in a portal environment, the generated HTML tag differs slightly from the tag shown above, as follows:

<td id="p_162_FORMID" class="HBLUE" colspan="28">

where FORMID is the ID of the enclosing HTML form. In portal, every HATS portlet is given a unique name. This unique name enables the Javascript to know the form on which to set the cursor position.

Bidirectional applications use the bdo tag in order for the field widget to be able to apply directions. Therefore, a bdo tag must be added within the table cell tag (<td>) and the table cell id attribute must also be used inside the bdo tag, as shown below:

<td id="p_162" class="HBLUE" colspan="28"> <bdo dir="ltr" id="p_162"> </bdo>user</td>

At runtime in the browser, the HATS Javascript is notified when one of these cells is clicked. HATS updates the cursor position internally and then visually indicates the new cursor position to the user. This visual indication can be controlled by the developer via a CSS style. By default, the visual indication is to set the background color of the text to yellow. With this setting enabled, the following is provided:

  1. Allows you to position the cursor by clicking on an area of protected text.
  2. Allows you to see the cursor's initial position (when the page loads), even if the cursor is not inside an unprotected field.

Usage Notes:

  1. A new setting has been added to the field widget - "renderProtectedTextAsLinks". It supplements the current setting named "showLinksForProtectedFields". Currently, this setting controls whether HTML anchor tags are used to render protected text; it appears in the GUI as "Allow positioning on protected text". The new setting generically controls the mechanism for allowing positioning on protected text.  The field widget uses the value of the "renderProtectedTextAsLinks" setting to determine whether to render using links (which is the default behavior) or render with the new implementation.
  2. Rendering with links allows you to navigate to protected text using either your keyboard or mouse. If you use the new "renderProtectedTextAsLinks" setting, only the mouse can be used to position the cursor.
  3. As with the current implementation, depending on the value of the alignment setting (character-by-character, word-by-word, normal), you are restricted by how precisely you can set the cursor position.

Limitation:
This new function will not work correctly when the same area of a screen is rendered multiple times using the field widget. For example, in the case where the same region of the screen is rendered on multiple tabs in a tabbed folder, you must render the protected text as links in order to provide your end users with the ability to position the cursor on that region of the screen.

To enable this feature, you must enable "Allow positioning on protected text" (a setting of the field widget, named showLinksForProtectedFields in the source file) as well as set the "renderProtectedTextAsLinks" field widget setting to "false". There are various ways in which you can enable this new setting:

You must also add the following snippet of CSS to your associated style sheet (a project or transformation's template .jsp file):

.HCURSORINDICATOR {
   text-decoration: underline;
   background-color: yellow;
}

Note: For information about how HATS uses style sheets, visit: http://publib.boulder.ibm.com/infocenter/hatshelp/index.jsp?topic=/com.ibm.hats.doc/doc/ugtmplat.htm

Update history

This refresh pack contains fixes for APARs as well as internal fixes.

Problems fixed in this refresh pack

Please see the HATS support page for a more detailed description of these APARs.

This update includes the following fixes:

IC45765 - HATS Administration is unable to administer EJB Project

IC46148 - In subfile, high intensity marker not recognized without text

IC46168 - The refresh applet does not work properly in Java 1 environment with Shift-JIS encoding

IC46182 - Using /entry?disconnectOnClose=true & Internet Explorer causes loss of keyboard input focus on pressing certain PF keys

IC46189 - Input into fields defined as O type not handled correctly

IC46366 - Using an Integration Object, YEN symbol input is translated to a backslash

The following problems were found internally, so there is no additional information about them on the HATS support page.

30676 - Macro: Password field displayed in prompt

31148 - Error dragging JSP file from the HATS Project view to Struts page.

31163 - Can't change HATS Admin management scope on WAS V6 to default + manage all applications

31510 - ENPTUI Scrollbar slider button is not drawn

31816 - Add/remove to WAS 6 server - then you can't cleanly delete HATS

31832 - Value to use for macro Prompt does not behave the same as default value

31837 - Allow ability to specify rendering set for 'prepopulating'

31962 - TabbedFolder Editor: Cursor position lost

31968 - Subfile: Subfile Dialog has drop-down of screens

31972 - Intermittent problems with applet and Firefox

31973 - Missing info in HAT0002, 0003 on zSeries WAS, HATS 6

31974 - Studio: Widget not redrawn using the different chosen screen

31980 - Migration: All events are turned on

31992 - Subfile: VisualTable: ArrayOutOfBoundsEx thrown in -openConsole

31995 - Subfile: No Actions: Inputfields are not aligned

31997 - Field: Widget Preview: Allow cursor position:null displayed

32017 - Subfile: VisualTable rendering actions in table

32018 - Subfile:Header: Specify by color not working properly

32019 - Advanced Macro Editor: Unable close editor using (X) button

32020 - Subfile: Extra space(s) rendered above the subfile

32026 - Subfile: Drop-down lists are not being prefilled

32027 - Subfile: Exception thrown: Number Rows per record set to 0

32034 - Field Input inhibit will delete all content in the field

32040 - SubfileComponentV6 never groups its Subfile Actions

32045 - Keyboard [enter] does not work with "Allow positioning..."

32046 - Calendar widget does not work with field exit input field

32049 - Playback of WEL macro in terminal causes exception/hang

32050 - Create WEL macro, prompt defaults not entered on terminal

32051 - HATS 6.01 echoing messages to SystemErr (and likely SystemOut)

32066 - VisualTable: Unable to render Line and Vertical Bar graph

32085 - Prevent subsequent clicks leading to BusyPage

32102 - ROS: URL always points to localhost even running on remote server

32103 - Not all colors enabled for reverse video

32119 - Error when run on server - Could not find client that is able to launch the selection

32124 - Project not deleting entirely after using HT or Adv Mac Editor

32132 - Subfile Transformation: First drop-down box is shorter than others with Mozilla and Firefox

32137 - Portal project blank templates displaying type=text/css in preview

32148 - Recommended steps for uninstalling HATS 6.0.2.  See the Note under "Uninstalling maintenance using Update Manager."

32150 - DropdownWidget not setting default value properly

V6.0.1 Description

This refresh pack may be applied to HATS Studio V6 installations. HATS Studio V6 may be installed in conjunction with Rational Software Development Platform V6.0.

New functions in this refresh pack

Alternate tag rendering

Some host applications have screens on which a field that is protected during one screen presentation changes to unprotected during the next screen presentation, or vice-versa. A transformation to render the input field as a drop-down list works well when the field is unprotected, but does not render anything when the field is protected. Alternate tag rendering enables you to handle these screens correctly with a single transformation, whether a field is protected or unprotected.

Two new attributes have been added to the HATS:Component tag; "alternate" and "alternateRenderingSet". These attributes enable Default Rendering to transform the region specified in a HATS:Component tag when the component specified in the tag is unable to recognize the region.

To enable this function, add the "alternate" attribute to any HATS:Component tag. The value of this attribute must be set to "DEFAULT".

The "alternateRenderingSet" attribute specifies the rendering set (as defined in the application.hap file) to use. By default, when no alternate rendering set is specified, the default rendering set is used.

Example 1: Use Default Rendering as the alternate rendering method (using the default rendering set)

<HATS:Component type="com.ibm.hats.transform.components.InputComponent" 
    widget="com.ibm.hats.transform.widgets.DropdownWidget" row="20" col="16" erow="20" 
    ecol="23" componentSettings="" widgetSettings="" alternate="DEFAULT" />

Example 2: Use Default Rendering as the alternate rendering method (using the "set2" rendering set)

<HATS:Component type="com.ibm.hats.transform.components.InputComponent" 
    widget="com.ibm.hats.transform.widgets.DropdownWidget" row="20" col="16" 
    erow="20" ecol="23" componentSettings="" widgetSettings="" 
    alternate="DEFAULT" alternateRenderingSet="set2" />

To provide alternate rendering for all tags in the application, update the project settings file (application.hap) to add the following:

<class name="com.ibm.hats.transform">
    <setting name="alternate" value="DEFAULT"/>
    <setting name="alternateRenderingSet" value="set2"/>
</class>
You can add these settings for the com.ibm.hats.transform class in the project settings file somewhere between the <classSettings> and </classSettings> tags. When settings are not specified at the HATS:Component tag level, project level settings are used.

New setting for the Function Key component

Some host screens have function keys close together, or the function key descriptions have multiple words in them. Either of these situations makes it difficult for the component to recognize each function key in a group.

A new setting, searchType, has been added to the function key component to enable correct recognition of function keys for those situations. There are two values for the setting:

entireKey
Searches for the start delimiter, delimiter, and end delimiter for a single function key, then searches for the next key. This is the behavior of the component as it currently exists, and this value is the default.
allDelimitersFirst
Searches for all of the start delimiters and delimiters first, after which the component attempts to derive the end delimiters from the areas that exist between the start delimiters.

Note: If you specify the allDelimitersFirst value, and there are multiple word descriptions for any function keys, you might need to change the value of the reqValueAfterDescription as follows:

<setting name="reqValueAfterDescription" value="  "/>

There are various ways in which you can implement this setting; at the component level, the default rendering level, or at the transformation level. Following are examples of how to implement the new setting for each level:

Component level in the project settings (application.hap):

<class name="com.ibm.hats.transform.components.FunctionKeyComponent">
    <setting name="delimiter" value="=| - |-| = |:"/>
    <setting name="searchType" value="allDelimitersFirst"/>
    <setting name="reqValueAfterDescription" value="  "/>
    <setting name="reqValueBeforeLeadingToken" value=" "/>
    <setting name="startDelimiter" value="PF#|F#| #=|#"/>
</class>

Default rendering level in the project settings:

<renderingItem associatedScreen=""
          description="Transform function keys" enabled="true"
          endCol="-1" endRow="-1" startCol="1" startRow="20"
          type="com.ibm.hats.transform.components.FunctionKeyComponent" 
          widget="com.ibm.hats.transform.widgets.ButtonWidget">
          <componentSettings>
             <setting name="delimiter" value="=| - |-| = |:"/>
             <setting name="searchType" value="allDelimitersFirst"/>
             <setting name="reqValueAfterDescription" value="  "/>
             <setting name="startDelimiter" value="PF#|F#| #=|#"/>
             <setting name="reqValueBeforeLeadingToken" value=" "/>
          </componentSettings>
          <widgetSettings/>
</renderingItem>

Transformation level:

<HATS:Component type="com.ibm.hats.transform.components.FunctionKeyComponent" 
    widget="com.ibm.hats.transform.widgets.ButtonWidget" 
    row="1" col="1" erow="21" ecol="77" 
    componentSettings="delimiter:=| - |-| = |:|reqValueAfterDescription:  |
    startDelimiter:PF#|F#| #=|#|reqValueBeforeLeadingToken: |
    searchType:allDelimitersFirst"
    widgetSettings="" textReplacement="" />

Multiple wildcards allowed in value fields of HATS Administration console Host Connections search criteria

You could use a wildcard character (*) when searching for host connections in HATS Version 6. After installing the HATS 6.0.1 maintenance, you can use multiple wildcard characters in the search value. Wildcard characters can be entered in the search value field at the beginning, middle, or end of the search string value, or any combination of the three places.

New setting for the text input, calendar, and pop-up widgets

A new setting has been added to the text input, calendar, and pop-up widgets. This setting enables you to make the text box generated by these widgets read only. A read only text box appears as a regular text box, but does not allow the end user to modify its contents. This is useful in cases where you want to display the contents of a non-protected field to a user, but you do not want the user to modify the contents. Also, in the case of the pop-up widget, it enables you to control the input supplied into the field. Only values available in the pop-up can be supplied to the field.

You can enable this setting at either the project or tag level. To enable at the project level:

To enable this setting at the tag level, use the Edit Host Component wizard to modify the widget settings.

This setting is disabled by default.

New setting for the subfile component

A new setting, includeEmptyRows, has been added to the subfile component to enable you to decide if you want to include empty rows within the subfile data on the host screen when the subfile is transformed.

New setting for Global Rules imported from HATS V5

A new setting, enforceImmediacy, is added to any global rules imported into HATS V6 from HATS V5. When this setting is true, the global rule behaves as it did in HATS V5 when the "nearest input field only" option is used. When this setting is false, the default, the global rule behaves as it does in HATS V6.

To make newly defined global rules behave as the HATS V5 global rules did, you must add and set the enforceImmediacy setting to true by editing the source view of the project settings.

Update history

This refresh pack contains fixes for APARs as well as internal fixes.

Problems fixed in this refresh pack

Please see the HATS support page for a more detailed description of these APARs.

This update includes the following fixes:

IC43925 - Macros with multiple entry screens may not execute properly.

IC43990 - In SHIFT-JIS, enabling the applet when using SHIFT-JIS encoding causes rendering of garbage.

IC44112 - HATS does not correctly render dialog pop-up box when it includes text in the border of the box.

IC44837 - Entering data into a 5250 SignedNumericField on the browser and pressing the Enter key displays "Enter key not allowed" error.

IC45048 - In DBCS applications, if a JSF page is created, the DBCS characters appear as garbage.

IC45088 - Blank screen coming down from host. This is caused by an UNBIND followed by a BIND in the midst of the flow during LOGON.

IC45482 - HATS V5 and V6 can not switch tabs in Insert Tabbed Folder dialog when userID contains numbers.

IC45570 - Removing color from HATSPROTLINK definitions still renders the link in the wrong color.

IC45626 - HATS buffer to hold screen contents is one byte too small, which can result in truncation of one character at the bottom right.

IC45634 - Nothing displayed on query screen on iSeries WRKQRY sequence.

IC45682 - Re-editing a global rule provokes Javascript error in preview. Source file looks syntactically correct.

IC45714 - New setting added for global rules.

IC47385 - A HATS browser session accessing a 5250 host screen with mandatory fields will not allow F3 to exit from the screen

See New setting for Global Rules imported from HATS V5 for more information.

The following problems were found internally, so there is no additional information about them on the HATS support page.

30214f_1 - Drop-down does not auto submit when used with Input component.

30890 - When data is inserted into a portlet input field, input fields on other portlets on the same screen, when refreshed, contain the same data.

31002 - Values for pop-up widget are not being displayed in preview or the Run On Server function.

31422 - When editing a global rule, and changes made are saved even if the changes are cancelled.

31550 - Subfile not rendering completely when the subfile action item is in the same row as the end marker.

31597 - In bidirectional applications, text replacement breaks the replacement line in the field widget.

31625 - HATS focus is lost when the Applet is enabled with Firefox 1.0 browser.

31628 - When the subfile uses the Field Component to render the subfile, the Submit button is not displaying properly.

31629 - Subfile component in default rendering consumes a region of the screen that is not a part of the subfile.

31630 - PF1 key not working on Japanese version to show Eclipse context-sensitive help.

31640 - Subfile recognitiion of Actions by color is not working properly.

31644 - Subfile component is not recognized when Actions not required box is checked.

31647 - In Insert Host Component wizard for a bidirectional project, command line text and widget are not reversed when boxes are checked.

31652 - Link widget orientation is inconsistent.

31656 - Subfile Actions are rendered in Subfile Header.

31658 - The asynchronous update applet is not showing input inhibited with Internet Explorer.

In HATS V6.0.1, the "local" property is removed from the Internet Explorer default settings. This change affects new HATS V6.0.1 projects only.

You can add the "local" property, if needed. The use of the property is restricted when using transformations where the HTML content can be replaced using Dynamic HTML. However, this method has other associated problems, especially in Javascript execution. In this case, it is advisable that the property is not enabled.

31703 - When inserting a Default Rendering item into a transformation, the data within the selected region is not rendered completely.

31718 - Two Submit buttons displayed in subfile widget, which affects the alignment of information.

31724 - DBCS characters are truncated in command line when "showUnprotectedSISOSpace=false."

31742 - When a global variable criterion is used for screen recognition in a customization, the global variables are not displayed in the Global Variables view.

31783 - URL overriding throws ClassCastException in WebSphere Portal Server.

31785 - When an apply transformation action occurs after an insert data action in a screen customization event, the data that was inserted on the screen might not be visible to the client browser.

31786 - The Send key action of a screen customization may cause an infinite loop, if the key sent is not a key that flows to the host.

31793 - Project settings and default settings for the subfile component recognize subfiles differently.

31806 - When using run on server, the tabbed folder is rendered incorrectly; it does not appear as a tabbed folder.

31807 - Regular expression group support fails with an exception.

31815 - Macro stepping prompt error when prompt=all is enabled.

31818 - Preview in New Transformation Wizard and editor does not show prepopulated transformations using the default rendering set if the default set is not the 'main' rendering set.

31824 - Unable to use an existing transformation fragment when creating a new global rule.

31838 - Using HTML for text replacement in a subfile widget does not work properly.

31840 - Using text replacement to change a word to a DBCS word, the DBCS word does not appear in preview page.

31852 - An IOException is issued when you open the source of default.jsp for a macrohandler.

31869 - A StringIndexOutofBounds error is issued when there are repeated uses of table extracts in an Integration Object.

31870 - When a project that creates a global variable is deleted, the HATS global variable view is not updated.

31872 - In bidirectional applications, when field reverse and auto field reverse are active, text typed in an input field is reversed.

31873 - In bidirectional applications, when an LTR subfiles screen is transformed, and you choose to view one of the files in the component at runtime, the subfile page is replaced with the previous page view.

31881 - NullPointerException thrown when creating DBCS text input.

31882 - Preview screen in DBCS application displays garbage characters.

31889 - Subfile actions are being rendered, although the settings for the component specify that they should not be rendered.

31890 - When editing the subfile component settings from the Properties view, the settings for default selected regions are different than the actual project settings.

31892 - In bidirectional applications, when an input field on the host screen is rendered as a pop-up widget, the text of the "Close" button in pop-up widget is reversed.

31895 - In bidirectional applications, the opposite to screen direction input fields with hints are left justified when rendered.

31903 - The two new attributes added to the HATS:Component tag; "alternate" and "alternateRenderingSet" can also be used in global rules.

See Alternate tag rendering for more information.

31926f_1 - Tabbed Folder not displayed correctly in Portal project.

31929 - When running an application on server, an error is issued if the disconnect button on the application keypad is clicked.

31933 - In bidirectional applications, defined text replacement for a widget with opposite text orientation, the replacing text is not reversed in HATS Studio, but it is reversed in runtime.

31934 - Global rules using input fields are recognized correctly in HATS Studio, but during runtime source code is displayed in the widget.

31935 - For some subfiles where headers and data do not have the same column breaks, the column might be divided incorrectly with field table recognition.

31940 - In bidirectional applications, when activating a macro with an insert, text defined in a global variable is reversed in runtime.

31941 - In bidirectional applications, for an insert data action defined in a customization for a RTL screen, the prompted text is reversed.

31946 - In bidirectional applications, the behavior of the Match on LTR screen and Match on RTL screen options are inconsistent when using global rules.

31950 - Subfile headers are not be recognized by color.

System requirements

HATS applications inherit the hardware, operating system, and other software requirements for WebSphere Application Server. See the WebSphere Application Server requirements page for more information.

HATS Studio inherits the hardware requirements for the version of the Rational Software Development Platform you have installed. For more information, go to the Rational software products page, click the product you have installed, and then click the System requirements link.

Supported hardware and software

There are hardware and software prerequisites for the machine where you install HATS Studio, the machine where you deploy HATS applications, and the browsers with which your users will interact with HATS applications.

Please refer to the hardware and software prerequisites document in the HATS Information Center for the current list of supported hardware and software prerequisites.

HATS 6.0.1 added server support for the HP/UX 11i operating system for WebSphere Application Server Versions 5.1 and V6. HATS 6.0.1 also added server support for WebSphere Application Server V6 for the OS/400 operating system.

In addition, HATS 6.0.1 added the capability to create 5.1 portlets, and extended support for HATS portlets to run on IBM WebSphere Portal Server and IBM WebSphere Portal Express Version 5.1.

HATS 6.0.5 added server support for WebSphere Application Server (WAS) Version 6.1.

HATS 6.0.5 added portlet deployment support on WebSphere Portal Version 6.0.x.
Note: The Portal Tools necessary for creating HATS portlets are not available in all HATS supported client software. Please refer to the documentation for the specific client software to determine whether Portal Tools are included.

Installing HATS maintenance

HATS Version 6 is delivered as an Eclipse feature. One benefit of this is that you use Eclipse Update Manager to install maintenance. HATS maintenance is delivered as a zip file and contains all fixes available since HATS Version 6 was first released.

After installing maintenance, your existing HATS projects in the current workspace are automatically updated with the new files. Although overwritten files are saved, HATS projects are not automatically restored to their former state if HATS maintenance is uninstalled or disabled. We recommend that you back up your existing HATS projects using a code repository, export them as zip files, or export them as project interchange files before applying HATS maintenance. See HATS project updates for more information.

If you installed HATS on Rational Web Developer please see Installing HATS maintenance when HATS is installed on Rational Web Developer for important information.

Follow these steps to install HATS maintenance:

  1. Download the maintenance zip file from the HATS support page to your system.
  2. From the Rational Studio toolbar, select Help > Software Updates > Find and Install. The Install/Update, Feature Updates page displays.
  3. Select Search for new features to install and click Next.
  4. To find and install HATS maintenance, an update site must be defined. HATS did not define an update site, so you must define one. Since HATS maintenance is packaged as a zip file, click New Archive Site and select the HATS maintenance zip file on your system as the archive site.

After defining the update site:

  1. Select the site and expand it.
  2. Select IBM Host Access Transformation Services Fixes.
  3. Click Next to continue. The Install, Search Results page displays.
  4. Select IBM Host Access Transformation Services.
  5. Click Next. The Install, Feature License page displays.
  6. Accept the license agreement.
  7. After you accept the license agreement, click Next. The Install, Install Location page displays.
  8. Review the location where the maintenance is to be installed, and click Finish. HATS maintenance is automatically installed to the same location as HATS Version 6.0.

    Note: Do not be concerned about warning messages that say you are installing an unsigned feature.

  9. Click Install to continue.

Update Manager prompts you to restart Rational Studio. After restarting Rational Studio, your HATS projects in the current workspace are automatically updated with the new files.

You can verify that the maintenance is installed and configured correctly by selecting Help > Software Updates > Manage Configuration from the Rational Studio toolbar. You should see that the previous version of HATS is disabled, and has an icon next to it signifying that it is disabled. You can view the status of the newly installed maintenance by selecting the enabled HATS feature and clicking the Show Properties link, which displays the properties for feature. In this panel, you can verify the version of the active HATS feature.

The install log is located at rad_install_dir/eclipse/configuration/org.eclipse.update/install.log.

HATS directory structure after HATS 6.0.10 is applied

The Update Manager framework requires that entire plug-ins be replaced when maintenance is applied to them. After installing maintenance, Update Manager disables the previous version of the plug-in; it is not automatically removed. This enables you to easily switch back to the previous version of the plug-in. So, after installation of HATS 6.0.10, the HATS directory structure features and plug-ins folders contain folders for the 6.0.10 version of the files as well as folders for all previous versions of HATS you have installed.

HATS project updates

The project update process creates a backup folder in the project directory named Save_pre_6.0.10. This folder contains all of the files that were overwritten by the update process. These files are saved so that you can compare and merge them with your new HATS 6.0.10 files. Do not worry if you see errors in the task view; these files are no longer used by the application. When you are satisfied that all the saved files have been compared and merged, you can delete the Save_pre_6.0.10 folder.

If you would like to keep a backup of your files at their state before HATS 6.0.10 was installed, do not delete the Save_pre_6.0.10 folder. In the future, if you want to return to the state before HATS 6.0.10 was installed, the files in this folder will enable the return.

Although overwritten files are saved, HATS projects are not automatically restored to their former state if HATS maintenance is uninstalled or disabled. However, within the Save_pre_6.0.10 folder, the directory structure is the same as the structure in your project and can be used to manually restore your HATS projects.

To manually restore your workspace to its state before HATS 6.0.10 was installed, follow these steps:

  1. Shut down Rational Studio.
  2. Restore your HATS projects by copying the files in the Save_pre_6.0.10 folder back to their original locations.
  3. Restore your HATS EAR projects:
    1. Copy hats_install_dir\eclipse\plugins\com.ibm.hats_6.0.x\predefined\projects\earProject\lib\*.jar to each HATS EAR project, where hats_install_dir is the installation directory where you installed HATS, and 6.0.x is the version you want to restore. The default for hats_install_dir is C:\Program Files\IBM\HATS\V6.
    2. Copy hats_install_dir\eclipse\plugins\com.ibm.hats_6.0.x\product.xml to each HATS EAR project, where hats_install_dir is the installation directory where you installed HATS, and 6.0.x is the version you want to restore. The default for hats_install_dir is C:\Program Files\IBM\HATS\V6.
  4. Reset the maintenance flag in the HATS preferences file:
    1. Edit the hats_install_dir\eclipse\plugins\com.ibm.hats_6.0.x\product.xml, where hats_install_dir is the installation directory where you installed HATS, and 6.0.x is the version you want to restore. The default for hats_install_dir is C:\Program Files\IBM\HATS\V6. Copy the build date to the system clipboard. The build date is included in the <date> tag under the <build> tag.
    2. Edit the workspace_dir\.metadata\.plugins\org.eclipse.core.runtime\.settings\com.ibm.hats.prefs file, where workspace_dir is your workspace folder. The default for workspace_dir is C:\Documents and Settings\Administrator\IBM\rationalsdp6.0\workspace. Replace the value for the projectBuildDate keyword with the date you copied from the <date> tag under the <build> tag in the product.xml file.
    3. Save the file.
See Uninstalling maintenance using Update Manager for information on uninstalling this maintenance.

Installing HATS maintenance when HATS is installed on Rational Web Developer

If you installed HATS on Rational Web Developer and you have never installed HATS maintenance, the installation of this maintenance may fail. You might see java.lang.Exception messages about not being able to remove files, and a message that the EJB plug-in does not exist.

Before installing the HATS 6.0.10 maintenance, edit the feature.xml file in the HATS install directory\eclipse\features\com.ibm.hats_6.0.0 directory and remove the following lines:

<plugin
	id="com.ibm.hats.ejb"
	version="6.0.0"/>
After saving the feature.xml file, the installation of the HATS 6.0.10 maintenance should complete successfully.

Problems when uninstalling and reinstalling HATS

Rational Software Development Platform products might show HATS as being disabled after the following sequence of actions:

  1. HATS Version 6.0.10 is installed.
  2. HATS Version 6.0 is uninstalled.
  3. HATS Version 6.0 is reinstalled.

To work around this problem, follow these steps:

  1. Restart Rational Studio with the -clean option. It takes much much longer for Rational Studio to start up with this option. However, the -clean option cleans out the loaded plug-in cache and ensures that the correct plug-ins are loaded. You only need to use the -clean option once to clear up this problem.

    To do this, you can either:

  2. From within Rational Studio, select Help > Software Updates > Manage Configuration.
  3. Click on the Show Disabled Features icon, if the icon is not already selected. You should see that HATS 6.0.0 is disabled. The options in the right frame do not allow you to enable it.
  4. Select Disable in the right frame, even though HATS is already disabled.
  5. Select Yes when prompted to restart Rational Studio.
  6. After Rational Studio restarts, select Help > Software Updates > Manage Configuration.
  7. Select Host Access Transformation Services 6.0.0 and click enable.
  8. Select Yes when prompted to restart Rational Studio. After Rational Studio restarts, HATS should be enabled.

Uninstalling maintenance using Update Manager

You can uninstall or disable the current maintenance level by selecting Help > Software Updates > Manage Configuration from the Rational Studio toolbar. When you uninstall the current version and enable a previous version, HATS projects are not automatically restored to their previous level. See HATS project updates for more information on manually restoring your HATS projects.

Note: When uninstalling HATS 6.0.10, answer No when prompted to restart. Then, enable the version of HATS that you would like to be active and answer Yes to the restart prompt. If you answer Yes to the first restart prompt after the uninstall, the HATS perspective does not come up and an error message displays. You will have to go into Software Updates, enable a version of HATS and restart again.

Updates, limitations, and known problems

Updates, limitations, and known problems about Host Access Transformation Services are documented in the form of technotes on the IBM Software Support Web site.

As limitations and problems are discovered and resolved, the IBM Software Support team updates the knowledge base. By searching the knowledge base, you can quickly find workarounds or solutions to problems that you experience. The following link launches a customized query of the live Support knowledge base. To create your own query, go to the Advanced search page on the IBM Software Support Web site:

View all technotes for Host Access Transformation Services

Contacting IBM Software Support

IBM Software Support provides assistance with product defects.

Before you submit your problem to IBM Software Support, ensure that your company has an active IBM software maintenance contract, and that you are authorized to submit problems to IBM. The type of software maintenance contract that you need depends on the type of product you have:

If you are not sure what type of software maintenance contract you need, call 1-800-IBMSERV (1-800-426-7378) in the United States. From other countries, go to the "Contacts" page of the IBM Software Support Handbook at http://techsupport.services.ibm.com/guides/contacts.html and click the name of your geographic region for phone numbers of people who provide support for your location.

To contact IBM Software support, follow these steps:

  1. Determine the business impact of your problem.
  2. Describe your problem and gather background information.
  3. Submit your problem to IBM Software Support.

Determine the business impact of your problem

When you report a problem to IBM, you are asked to supply a severity level. Therefore, you need to understand and assess the business impact of the problem that you are reporting. Use the following criteria:

Severity 1 The problem has a critical business impact: You are unable to use the program, resulting in a critical impact on operations. This condition requires an immediate solution.
Severity 2 This problem has a significant business impact: The program is usable, but it is severely limited.
Severity 3 The problem has some business impact: The program is usable, but less significant features (not critical to operations) are unavailable.
Severity 4 The problem has minimal business impact: The problem causes little impact on operations, or a reasonable circumvention to the problem was implemented.

Describe your problem and gather background information

When describing a problem to IBM, be as specific as possible. Include all relevant background information so that IBM Software Support specialists can help you solve the problem efficiently. To save time, know the answers to these questions:

Submit your problem

You can submit your problem to IBM Software Support in one of two ways:

If the problem you submit is for a software defect or for missing or inaccurate documentation, IBM Software Support creates an Authorized Program Analysis Report (APAR). The APAR describes the problem in detail. Whenever possible, IBM Software Support provides a workaround that you can implement until the APAR is resolved and a fix is delivered. IBM publishes resolved APARs on the Software Support Web site daily, so that other users who experience the same problem can benefit from the same resolution.

Trademarks

The following terms are trademarks of International Business Machines Corporation in the United States, other countries, or both:

Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.

Microsoft, Windows, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both.

Other company, product, or service names may be trademarks or service marks of others.