Details
-
Type:
Bug
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: 0.3.1, 0.3.2, 0.3.3, 0.3.4, 0.3.5, 2.0b1, 2.0.0, 2.1 beta 1, 2.1 beta 2, 2.1 RC 1, 2.1.0, 2.1.1
-
Fix Version/s: Post 2.4.0
-
Component/s: Taverna - General
-
Labels:None
Description
If (mainly for testing) I'm trying to add a plugin site like file:///P:/Documents/src/taverna-workspace/taverna-workbench-2.1/products/net.sf.taverna.t2.taverna-workbench/plugins/update-site/ - the plugin manager fails to retrieve anything as it only supports HTTP URIs for some reason.
But the big problem is that this plugin site is still added, and the plugin manager fails at startup, exiting Taverna:
Error while executing main() of net.sf.taverna.t2.workbench.ui.impl.WorkbenchLauncher
java.lang.RuntimeException: Could not initialize workbench
at net.sf.taverna.t2.workbench.ui.impl.Workbench.getInstance(Workbench.java:137)
at net.sf.taverna.t2.workbench.ui.impl.WorkbenchLauncher.launch(WorkbenchLauncher.java:28)
at net.sf.taverna.raven.launcher.Launcher.launchMain(Launcher.java:149)
at net.sf.taverna.raven.launcher.Launcher.main(Launcher.java:65)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at net.sf.taverna.raven.prelauncher.PreLauncher.runLauncher(PreLauncher.java:115)
at net.sf.taverna.raven.prelauncher.PreLauncher.launchArgs(PreLauncher.java:69)
at net.sf.taverna.raven.prelauncher.PreLauncher.main(PreLauncher.java:47)
Caused by: java.lang.IllegalStateException: unsupported protocol: 'file'
at org.apache.commons.httpclient.protocol.Protocol.lazyRegisterProtocol(Protocol.java:149)
at org.apache.commons.httpclient.protocol.Protocol.getProtocol(Protocol.java:117)
at org.apache.commons.httpclient.HttpHost.<init>(HttpHost.java:107)
at org.apache.commons.httpclient.HttpMethodBase.setURI(HttpMethodBase.java:280)
at org.apache.commons.httpclient.HttpMethodBase.<init>(HttpMethodBase.java:220)
at org.apache.commons.httpclient.methods.GetMethod.<init>(GetMethod.java:89)
at net.sf.taverna.raven.plugins.PluginManager.getPluginsFromSite(PluginManager.java:459)
at net.sf.taverna.raven.plugins.PluginManager.checkForUpdates(PluginManager.java:692)
at net.sf.taverna.raven.plugins.ui.CheckForUpdatesStartupHook.startup(CheckForUpdatesStartupHook.java:77)
at net.sf.taverna.t2.workbench.ui.impl.Workbench.callStartupHooks(Workbench.java:269)
at net.sf.taverna.t2.workbench.ui.impl.Workbench.initialize(Workbench.java:235)
at net.sf.taverna.t2.workbench.ui.impl.Workbench$1.run(Workbench.java:130)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
I don't see why non-HTTP URLs (supported by java.net.URL) should not be allowed. Invalid URLs should not be added to plugin-sites.xml