Skip to main content
Jump to: navigation, search

Difference between revisions of "Riena Getting started"

m (Getting Started)
(Try the unittests)
Line 37: Line 37:
 
* There are classes like AllTests on various level that you can run as Junit Plugin Tests.
 
* There are classes like AllTests on various level that you can run as Junit Plugin Tests.
 
* You can also run individual Tests a JUnit Plugin Tests
 
* You can also run individual Tests a JUnit Plugin Tests
* There are roughly over 500 tests and we are aware that about 40 of them fail. This is still incubator, we are aware of that.
+
* There are roughly over 1100 tests and they should all work. Some of them fail if you click or move the mouse while the tests are running.
 
* Classes ending with *ITest require a server. Thats the Riena App Sample Server (explained in the next step)
 
* Classes ending with *ITest require a server. Thats the Riena App Sample Server (explained in the next step)
  

Revision as of 07:01, 3 November 2008

Riena Project > Getting Started

Getting Started

Getting started contains documentation about how to use the various aspects of Riena.

Setup for writing apps based on Riena (starting with M4)

Use these steps to build your setup to use Riena.

  • Download the Target zip:
  • Unzip to an empty directory i.e. c:/projekte/riena-platform (Windows) or /home/<user>/workspaces/riena-platform (on mac)
  • this directory now contains every plugin that is necessary for Riena (including Equinox and the SDK)
  • this directory includes source code for Riena and Equinox
  • Startup your Eclipse IDE (3.4) with a blank workspace
  • Choose under Window -> Preferences -> Plug-in Development -> Target Platform
  • Choose there in the field location the eclipse directory under your platform dir (zip above) i.e. c:/projekte/riena-platform/eclipse or /home/<user>/workspaces/riena-platform
  • Press OK
  • You are basically set.

Try the communication ping pong example

  • File -> Import -> Plug-in Development -> Plug-ins and Fragments -> Next
  • Select "Projects with source folders" unter Import As (since its more fun with source code) -> Next
  • Select in the Plug-ins Listbox the 4 plugins *.communication.sample.pingpong.* and click Add and then Finish
  • You can switch in the Run Dialog and Select (under OSGi Framework)
    • DONT FORGET to press the Add required Bundles button for both of them before you start them
    • Riena Sample PingPoing Server (start that one)
    • Riena Sample PingPong Client (start that one)
  • The server starts at port 8080, make sure that port is not taken
  • On success you client will print a message on the console:

PingPong::Client:: [Pong] says = Thx. I got the ping!

  • Switch the to server console should show a message like:

PingPong::Server:: [Ping] says = I ping you and you pong me

Try the unittests

  • Import the project org.eclipse.riena.tests from the Target Platform (same as above)
  • There are classes like AllTests on various level that you can run as Junit Plugin Tests.
  • You can also run individual Tests a JUnit Plugin Tests
  • There are roughly over 1100 tests and they should all work. Some of them fail if you click or move the mouse while the tests are running.
  • Classes ending with *ITest require a server. Thats the Riena App Sample Server (explained in the next step)

Install the Riena Sample App Server

  • Stop any previously started client or server
  • Import the project org.eclipse.riena.sample.app.server and org.eclipse.riena.sample.app.common from the Target Platform
  • Start Riena App Server from the Run Dialog (dont forget to press the button "add required bundles"
  • Also this server starts on 8080, make sure that port is not taken.
  • That should bring up a relativly simple app server with just the customer search web service
  • Stop the server again
  • Bring up the Run Dialog again, select Riena App Server and select the bundle org.eclipse.riena.security.services and org.eclipse.riena.security.simpleservices) both found in the target platform
  • press "add required bundles"
  • Run the server again.
  • Now you can see in the console a lot more web services (security related)
  • Now you can also run the *ITests from the tests bundle (above) i.e. SessionServiceITest

Run the Riena Example Client

  • File -> Import -> Plug-in Development -> Plug-ins and Fragments -> Next
  • Select "Projects with source folders" unter Import As (since its more fun with source code) -> Next
  • Select in the Plug-ins Listbox the 1 plugin org.eclipse.riena.example.client and click Add and then Finish
  • In the workspace right click on the new imported projected Run As -> Eclipse Application
  • Play with it :-)
  • There is also a project org.eclipse.riena.sample.app.client.mail that you can import and start the same way

Install the Riena UI Wizard

  • Install a new feature from updatesite http://download1.eclipse.org/rt/riena/updatesites/org.eclipse.riena.ui.templates.updatesite
  • Then File -> New -> Plug-in Project (next)
  • Choose a project name
  • Make sure you have Eclipse version 3.4 set as target platform (next)
  • Check "This plug-in will make contributions to the UI"
  • Set "Would you like to create a rich client application?" to Yes (next)
  • You get a list of templates which includes "Riena Hello World" and "Riena Mail Template"
  • You can choose either one then next or finish
  • Start the resulting project with Run As -> Eclipse Application
  • Look at the structure of the sample code

Remote Services

Remote Services in Riena are based on OSGi Services. So this Getting Started shows how standard OSGi Services can be first published as webservice endpoints and then second how they can be consumed by a client.

Getting Started with Remote Service

Security

Security in Riena is JAAS based. That means you have Subject, Principal(s), LoginModule and Permissions. Just the standard Java objects from the JAAS packages. Riena adds the distribution aspect to it, so that a login on the client gets processed on the server. It also deals with make the current Subject (a container for Principals) avaiblable on client and in the server thread where remote service calls are processed.

Getting Started using Security (JAAS) based in Riena

ObjectTransaction

Object Transaction are a base technology to track changes in large object nets and minimize only changed properties between client and server after the initial load of the object net.

Injecting Services and Extensions

Services and Extensions are the building blocks of Eclipse RCP applications. Riena´s lightweight and programmatic approach of injecting services and extensions eases component development and testing.

Getting Started with Injecting Services and Extensions

Stages

Developing, testing, running and maintaining client/server applications require more than a monolithic environment setup. Stages are Riena´s approach to deal with that.

Getting Started with Stages

Back to the top