During this tutorial you will extend the Browser Application Container with a custom container action created in Java. Our use case is to allow a user to highlight any text in a note and quickly see the translation in another window on the same page. We will create a composite application page ...

The Lotus Expeditor 6.2 Toolkit is now available for download. In case you are not familiar with the toolkit, it can be used to build plug-ins for Notes, Sametime, Symphony, and Expeditor. The 6.2 version of the toolkit can be used with beta releases of Notes 8.5. Additional information about the ...

This article describes a deployment scenario that "moves" an NSFbased composite application from a development environment (local only or test Domino server) to a singleserver production environment . Note: This information is provided for example purposes ONLY. It is published to provide ...

This article provides you with information that can assist you in troubleshooting any problems that may occur during deployment or updating composite applications. Troubleshooting example - Steps to take when an Eclipse component does not come up

If some Eclipse components do not come up and are not shown correctly when you open a composite application, "rectangles" of the components provide information on what is wrong (for example, not having access rights). The following information provides an example of how to troubleshoot a problem of this type with your composite application.

Consider the following screenshots and error messages where there is a problem of this type with one of the components.

You may see this error as well:

To troubleshoot this problem, the next step would be to click on the blue link "View the diagnostic report for this application" to review a diagnostic report for this application. This link can provide some useful information for troubleshooting such as the following:

In a case like this, the following "expected" errors can occur:

1. The reference to the correct component (and component version) but the right update site is not correct. This may have occurred because application assemblers manually typed in the feature name, view part name, version number, match rule and/or the update site URL in Composite Application Editor (CAE) and they used wrong names. Note: This cannot happen if the CAE was used to add the Eclipse component since CAE adds all of these properties automatically. Solution: In this case check the properties in the CAE. You can verify whether the URL to the update site is correct by using the Install dialog under File-Application-Install (see immediate screenshot) and then copying the URL in the text box in the "Add remote location" dialog.

This is a feature used to install plugins that a normal end user will not be able to access since this setting is turned off by default. Do the following to enable this feature:

Open the /framework/rcp/plugin_customization.ini file for editing with a text editor

Add the following entry: com.ibm.notes.branding/enable.update.ui=true

2. The update site is not available when the application is opened in Lotus Notes. This can happen for several reasons if the update site is in an NSF (this is recommended). These reasons include the following:

The database does not exist anymore.

The database cannot be accessed (for example, the client is not online or the server is server is down.

You do not have access rights to the databse or the database is encrypted.

The Notes client does not have a connection document to server.

There are network issues (for example, problem with your Firewall orproxy; DNS cannot resolve the name to an IP address, etc.)

Solution: Try to open the Notes database with the update site as the regular Notes database. In other words, open the NSF via the File-Open-Lotus Notes Application method. Notes will then give different dialogs that may help narrow down the issue. For example, the following occurs if you do not have access rights:

In a case like this, change the ACL of the update site nsf. Once you have fixed the issue, open the composite application so that Notes will attempt to provision again.

3. Eclipse components might now show up after provisioning before you restart. Solution: Restart the client.

4. Provisioning was canceled. In this case you would see the following:

Solution: Open the composite application again so that Notes will try to provision again.

5. A dependency (a dependent other Eclipse feature) does exist on the client. This can happen since Eclipse does not resolve all dependencies automatically. You need to, instead, define all the features your Eclipse component needs in the Composite Application Editor (not only the one feature the view part is in).

Typically the majority of simple components will employ a single Eclipse feature and the Composite Application Editor will detect that required feature when the component is added to the palette from an update site. The sample image below shows a simple view configured with a single feature:

With more complex components that have multiple features, you are required to configure the component after it has been added to the CAE palette. Use the advanced component properties to list the additional dependant features using an underscore and incrementing digits postfixed to the id.feature, match.feature and version.feature property names. The sample image below shows a configured two feature component:

In order to find out whether an Eclipse component is missing you can use the OSGI console. If you run the "diag" command from the OSGI console, you can check whether dependencies are there. Use the following steps to do this:

This error message shows that a package is missing. A package is in a plugin and a plugin is in a feature. In order to find out to which plugin the missing package belongs you basically need to do a large search in all plugins on your client. Plugins on your client can be either stored in .JAR files in the "plugins" directories (for example, 1. D:\Data\NotesData\workspace\applications\eclipse, 2. C:\\framework\rcp\eclipse, 3. C:\\framework\shared\eclipse) or you can find the plugins in sub-directories of these three directories. In the latter case, the classes can either be again in subdirectories or all put in .JAR files.

Searching the right installed plugin on your client can be a time consuming. Often the plugin names contain parts of the package name. For example if you need to find the class com.ibm.jscript.editor.internal.AbstractJSDesignProblem.class you should try to find it in the plugin directory com.ibm.jscript.editor_8.5.0.20081020-1445. In order to see what classes a .JAR file contains you can rename the .JAR files temporarily to xxx_name.zip and open them with a standard ZIP extraction tool.

You can also use the Eclipse IDE to help you to show all the dependencies of a plugin. TO do this, open the manifest.mf in the IDE and then the Dependencies tab. When you use the "show the plugin dependency hierarchy" setting the IDE will show all dependencies. To filter this list even more, you can use "find unused dependencies" and remove unnecessary dependencies first.

Once you have found the right plugin you need to find its feature - in particular, you need to find the correct feature.xml. The feature.xml can be in the "features" subdirectories of the same three directories just mentioned. They can be in these directories in an extracted form or within a .JAR file. If they are in there in an extracted form you can use an operating system file search to find the plugin id of the missing package in one of the feature.xml files. Once you find the right feature, add it as described earlier.

Finally, if for some reason you still get errors you can check to see if NOtes was installed correctly. If your Notes configuration proves not to be correct, you might want to try to reinstall the application. To do this open the Portal Applications catalog (which includes also NSF based apps) and use the actions to uninstall and reinstall applications. Possible CAE error scenario

In addition to the runtime errors example just described, Eclipse components can also show not up in the CAE in the following scenario. If a user has been editing the application, the CAE can tell CAI provisioning to continue without a restart when installing a new feature. This is a convenience, since it allows the end user to continue editing without restarting. A side effect of this, however, is that any part of the application that requires a restart will display a "not available" message. Logging

When you run ISA, the information on all the composite applications installed on the system is logged into systemsummary.txt file. There is a composite applications section located in this file (currently in the last section of this file). The information logged is the same as if you to bring up reports from the Portal Application catalog. The following is a sample of composite application information found in systemsummary.txt :

Features referenced in this application:
There are no features referenced in this application

See the topic Lotus Expeditor help topic "Opening diagnostic reports for composite applications" athttp://infocenters.lotus.com/help9/topic/com.ibm.rcp.tools.doc.appdev/compapps_openingdiagnosticcontext.html for more information on the steps to view the diagnostic report for any installed composite application.