Differences Between Webulator/400 and Other 5250 Emulators


Webulator/400 Client Software

Because Webulator/400 translates the AS/400 5250 data stream into HTML forms that are presented by Web browsers, there is no Webulator/400 specific client software. Data stream processing is performed on the AS/400 and user interaction is handled by the Web browsers. This differs from 5250 emulators that perform the data stream interpretations and user interaction on the client machine. The Webulator/400 offers the advantage of being client platform independent but pays a small price in terms of client side flexibility and functionality.

Known Browser Limitations

The following sections describe some of the known browser limitations and offers possible ways to work around these limitations.
Nothing happens when the Enter key is pressed
Some browsers will recognize the Enter key and return the form data only if there is one, and only one, input field available on the form. If there are none or multiple input fields, the user must press the Enter submit button instead.
Nothing happens when a Function key is pressed
Since the browser is handling the user input functions, it traps the Function keys for its own use and not for Webulator/400. This means that when you press one of the function keys (e.g., F1), it will either ignore you or perform a browser function. Neither one of these is what you want. You must press the browser submit button that corresponds to the desired Function key.
Columns do not line up
By default, Webulator/400 generates preformatted text screen data which ensures that output fields will properly line up. Unfortunately, column data will not line up if there is either an input field or a submit button on the same line. This happens because the width of input fields and buttons are not the same as the width of an output field. If the columns are not lining up because of a submit button that Webulator/400 created, you may be able to modify your keyword parsing configuration to prevent Webulator/400 from creating the submit button.

You can have Webulator/400 generate HTML tables instead of preformatted text. Tables will guarantee that columns will line up by inserting extra space between fields. Please see the Preformatted Text or HTML Tables section for more information. Please note that you must have a browser capable of displaying tables for the screen to appear correctly.

No input fields have focus
Webulator/400 Version 1.1 can generate a JavaScript routine that will automatically position the cursor in the correct field. Please see the JavaScript Usability Enhancements section for more information. Please note that you must have a JavaScript capable browser for the cursor to be positioned correctly. If you do not have Send JavaScript enabled or your browser does not support JavaScript, you will be dependent on the browser to select an input field. Some browsers will automatically select the first input field, while several will not select any fields but instead require the user to select a field before being able to enter data.
Field level prompting does not work
Webulator/400 Version 1.1 can generate a JavaScript routine that will automatically return to the AS/400 the location of the last input field that had focus. Please see the JavaScript Usability Enhancements section for more information. Please note that you must have a JavaScript capable browser for the cursor position to be reported to the AS/400 correctly. If you do not have Send JavaScript enabled or your browser does not support JavaScript, you will have to take an extra step to get field level prompting. You can inform Webulator/400 of the field position you wish to return to the AS/400 by typing a configurable string (the system default is a ?) in the field and pressing a non-Enter submit button. When Webulator/400 recognizes the Field Level Prompting string, it will strip it out of the 5250 data stream and return the cursor location of the current field.
Browser does not properly display Webulator/400 screens
Various browsers support different levels of the HTML specifications. Browsers should ignore HTML tags that they do not understand. Unfortunately, some browsers incorrectly interpret these unknown tags. The results can vary from incorrect colors to improper formatting. Webulator/400 requires an HTML 2.0 compliant browser to run most configurations and a browser that supports HTML extensions to use some of the more advanced configuration options.

The following configuration elements require a browser that supports extensions to HTML 2.0:

The following configuration elements require a browser that supports extensions to HTML 3.0:

The following configuration elements require a browser that supports HTML tables:

The following configuration element requires a browser that supports JavaScript:

You may have also included some HTML 3.0 or HTML extensions in your custom header or footer file that may cause browser problems. Make sure you understand the ramifications of the HTML tags may have on older browsers before you include them in a custom header or footer file.

Unable to view all AS/400 output messages
Since the browser is only able to receive data from the AS/400 after a user submits the HTML form, it is not possible for Webulator/400 to continually send screen updates to the browser. Webulator/400 will attempt to buffer all output messages and send them with the next screen but it is not always able to do so. Webulator/400 clears all screen data (seen and unseen) whenever it encounters a Clear Unit command in the 5250 data stream. A Clear Unit command is inserted into the 5250 data stream by various screen I/O commands such as the EXFMT command in RPG.

Webulator/400 is also unable to support AS/400 Break messages. AS/400 Break messages are messages that interrupt the current screen and require some sort of response (at a minimum an Enter key) to return to the previous screen. Break messages cause Webulator/400 to be out of sync with the AS/400 causing unpredictable results.

Extra screens are occasionally sent to the browser
Some host programs send a write/read screen I/O request followed immediately by a cancel read operation. The end result of these operations are the same as a write request. These requests are handled seamlessly by traditional emulators because of their constant communication link with the AS/400. Webulator/400 has a little more difficulty handling these I/O requests. Webulator/400 will verify that no Cancel requests have been generated by the AS/400 before sending a screen to the browser. Unfortunately, there is no guarantee that the Cancel request will be received before the screen is sent to the browser. This means that certain write/read/cancel requests will get by Webulator/400's checking and be sent to the browser. If this happens, all you have to do is press a Virtual Keyboard button and the next screen will be sent to the browser.
AS/400 Cursor Control Keywords are ignored
Since Webulator/400 does not have control over how the Browser handles the user interface, the following DDS keywords have no effect:
Unable to perform Text Assist functions
Webulator/400 is unable to fully support programs that use the Text Assist functions (e.g., OfficeVision/400). Text Assist programs require more interaction with the AS/400 than is possible using Webulator/400.
The Attention button does not always work
Care should be taken before allowing this button to be made available through Webulator/400. You must ensure that the user profile that is signed on for a session has an Attention program assigned to it. As long as it does, everything will work fine. You will run into problems if a Webulator/400 user presses the Attention button and their user profile does not have an attention program defined for it. 5250 emulation programs are able to notify the AS/400 that the Attention key was pressed and retain control of the current screen until they are interrupted by the new attention program. If there is no attention program to run, the 5250 emulation program will continue to process the current screen. Since the Web browser returns control to the AS/400 when any submit button is pressed (including the Attention submit button), it must wait for a new screen to arrive from the AS/400 before allowing the user to interact with the screen. If there is no attention program to generate a new screen, the browser will time out waiting for the new screen and will not allow the user to continue with the screen where the Attention button was pressed.