IBM Lotus Expeditor 6.2.2 and IBM Lotus Notes 8.5.2 introduced a new component in Composite Applications known as Linux Native Application Viewer. This component provides a simplified way for a Linux (GTK) based native applications to be launched and embedded inside an eclipse view within a composite applications. This will allow your native applications to exist side-by-side with your SWT views in your composite application.
Adding the Linux Native Application Viewer component on the Composite Application Editor’s palette
1. Right Click in the open space on the palette, this will present you with a context menu. Now select the Add Components Add Locally Installed Components
2. The Select a Local Component dialog opens. From the components list, select
the Linux Native Application Viewer
and click OK
3. You should find the Linux Native Application Viewer
added to the palette.
Configuring the Linux Native Application Viewer for native applications
Once you have added the native application viewer component to the palette in the Composite Application Editor, you are ready to use it in your composite applications.
1. Add the component to your composite application by dragging and dropping it to the layout pane. You should see an instance of the component added to the application layout. Initially, this component is not configured. Please refer the image below.
2. To edit the component properties, click on the component preference icon at the top right corner of this component to get to the Edit Component Properties
3. The Edit Component Properties dialog opens. Switch to the Component Settings
tab to update the Native Application Viewer Properties.
The information supplied here is used by the Linux Native Application Viewer runtime to launch the native application and then embed it inside the view.
Name - Name of the application.
Launch application – The value set here indicates whether to launch the native application upon the initialization of the viewer. If the value is set to true, and the window with the matching title is available then the application is not launched.
Executable path - The application that will be launched. Absolute path or it must be in user's path. Note: if the application is launched from a shell script it will not be embedded inside a view. This is a required field.
Window title - Title text of the window. The text specified here must be present in the title of the window that is being asked to be embedded inside the eclipse view. If the title specified here does not appear in the list of the windows that are opened, the application will not be embedded. Only the first window that has the matching title will be embedded. This is the required field.
Timeout – The timeout value is specified in seconds. It is the duration before the Linux Native Application Viewer abandons searching for the native application window. This is to prevent the Linux Native Application Viewer to search for the application window indefinitely incase the application fails to open. If the application window opens after the timeout expiration, the will not be embedded.
4. Once you have set the native application properties, click OK
to save the changes. You will notice the message in the component changed to indicate the configured application.
On the Linux platform, there is an option to launch the application inside the Composite application editor to validate your configuration settings. When on a non-linux platform, the application launch feature (the launch buttin) is disabled since this viewer only allows launching of the Linux based native applications on Linux platform.
5. Once you save the composite application, this component is configured for the specified native application. If component is configured properly, you will find the native application embedded inside the composite application view as shown below.
Troubleshooting & Limitations
· The embedding feature to work correctly, the fvwm2
window manager is required on the Linux platform. Other window managers may not support the reparenting of the native application and as a result you will notice the native application undocked outside the viewer.
· The Linux Native Application Viewer does not manage the state of the native applications.