Open main menu

CDOT Wiki β

Changes

OSGi : Develop Simple Apps

1,042 bytes removed, 23:56, 24 January 2011
no edit summary
{{Ecl_activities|type=OSGi|type-repo=osgi}}__NOTOC__<h2>Bundels and Java Applications</h2>
# Check out the [https://guest:1673852@zenit.senecac.on.ca/svn/ecl500/Lectures/trunk/w11-osgi-simple-interface/ Service Interface]
# Check out the [https://guest:1673852@zenit.senecac.on.ca/svn/ecl500/Lectures/trunk/w11-osgi-simple-serviceprovider/ Service Provider]
# Check out the [https://guest:1673852@zenit.senecac.on.ca/svn/ecl500/Lectures/trunk/w11-osgi-simple-serviceconsumer/ Service Consumer]
<h3>[[Steps for Building Applications from Bundels]]</h3>
<strong>Steps for Building Bundels</strong> <h4>1. Study the Interfaces</h4> * [http://www.osgi.org/javadoc/r4v42/org/osgi/framework/Bundle.html Bundle]* [httpFile://wwwOSGi-DS.osgi.org/javadoc/r4v42/org/osgi/framework/BundleContext.html BundleContextpng|border|SOA in JVM|400px| ]* [http://www.osgi.org/javadoc/r4v42/org/osgi/framework/BundleActivator.html BundleActivator<h4>2. Define the Bundle that provide the service (Provider Bundle)</h4><h5>2.1 Define the Java Interface that exposes the services</h5>Let us suppose that you want to define a service that allows the user to find a book from the book isbn. Then the interface should look similare with this one:<source lang="java">package cs.ecl.osgi.simple.bookfinder; public interface BookFinder { Book findBook(int isbn) throws BookNotFoundException;}</source>Define in the same bundle the classes that you need such as: Book and BookNotFoundException<source lang="java">package cs.ecl.osgi.simple.bookfinder; public class Book { private int isbn; private String title; public Book(int isbn, String title) { super(); this.isbn = isbn; this.title = title; }  public String getTitle() { return title; }  public void setTitle(String title) { this.title = title; }  public int getIsbn() { return isbn; }  public void setIsbn(int isbn) { this.isbn = isbn; }} package cs.ecl.osgi.simple.bookfinder; public class BookNotFoundException extends Exception { private static final long serialVersionUID = -6184839510952070091L;  public BookNotFoundException() { super(); }
public BookNotFoundException(String arg0) {<h2>Bundels and the Declarative Services</h2> super(arg0);# Check out the [https://guest:1673852@zenit.senecac.on.ca/svn/ecl500/Lectures/trunk/w11-osgi-simple-declarativeservice-consumer Declarative Service Consumer] }}# Check out the [https://guest:1673852@zenit.senecac.on.ca/svn/ecl500/Lectures/trunk/w11-osgi-simple-declarativeservice-provider Declarative Service Provider]<h3>[[Steps for Building Declarative Services]]</sourceh3>