Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Remote Application Platform (RAP) » How to have single sourcing ?
icon5.gif  How to have single sourcing ? [message #1015295] Thu, 28 February 2013 06:22 Go to next message
Vikas K is currently offline Vikas KFriend
Messages: 8
Registered: January 2012
Junior Member
Hi
We are porting an existing rcp app to web using rap and trying to have the single source for both RCP and RAP. We couldn't achieve it without modifying the existing Manifest files(having rcp related dependencies) and overriding them with new dependencies(rap related dependencies). So Is there any way to achieve it without modifying the existing Manifest files??
Re: How to have single sourcing ? [message #1015312 is a reply to message #1015295] Thu, 28 February 2013 08:10 Go to previous messageGo to next message
Tiburon T is currently offline Tiburon TFriend
Messages: 61
Registered: October 2011
Member
Hi,

I think it is possible to keep both dependencies by making them optional.

Greetings
Tiburon
Re: How to have single sourcing ? [message #1015548 is a reply to message #1015312] Fri, 01 March 2013 08:44 Go to previous messageGo to next message
Vikas K is currently offline Vikas KFriend
Messages: 8
Registered: January 2012
Junior Member
Hi Tiburon

Thanks for the reply. We can make it optional in our plugins, but we are using few third party plugins. Is there any possibility to override the existing required plugin dependencies for the third party plugins??
We tried with fragments also, but we are unable to override the existing dependencies in the third party plugin.
Re: How to have single sourcing ? [message #1015699 is a reply to message #1015548] Fri, 01 March 2013 19:40 Go to previous message
Paul Bilnoski is currently offline Paul BilnoskiFriend
Messages: 28
Registered: August 2010
Junior Member
Something our shop has used with some success are "shim" bundles that expose the functionality and namespace of the org.eclipse.ui bundles, but by reexporting the org.eclipse.rap.ui bundles. The problem with using package imports, as we would prefer, with the org.eclipse.ui namespace is that they have packages split across several bundles, so bundle import is the only clean option.

The concept of these shims is to make an empty bundle (no sources) with reexported dependencies, i.e. only a manifest and build.properties. These reexport RAP 1.5 as eclipse 3.7, so if you are using other versions take care to map them properly.

By dropping these shim bundles in your target platform, the dependencies should resolve properly to RAP. Keep in mind you may need to rebuild the code to ensure all API dependencies are met, since RAP is not an exact replacement and might not be binary-compatible with bundles built against the true org.eclipse.ui bundles.

Here are two example bundle manifest files:

Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Eclipse RAP UI Proxy
Bundle-SymbolicName: org.eclipse.ui
Bundle-Version: 3.7.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Require-Bundle: org.eclipse.rap.ui;bundle-version="1.5.0";visibility:=reexport,
 org.eclipse.swt;bundle-version="3.7.0";visibility:=reexport,
 org.eclipse.jface;bundle-version="3.7.0";visibility:=reexport,
 org.eclipse.ui.workbench;bundle-version="3.7.0";visibility:=reexport
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Eclipse RAP Workbench Proxy
Bundle-SymbolicName: org.eclipse.ui.workbench
Bundle-Version: 3.7.0.qualifier
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Require-Bundle: org.eclipse.rap.ui.workbench;bundle-version="1.5.0";visibility:=reexport,
 org.eclipse.swt;bundle-version="3.7.0";visibility:=reexport


--Paul
Previous Topic:Prompting User for Unsaved data
Next Topic:How to provide user authentication for RAP/RCP
Goto Forum:
  


Current Time: Sat Oct 23 22:56:48 GMT 2021

Powered by FUDForum. Page generated in 0.02368 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top