Single Instance Webstart : RFC 22

Editor(s): Sarah Killcoyne

<<TableOfContents: execution failed [Argument "maxdepth" must be an integer value, not "[2]"] (see also the log)>>

About this document

This is an official Request for Comment (RFC) for Add your text here.

For details on RFCs in general, check out the Wikipedia Entry: Request for Comments (RFCs)


12/12/06 Preliminary writeup, comments appreciated

How to Comment

To view/add comments, click on any of 'Comment' links below. By adding your ideas to the Wiki directly, we can more easily organize everyone's ideas, and keep clear records. Be sure to include today's date and your name for each comment. Here is an example to get things started: /Comment.

Try to keep your comments as concrete and constructive as possible. For example, if you find a part of the RFC makes no sense, please say so, but don't stop there. Take the extra step and propose alternatives.


Use of Cytoscape via webstart could be easier and permit greater functionality to be available to a webstart user if only single instances are permitted but new arguments can be passed to the original instance from a new jnlp.

Biological Questions / Use Cases

Use Case:

1. U Mich has a website front end to a molecular interactions database. Links on the site open new instance of cytoscape. This prevents any cross-network functions from being used.

2. has website front end to multiple protein-protein sources. Also opens multiple instances.

General Notes

By opening multiple instances cross-network functions are unavailable. However, there are cases where a new instance may be desirable so it needs to be an option.



From the JDK 1.5 jnlp.jar SingleInstanceService and SingleInstanceListener

The jnlp.jar file currently included in libs would need to be updated.

Deferred Items

Open Issues

I'm unsure what the best solution would be. The jnlp classes are specific to webstart so should not hinder multiple instances of the desktop. I think for simplicity adding the SingleInstanceService/Listener to the intialization would work fine. As a plugin it would need access to the method that parses arguments in CyMain. Either way would require notifying any listening plugin that new arguments have been introduced.

Backward Compatibility

Expected growth and plan for growth


Download single instance plugin:

Source code for plugin:

Implementation Plan


GaryBader - 2006-12-14 09:39:10

We should definitely do this.  We were basically waiting until Java1.5 was more widely available to do this and now that it is (and that Cytoscape has moved to 1.5), we should be more confident that most web start users will have the latest version that supports this feature.

SingleInstanceWebstart (last edited 2009-02-12 01:03:13 by localhost)

Funding for Cytoscape is provided by a federal grant from the U.S. National Institute of General Medical Sciences (NIGMS) of the Na tional Institutes of Health (NIH) under award number GM070743-01. Corporate funding is provided through a contract from Unilever PLC.

MoinMoin Appliance - Powered by TurnKey Linux