Rich Client Platform is a platform for edifice and deploying rich client applications. It offers a much richer user experience than is possible via Web engineerings. RCP is the minimum set of plugins required for developing rich client applications. In this paper we introduce the RCP application development utilizing the Eclipse IDE
The typical rich client application is a stand-alone feasible with a graphical interface composed of several controls for the user. The Java universe has seen a enormous addition in the figure and quality of prefabricated soft- Page Layout ware constituents both commercial and freely available but one thing has n’t changed yet: the manner of composing.
For separately deployable Java constituents, we ‘re ever either implementing model interfaces or utilizing a library ‘s dedicated functionality.
A Rich Client Platform ( RCP ) is package dwelling of the undermentioned constituents: [ 1 ]
A nucleus ( microkernel ) , lifecycle director
A standard bundling model
A portable doodad toolkit
File buffers, text handling, text editors
A work bench ( positions, editors, positions, aces )
The coders can construct their ain applications on bing platforms.
Alternatively of holding to compose a complete application from abrasion, the coders can utilize the the model provided by the platform. Building on a platform facilitates faster application development and integrating, while the cross-platform load is taken on by the platform developers.
The plans built with RCP platforms are portable to many runing systems while being every bit rich as client-server applications which use so called fat clients or traditional clients.
Open beginning illustrations are the Eclipse and Net Beans for Java. We know that Java is platform independent and that ‘s the ground why we have selected the Java model for the RCP application development.
Eclipse: It is a multi-language package development environment consisting an integrated development environment ( IDE ) and an extensile circuit board system. The Eclipse Platform is an IDE for anything, and for nil in peculiar.The Eclipse Platform is built on a mechanism for detecting, integration, and running faculties called circuit boards. A tool supplier writes a tool as a separate circuit board that operates on files in the workspace and surfaces its tool-specific UI in the workbench. [ 3 ] . When the Platform is launched, the user is presented with an integrated development environment ( IDE ) composed of the set of available circuit boards. Eclipse employs circuit boards in order to supply all of its functionality on top of ( and including ) the runtime system. The runtime system of Eclipse is based on Equinox, an OSGi criterion compliant execution. [ 3 ] This plug-in mechanism is a lightweight package componentry model. With the exclusion of a little run-time meat, everything in Eclipse is a plug-in. This means that every circuit board developed integrates with Eclipse in precisely the same manner as other circuit boards ; in this regard, all characteristics are “ created equal ” .
Eclipse RCP: The Eclipse RCP application requires merely two plugins: org.eclipse.ui and org.eclipse.core.runtime, and their requirements. An Eclipse RCP application can make up one’s mind to utilize parts of these constituents. It is possible to plan headless Eclipse based applications, so merely the runtime is necessary. Eclipse RCP allows developers to utilize the occultation platform to make flexible and extensile desktop applications. The OSGi runtime provides the model to run the modular application.SWT is the standard UI constituent library used by Eclipse. JFace provides some convenient API on top of SWT. The work bench provides the application frame.
In the Eclipse Platform a Perspective determines the seeable actions and positions within a window. A Positions besides go good beyond this by supplying mechanisms for undertaking oriented interaction with resources in the Eclipse Platform, multi-tasking and information filtering. In the Eclipse Platform a position is typically used to voyage a hierarchy of information, open an editor, or show belongingss for the active editor
Eclipse RCP Architecture
The most of import architectural feature of Eclipse is the Plugin architecture. Eclipse applications are built as a figure of plugins which define their API and their dependences. Their API – populace categories which can be used by other plugins. Their dependences – bundle or plugins which are required for the plugin to run right. [ 4 ]
Fig. 1 Eclipse RCP architecture
Each plugin can specify extension-points which define possibilities for functionality parts ( codification and non-code ) by other plugins. The fig 1 shows the occultation RCP architecture.A plugin can utilize extensions, e.g. supply functionality to these extension points. Plugins which define extension points open themselves up for other plugins. An extension points defines a contact how other plugins can lend.
Eclipse RCP Application
Main constituents of an Eclipse RCP application
Main plan – A RCP chief application category implements the interface IApplication. This category can be viewed as the equivalent to the chief method for standard Java application.
Eclipse expects that the application category is defined via the extension point org.eclipse.core.runtime.application. [ 4 ]
A Perspective – The position is extended from org.eclipse.ui.perspective
Workbench Advisor- unseeable proficient constituent which controls the visual aspect of the application ( bill of fare, toolbars, positions, etc ) An Eclipse RCP application has two chief constellation files: MANIFEST.MF – contains the OSGi constellation information. plugin.xml – Information about the extensions and extension points
RCP Text Editor Example
To understand the RCP application lifecycle we are sing the development of a RCP editor.
The RCP Text Editor Example is a simple RCP application ( figure 2 ) that creates ain text editors utilizing the text redacting substructure ( an optional RCP constituent ) and offers text redacting capablenesss such as switching, traveling and canceling lines, find/replace, auto-completion and basic sentence structure highlighting for markup linguistic communications.
Fig. 2 Snap shooting of the Eclipse RCP Text Editor
To run the illustration in binary signifier:
fig 3: to get down the RCP in occultation
1. Download the RCP Runtime Binary from the Eclipse Project downloads page and pull out it to a booklet such as degree Celsiuss: exteditor-example. The eclipse subfolder of this location will be referenced as & lt ; install_dir & gt ; below.
2. Download the Platform Text Binary and pull out it into & lt ; install_dir & gt ; /plugins subfolder.
3. Download the RCP Text editor illustration circuit board and salvage it into the & lt ; install_dir & gt ; /plugins subfolder.
4. Replace the & lt ; install_dir & gt ; /configuration/config.ini file with this one.
5. Run the occultation feasible: For illustration, on Windows, run & lt ; install_dir & gt ; /eclipse.exe.
To lade the RCP text editor illustration beginning into your workspace:
1. Download the texteditor beginning circuit board and salvage it on your harddisk.
2. Choose File & gt ; Import… & gt ; Existing Project into Workspace.
3. Snap the Browse… button to choose the nothing file you downloaded in measure 1.
4. Press Finish.
To run the illustration from your workspace:
fig 4: shows the run portion of the application
1. Choose Run & gt ; Open Run Dialog…
2. Under Run-time Workbench, there should be a new launch constellation: RCP Text Editor.
3. Click Run.
4. When the RCP Text Editor Example window clears, usage File & gt ; Open to open a field text, .xml, or.html file.
The beginning codification of the rcpdemo application consists of the following
RcpdemoPlugin: Since every rich client application is an Eclipse circuit board, it needs a plug-in category. The generated execution provides entree to the plug-in case and loads the resource package.
Application: This is the bootstrap category for the rich client application. This category creates and runs the work bench that contains the chief event cringle.
Position: To set up UI elements inside the work bench, you technically need a position. For now, it does n’t incorporate anything interesting, since the rcpdemo application does n’t incorporate any position or editor.
Basic Elementss of an RCP Application
fig 5: contents of rcp demo application
ApplicationActionBarAdvisor: The action saloon adviser provides maulerss for make fulling the different action bars like the bill of fare saloon and the cool saloon. It besides configures the position line and creates the actions.
ApplicationWorkbenchAdvisor: The work bench adviser provides a figure of maulerss around the lifecycle of the work bench itself. One of the most of import occupations is to supply the
ApplicationWorkbenchWindowAdvisor: The work bench window adviser provides a figure of maulerss around the lifecycle of the work bench window. For illustration it allows puting the window size before it is opened.
In this Paper we presented the acquisition ‘s that we had in developing RCP based applications utilizing Eclipse IDE.The OSGi Runtime support for the Eclipse IDE makes it the occultation stand out in developing the RCP applications.The Eclipse IDE manages dependences and lifecycle. RCP can bring forth high quality merchandises in many constellations. RCP development expands the boundaries of the application and pushes to believe about models of the application and how others will incorporate into the merchandise. In this paper we have identified the foundation constructs implied in the design of Rich Internet Applications