Posts Tagged: ‘Notes 9’

Add your own Shortcuts to the Masthead without java or eclipse knowledge

31. Juli 2014 Posted by Ralf Petter

In one of my last posts  (Add Custom Actions to the Masthead (Shortcut Buttonbar) in Notes 9) i have shown to you how to add your own Shortcuts to the Masthead with an eclipse extension. To do this you need basic java skills and an eclipse installation properly configured for Notes plugin development. I have got many replies that many Notes developers/admins do not have the prerequisites to follow my tutorial and so i have promised to provide a new tutorial without the need for java or eclipse skills.

The first step is to install the ShortcutButtonbarEnabler widget in your Notes client.  I will show you how to deploy this widget in an enterprise environment with the widget catalog in a future blog post.

Then create an icon for your shortcut in the size 16x16 pixel and with a transparent background. The colours should be similar to the other Masthead icons so that you get a consistent design. Save the icon as a PNG.

Add your icon to the images resources of a notes database. I recommend to add the icon to the database to which your shortcut will link, but this is not necessary.

Caveat: As all your icons will be extracted to the temp directory on startup of your notes client all icons must have a unique file name!

The last step is to add your Shortcuts to the notes.ini of your client. in the format:


X: A Continuous number starting with 1. Notes will stop evaluating the notes.ini if there is a whole in the numbering.
NotesURL: A NotesURL which should be opened when the user clicks the shortcut. e.g Notes://Demo/crm.nsf
Server: The server of the database with the image resource.
Database: The database with the image resource.
ImageResource: Name of the image resource. e.g crm.png

Here is an example for a notes.ini:


I think it should be very easy to write a small Notes App to let users create this notes.ini entries. Or you use a Desktop policy to create this entries for your users.

If you have any problems to get your Shortcuts working leave a comment. I will try my best to help you to get this running.

If you liked this Tutorial you can support my work with a small donation. Thank you in advance.

Updated Todo Activator widget adds Todo icon to the Masthead (ShortCutButtonBar)

15. Juli 2014 Posted by Ralf Petter

For all who do not have the skills to extend Notes by them self, i have updated my To do Activator widget with an To Do icon for the masthead. So if you have already installed the To do Activator widget upgrade it to the latest version and if not try it to get the most out of your Notes client.

Add Custom actions to the new Masthead (Shortcut Buttonbar) in Notes 9 (Part2)

13. Juli 2014 Posted by Ralf Petter

In the first part of this multi part tutorial i have shown you how to create the structure of the plugin and how to import and add an icon to the build configuration of your plugin. In the second part i will show you which dependency and extension you have to add to get your icon in the Masthead.

Open your plugin.xml with a double click. Go to the "Dependencies" tab and select "Add" to add a dependency.

Search for "" and select it to add it to your dependencies. You can only use functionality from the target platform for which you have created a dependency. Dependencies are a very powerful concept of the eclipse platform.

Next go to the "Extensions" tab in the plugin.xml and click "Add" to add your extension to the "ShortcutButtonSet" extension point in the "" plugin. Extension points and extensions are the mechanism which allows eclipse plugins to add functionality to existing plugins without the need to change them. If you want to know more you can find detailed information's about this topic in a very nice tutorial from Lars Vogel.

Search for the "ShortcutButtonSet" extension point and select finish to add it to your plugin.xml

The shortcutButtonSet extension point have many values which can customize the functionality of your custom button.

Id: The unique id of your extension.
Name: The name of your extension.
Handler: This is the java class which will be called when a user clicks your icon in the masthead. We will create this class in the next step.
Image: Select the image you have imported to the plugin in the first part of the tutorial.
Show: If you select true, your icon will be visible by default in the Masthead and the user can hide it with a context action, otherwise the icon will be invisible and the user have to activate the icon in the view menu.
ContextMenuItemLabel: Label of the context action to hide the icon in the masthead.
ViewMenuItemLabel: Label of this extension in the view-> Show Shortcut Buttons menu.
Tooltip: The tooltip which should be shown when the user put the mouse over the icon.
Order: With this value you can control the position of your icon in the Masthead.
targetPersonalities: This controls in which personality of Expeditor your icon should be visible. Normally this should be always ""
To create the java class which manges clicks on your icon click on the "handler*:" Label. Change the Package name to the java package in your plugin and give the Handler a name. Click "Finish" to edit your newly created class.

The class is pretty simple and have only an open method in which you check if your icon id has been clicked and if yes do what ever your action should do. In our example we want to open the ToDo Frameset of the mail database.

