Hi Mark, Happy New-Year 2011 and many thanks for the information. I have started to create a feature file to deploy those bundles on Apache Karaf OSGI container. What do you plan to do to align Aries Application with OSGI Service as you use a deprecated API ony supported by Equinox and not Felix ?
Remark : Could you upgrade Aries Application to support Apache Felix FileInstall range of version from 2.x to 3.x as we use 3.1.0 on Apache Karaf ? Regards, Charles Moulliard Sr. Principal Solution Architect - FuseSource Apache Committer Blog : http://cmoulliard.blogspot.com Twitter : http://twitter.com/cmoulliard Linkedin : http://www.linkedin.com/in/charlesmoulliard Skype: cmoulliard On Wed, Dec 29, 2010 at 11:00 AM, Mark Nuttall <[email protected]> wrote: > Hi Charles, >> 1) Can someone tell me what are the bundles required to deploy eba >> files on Apache Karaf/Felix ? groupId/artificactId > > For some working examples, please see > > application/application-itests/src/test/java/IsolatedRuntimeTest.java, > > and the three BlogSampleWithEba itests, such as > > samples/blog/blog-itests/JpaBlogSampleWithEbaTest.java > > Firstly there is a set of common prereqs, where the arguments to > mavenBundle are (group, artifact): > > mavenBundle("org.apache.aries.blueprint", "org.apache.aries.blueprint" ), > mavenBundle("org.apache.aries.proxy", "org.apache.aries.proxy"), > mavenBundle("org.apache.aries", "org.apache.aries.util" ), > mavenBundle("org.apache.felix", "org.apache.felix.bundlerepository"), > > There there's a set of common bundles in the org.apache.aries.application > group: > > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.resolver.obr"), > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.install" ), > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.api" ), > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.management" ), > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.utils" ), > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.modeller"), > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.default.local.platform"), > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.noop.platform.repo"), > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.noop.postresolve.process"), > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.deployment.management"), > > Finally we have two different runtimes. > > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.runtime" ), > > is very simple: it just installs every bundle into a single framework. > It provides no isolation between different .ebas, and was really only > written so as to demonstrate that > org.apache.aries.application.management was functional. I don't > believe anyone's put this runtime to serious use yet. > > Alternatively, the next group of bundles provide a far more rugged and > functional runtime environment, in which the bundles listed in each > application's Application-Content header are isolated from each other > by being installed into their own framework. The only drawback here is > that org.apache.aries.application.runtime.framework has to use > deprecated APIs based on early drafts of OSGi RFC138 > (org.osgi.service.framework.CompositeBundle, > org.osgi.service.framework.CompositeBundleFactory) in order to create > and manage these framework instances. My understanding is that Equinox > implements these APIs, but that the Felix does not. > > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.runtime.isolated"), > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.runtime.framework"), > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.runtime.framework.management"), > mavenBundle("org.apache.aries.application", > "org.apache.aries.application.runtime.repository"), > equinox().version("3.5.0")); > >> 2) Can we deploy an eba file using the same command as we use to >> deploy a bundle mvn:groupId/artifactId/version/eba ? > > I suspect that extra work might be required in order to achieve that. > As you'll see from the itests, the mechanism today is of the form, > > URL urlToEba = getUrlToEba("org.apache.aries.samples.blog", > "org.apache.aries.samples.blog.jpa.eba"); > AriesApplicationManager manager = > getOsgiService(AriesApplicationManager.class); > AriesApplication app = manager.createApplication(urlToEba); > AriesApplicationContext ctx = manager.install(app); > ctx.start(); > > Do let us know how you get on! > > Regards, > Mark > > On 27 December 2010 09:03, Charles Moulliard <[email protected]> wrote: >> Hi, >> >> 1) Can someone tell me what are the bundles required to deploy eba >> files on Apache Karaf/Felix ? >> groupId/artificactId >> >> 2) Can we deploy an eba file using the same command as we use to >> deploy a bundle mvn:groupId/artifactId/version/eba ? >> >> Charles Moulliard >> >> Sr. Principal Solution Architect - FuseSource >> Apache Committer >> >> Blog : http://cmoulliard.blogspot.com >> Twitter : http://twitter.com/cmoulliard >> Linkedin : http://www.linkedin.com/in/charlesmoulliard >> Skype: cmoulliard >> >