public class ShortcutSetHandler implements IShortcutSetHandler {
* This method will be called, when the user clicks on your
* ShortcutButtonSet Icon. arg1 contains the id of the clicked icon. So one
* Handler class can manage several different Icons.
public void open(int arg0, String arg1) {
// When ToDoShortcut is clicked open the Todo Framset
if ("petter.eclipse.ToDoShortCut".equals(arg1)) {

Save the code and the plugin.xlm and start the notes client from eclipse. Be sure that your newly created plugin is selected in the launch configuration.

After Notes has been started you should see your new Action in the masthead.

If you want do add more actions to the masthead you can create one plugin for every action, or you can add additional actions to this plugin.  In one of my next blog posts i will show you how to create feature, an update site and a widget for this plugin so that you can deploy your extensions to the masthead to your notes clients.

If you have problems with this tutorial, feel free to ask your questions in the comment section.

Add Custom Actions to the Masthead (Shortcut Buttonbar) in Notes 9 (Part1)

13. Juli 2014 Posted by Ralf Petter

The Masthead (Shortcut Button bar) that was added to Notes with version 9 is only of limited use if you can not add your own actions to it, so in todays post i want to show how to extend the masthead with your own actions so that you can give your users the best usability possible.

First of all you need an eclipse installation configured for notes development. If you need help read my tutorial How to configure Eclipse 4.3 to develop plugins for Notes Part 1 and Part2.

Create a new Plug-in Project with File->New->Other

Choose a name for your project and select Eclipse version 3.4 as the target to run.

Go to the next page of the wizard and fill out the form.

ID: Must be a unique id of your plugin. It is recommended that you have your name or your company name in the id to avoid id collisions. For example if you choose only "Todo" as your id you will get a big problem if you install a widget in notes which uses "Todo" as the id too.
Version: It is very important that the version number is different every time you rebuild your plugin. If you change something in your plugin and deploy it to a client which already have a plugin with the same version number, that plugin will not be updated to the new version. This are very difficult to find problem. So my recommendation add ".qualifier" to the version number. Eclipse will add the date and time to the version number so that you have a new version number when you rebuild your plugin.
Activator: Tell Eclipse in which java package the Activator (controls the plugin's life cycle) should be created. It is good practice to create alle classes of a plugin in a package named similar to the id of the plugin.
Check the "This plugin will make contributions to the UI" and choose that you do not want to create a rich client application.

Create an icon for your new custom action in the Masthead in your favorite image editor. The image should be 16x16 pixel and exported as a PNG. My recommendation is to use Gimp for this task.

Right click your package in the Package Explorer and select import to put your icon in your plugin.

Choose File System as your input source.

Select the directory in which you exported your icon from Gimp. Check the icon in the file browser and have a look whether you have chosen the correct "Into Folder".

Double click the in your plugin and select your icon in the binary build path. This is a very important step, because normally the content of the src folder will not be exported when you build your plugin. So if you do not tell eclipse about your images in the build configuration you will have only a red dot instead of your beautiful icon. Save and close the build configuration.

Now we have everything in place to write our extension which i will show you in part 2 of this tutorial.

Workaround for problem with widget deployment in Notes 9

10. Juli 2014 Posted by Ralf Petter

In one of my last posts i blogged about a bug in Notes 9 which breaks the automatic deployment of widget through the widget catalog. As IBM is still analyzing the problem and our rollout should start next week, i have developed a small plugin which temporarily fixes this problem.

When this plugin is installed it will check if the replication listener for your Widget catalogs are missing and if yes will add them. If you have the problem, that widgets do not get deployed or updated automatically go to the ToolboxFix installation page.

Widget deployment does not work on some Notes 9.0.1 FP1 clients

8. Juli 2014 Posted by Ralf Petter

We deploy our custom plugins and features with the widget catalog to our Notes clients. This works very well in 8.5.3, but in our 9.0.1 FP1 pilot environment the automatic deployment does not always work. When i select a category to install on a client which is affected by this problem in the preferences nothing happens. The strange thing is that on some client this works always, on some sometimes and on the others it works never.

I have opened a PMR 48817 060 618 with IBM to analyze the problem. I hope the can provide a fix for this problem.

In the meantime i have debugged the problem a little bit and found out that the root cause of the problem is that on affected clients the replication listeners for the CatalogProvider are not registered. So after a replication of toolbox occurs the widget update job will not be launched. 

Here is the code which adds the replication listener for the Catalog Provider on start up. On working clients the PolicyUtil.usingRcpPlatformPersonlity() (sic!) returns true and on failing clients it returns false.

In the usingRcpPlatformPersonlity() method the problem is that on not working clients the shell is null. This looks like a race condition because on start up sometimes the earlyPerspectiveStartup is called to early when the Shell is not already available.

Interim Fix 1 für IBM Notes 8.5.3FP4 und IBM Notes 9 veröffentlicht

2. Mai 2013 Posted by Arnd Koch

IBM hat Interim Fix 1 für Notes 8.5.3 FP4 und Notes 9 freigegeben. Der Fix schließt einige Sicherheitslücken im Notes Client, die es erlauben über manipulierte HTML-Emails Java Applets von fremden Servern nachzuladen und auszuführen.

Alternativ zur Installation des Fixes empfiehlt IBM Java Applets und den Java Zugriff über Javascript im Notes Client zu deaktivieren:

A picture named M2

Diese Einstellung lässt sich auch zentral auf dem Server als Desktopeinstellung erstellen und per Richtlinie auf die Clients verteilen, kann aber auch manuell in die Notes.ini eingetragen werden:
A picture named M3


Downloads sind über Fixcentral verfügbar:

Artikel von IBM: