If we look at the EBAInstaller.install() code we see,
LOGGER.debug("created app from {} : {} {} with contents {}", new Object[] {
applicationLocation.getName(), appSymName, appVersion,
app.getApplicationMetadata().getApplicationContents() });
AriesApplicationContext context = applicationManager.install(app);
LOGGER.debug("installed app {} {} state: {}", new Object[] {
appSymName, appVersion,
context.getApplicationState() });
context.start();
LOGGER.debug("started app {} {} state: {}", new Object[] {
appSymName, appVersion,
context.getApplicationState() });
Your trace shows the "created app" message but not the "installed app"
message. The ApplicationManager.install() call terminated with,
16:37:49,688 | DEBUG | -SNAPSHOT/deploy | ModelledResourceManagerImpl
| impl.ModelledResourceManagerImpl 121 | 232 -
org.apache.aries.application.modeller - 0.3.0.SNAPSHOT | Method exit:
getServiceElements, returning
org.apache.aries.application.modelling.ModellerException:
org.osgi.service.blueprint.container.ComponentDefinitionException:
Unsupported node namespace:
http://aries.apache.org/xmlns/transactions/v1.0.0
Since you are trying to install the JpaBlogSampleWithEba, you will
need to install all the same bundles into your runtime as we do in
org.apache.aries.samples.blog.itests.JpaBlogSampleWithEbaTest.configuration()
:
public static Option[] configuration() {
Option[] options = options(
bootDelegationPackages("javax.transaction", "javax.transaction.*"),
vmOption("-Dorg.osgi.framework.system.packages=javax.accessibility,javax.activation,javax.activity,javax.annotation,javax.annotation.processing,javax.crypto,javax.crypto.interfaces,javax.crypto.spec,javax.imageio,javax.imageio.event,javax.imageio.metadata,javax.imageio.plugins.bmp,javax.imageio.plugins.jpeg,javax.imageio.spi,javax.imageio.stream,javax.jws,javax.jws.soap,javax.lang.model,javax.lang.model.element,javax.lang.model.type,javax.lang.model.util,javax.management,javax.management.loading,javax.management.modelmbean,javax.management.monitor,javax.management.openmbean,javax.management.relation,javax.management.remote,javax.management.remote.rmi,javax.management.timer,javax.naming,javax.naming.directory,javax.naming.event,javax.naming.ldap,javax.naming.spi,javax.net,javax.net.ssl,javax.print,javax.print.attribute,javax.print.attribute.standard,javax.print.event,javax.rmi,javax.rmi.CORBA,javax.rmi.ssl,javax.script,javax.security.auth,javax.security.auth.callback,javax.security.auth.kerberos,javax.security.auth.login,javax.security.auth.spi,javax.security.auth.x500,javax.security.cert,javax.security.sasl,javax.sound.midi,javax.sound.midi.spi,javax.sound.sampled,javax.sound.sampled.spi,javax.sql,javax.sql.rowset,javax.sql.rowset.serial,javax.sql.rowset.spi,javax.swing,javax.swing.border,javax.swing.colorchooser,javax.swing.event,javax.swing.filechooser,javax.swing.plaf,javax.swing.plaf.basic,javax.swing.plaf.metal,javax.swing.plaf.multi,javax.swing.plaf.synth,javax.swing.table,javax.swing.text,javax.swing.text.html,javax.swing.text.html.parser,javax.swing.text.rtf,javax.swing.tree,javax.swing.undo,javax.tools,javax.xml,javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.bind.helpers,javax.xml.bind.util,javax.xml.crypto,javax.xml.crypto.dom,javax.xml.crypto.dsig,javax.xml.crypto.dsig.dom,javax.xml.crypto.dsig.keyinfo,javax.xml.crypto.dsig.spec,javax.xml.datatype,javax.xml.namespace,javax.xml.parsers,javax.xml.soap,javax.xml.stream,javax.xml.stream.events,javax.xml.stream.util,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.transform.stax,javax.xml.transform.stream,javax.xml.validation,javax.xml.ws,javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.ws.http,javax.xml.ws.soap,javax.xml.ws.spi,javax.xml.xpath,org.ietf.jgss,org.omg.CORBA,org.omg.CORBA.DynAnyPackage,org.omg.CORBA.ORBPackage,org.omg.CORBA.TypeCodePackage,org.omg.CORBA.portable,org.omg.CORBA_2_3,org.omg.CORBA_2_3.portable,org.omg.CosNaming,org.omg.CosNaming.NamingContextExtPackage,org.omg.CosNaming.NamingContextPackage,org.omg.Dynamic,org.omg.DynamicAny,org.omg.DynamicAny.DynAnyFactoryPackage,org.omg.DynamicAny.DynAnyPackage,org.omg.IOP,org.omg.IOP.CodecFactoryPackage,org.omg.IOP.CodecPackage,org.omg.Messaging,org.omg.PortableInterceptor,org.omg.PortableInterceptor.ORBInitInfoPackage,org.omg.PortableServer,org.omg.PortableServer.CurrentPackage,org.omg.PortableServer.POAManagerPackage,org.omg.PortableServer.POAPackage,org.omg.PortableServer.ServantLocatorPackage,org.omg.PortableServer.portable,org.omg.SendingContext,org.omg.stub.java.rmi,org.w3c.dom,org.w3c.dom.bootstrap,org.w3c.dom.css,org.w3c.dom.events,org.w3c.dom.html,org.w3c.dom.ls,org.w3c.dom.ranges,org.w3c.dom.stylesheets,org.w3c.dom.traversal,org.w3c.dom.views,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers,javax.transaction;partial=true;mandatory:=partial,javax.transaction.xa;partial=true;mandatory:=partial"),
// Log
mavenBundle("org.ops4j.pax.logging", "pax-logging-api"),
mavenBundle("org.ops4j.pax.logging", "pax-logging-service"),
// Felix mvn url handler - do we need this?
mavenBundle("org.ops4j.pax.url", "pax-url-mvn"),
// this is how you set the default log level when using
pax logging (logProfile)
systemProperty("org.ops4j.pax.logging.DefaultServiceLog.level").value("DEBUG"),
// Bundles
mavenBundle("org.eclipse.equinox", "cm"),
mavenBundle("org.eclipse.osgi", "services"),
mavenBundle("org.ops4j.pax.web", "pax-web-extender-war"),
mavenBundle("org.ops4j.pax.web", "pax-web-jetty-bundle"),
mavenBundle("org.ops4j.pax.web", "pax-web-jsp"),
mavenBundle("org.apache.derby", "derby"),
mavenBundle("org.apache.geronimo.specs", "geronimo-jpa_2.0_spec"),
mavenBundle("org.apache.geronimo.specs", "geronimo-jta_1.1_spec"),
mavenBundle("org.apache.geronimo.specs",
"geronimo-j2ee-connector_1.5_spec"),
mavenBundle("org.apache.geronimo.components",
"geronimo-transaction"),
mavenBundle("org.apache.openjpa", "openjpa"),
mavenBundle("commons-lang", "commons-lang"),
mavenBundle("commons-collections", "commons-collections"),
mavenBundle("commons-pool", "commons-pool"),
mavenBundle("org.apache.servicemix.bundles",
"org.apache.servicemix.bundles.serp"),
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.aries.jndi", "org.apache.aries.jndi" ),
mavenBundle("org.apache.felix",
"org.apache.felix.bundlerepository"),
mavenBundle("org.apache.felix", "org.apache.felix.fileinstall" ),
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.runtime" ),
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"),
mavenBundle("org.apache.aries.jpa", "org.apache.aries.jpa.api" ),
mavenBundle("org.apache.aries.jpa",
"org.apache.aries.jpa.container" ),
mavenBundle("org.apache.aries.jpa",
"org.apache.aries.jpa.blueprint.aries" ),
mavenBundle("org.apache.aries.jpa",
"org.apache.aries.jpa.container.context" ),
mavenBundle("org.apache.aries.transaction",
"org.apache.aries.transaction.manager" ),
mavenBundle("org.apache.aries.transaction",
"org.apache.aries.transaction.blueprint" ),
mavenBundle("org.apache.aries.transaction",
"org.apache.aries.transaction.wrappers" ),
mavenBundle("org.apache.aries.samples.blog",
"org.apache.aries.samples.blog.datasource" ),
mavenBundle("asm", "asm-all" ),
equinox().version("3.5.0")
);
options = updateOptions(options);
return options;
}
Regards,
Mark
On 14 January 2011 16:06, Charles Moulliard <[email protected]> wrote:
> Hi Mark,
>
> I have found from the log file an additional info
>
> 16:37:49,082 | DEBUG | -SNAPSHOT/deploy | EBAInstaller
> | application.install.EBAInstaller 67 | 228 -
> org.apache.aries.application.install - 0.3.0.SNAPSHOT | created app
> from org.apache.aries.samples.blog.jpa.eba-0.3-SNAPSHOT.eba :
> org.apache.aries.samples.blog.jpa.eba 0.3.0.SNAPSHOT with contents
> [org.apache.aries.samples.blog.persistence.jpa;{version->0.3.0.SNAPSHOT},
> org.apache.aries.samples.blog.biz;{version->0.3.0.SNAPSHOT},
> org.apache.aries.samples.blog.api;{version->0.3.0.SNAPSHOT},
> org.apache.aries.samples.blog.web;{version->0.3.0.SNAPSHOT}]
> 16:37:49,087 | DEBUG | -SNAPSHOT/deploy |
> DeploymentManifestManagerImpl | pl.DeploymentManifestManagerImpl
> 137 | 236 - org.apache.aries.application.deployment.management -
> 0.3.0.SNAPSHOT | Method entry: generateDeploymentManifest, args
> [org.apache.aries.application.management.impl.AriesApplicationImpl@53720a2,
> []]
> 16:37:49,087 | DEBUG | -SNAPSHOT/deploy |
> DeploymentManifestManagerImpl | pl.DeploymentManifestManagerImpl
> 633 | 236 - org.apache.aries.application.deployment.management -
> 0.3.0.SNAPSHOT | Method entry: getByValueBundles, args
> [org.apache.aries.application.management.impl.AriesApplicationImpl@53720a2]
> 16:37:49,103 | DEBUG | -SNAPSHOT/deploy | ModelledResourceManagerImpl
> | impl.ModelledResourceManagerImpl 131 | 232 -
> org.apache.aries.application.modeller - 0.3.0.SNAPSHOT | Method entry:
> getModelledResource, args [null,
> /var/folders/+B/+BKA5gXmHdSjYzHY8ESZGk+++TI/-Tmp-/ebaTmp4372104825175758605.tmporg.apache.aries.samples.blog.api-0.3-SNAPSHOT.jar/]
> 16:37:49,103 | DEBUG | -SNAPSHOT/deploy | ModelledResourceManagerImpl
> | impl.ModelledResourceManagerImpl 88 | 232 -
> org.apache.aries.application.modeller - 0.3.0.SNAPSHOT | Method entry:
> getServiceElements, args
> /var/folders/+B/+BKA5gXmHdSjYzHY8ESZGk+++TI/-Tmp-/ebaTmp4372104825175758605.tmporg.apache.aries.samples.blog.api-0.3-SNAPSHOT.jar/
> 16:37:49,104 | DEBUG | -SNAPSHOT/deploy | ModelledResourceManagerImpl
> | impl.ModelledResourceManagerImpl 157 | 232 -
> org.apache.aries.application.modeller - 0.3.0.SNAPSHOT | Method entry:
> findBlueprints, args
> /var/folders/+B/+BKA5gXmHdSjYzHY8ESZGk+++TI/-Tmp-/ebaTmp4372104825175758605.tmporg.apache.aries.samples.blog.api-0.3-SNAPSHOT.jar/
> 16:37:49,104 | DEBUG | -SNAPSHOT/deploy | ModelledResourceManagerImpl
> | impl.ModelledResourceManagerImpl 178 | 232 -
> org.apache.aries.application.modeller - 0.3.0.SNAPSHOT | Method entry:
> findBlueprints, args
> [/var/folders/+B/+BKA5gXmHdSjYzHY8ESZGk+++TI/-Tmp-/ebaTmp4372104825175758605.tmporg.apache.aries.samples.blog.api-0.3-SNAPSHOT.jar/]
> 16:37:49,105 | DEBUG | -SNAPSHOT/deploy | EBAInstaller
> | application.install.EBAInstaller 67 | 228 -
> org.apache.aries.application.install - 0.3.0.SNAPSHOT | created app
> from org.apache.aries.samples.blog.jpa.eba-0.3-SNAPSHOT.eba :
> org.apache.aries.samples.blog.jpa.eba 0.3.0.SNAPSHOT with contents
> [org.apache.aries.samples.blog.persistence.jpa;{version->0.3.0.SNAPSHOT},
> org.apache.aries.samples.blog.biz;{version->0.3.0.SNAPSHOT},
> org.apache.aries.samples.blog.api;{version->0.3.0.SNAPSHOT},
> org.apache.aries.samples.blog.web;{version->0.3.0.SNAPSHOT}]
>
> It seems that Aries Application has created an 'app'. That means that
> it has been able to find it from the deploy directory of Apache Karaf.
>
> Question : Why the bundles defined in the eba archive are not deployed
> ? Could it be related to the missing package that you find Aries
> Blueprint Transaction ?
>
> Regards,
>
> Charles M.
>
>
> On Fri, Jan 14, 2011 at 5:00 PM, Mark Nuttall <[email protected]> wrote:
>> Hi Charles.
>> There are many exceptions in your trace - "Exception" is found 69
>> times, and I can't say for sure whether any of them are responsible
>> for the behaviour that you're seeing. However what jumps out at me is,
>>
>> 16:37:49,688 | DEBUG | -SNAPSHOT/deploy | ModelledResourceManagerImpl
>> | impl.ModelledResourceManagerImpl 121 | 232 -
>> org.apache.aries.application.modeller - 0.3.0.SNAPSHOT | Method exit:
>> getServiceElements, returning
>> org.apache.aries.application.modelling.ModellerException:
>> org.osgi.service.blueprint.container.ComponentDefinitionException:
>> Unsupported node namespace:
>> http://aries.apache.org/xmlns/transactions/v1.0.0
>>
>> If you are trying use declarative transactions in your application's
>> blueprint files, then you will need to add the
>> org.apache.aries.transaction.blueprint bundle to your runtime.
>>
>> Regards,
>> Mark
>>
>> On 14 January 2011 15:43, Charles Moulliard <[email protected]> wrote:
>>> Here is the log file that I put in attachment and where I have set
>>> org.apache.aries.application trace level to DEBUG. Maybe you will see
>>> something that I don t see.
>>>
>>> Remark : using debug of felix has not reported any error
>>>
>>>
>>> On Fri, Jan 14, 2011 at 3:28 PM, Mark Nuttall <[email protected]> wrote:
>>>> Hi Charles.
>>>> The PlatformRepository and LocalPlatform services were both in your
>>>> list of services that blueprint was waiting for. Since they're
>>>> started, please can you check to see if any of the other services
>>>> called out in your previous list have now been published? I'm puzzled
>>>> that your logs did not show some of your various service dependencies,
>>>> such as PlatformRepository and LocalPlatform, being met when those
>>>> services came up. Which if any of the required services are not being
>>>> published?
>>>>
>>>> Regards,
>>>> Mark
>>>>
>>>> On 14 January 2011 14:11, Charles Moulliard <[email protected]> wrote:
>>>>> Hi Mark,
>>>>>
>>>>> All the Blueprint services have their status "started".
>>>>>
>>>>> According to your first remark, it seems that the service is well
>>>>> published and exported by OSGI Service
>>>>>
>>>>> Apache Aries Application Platform Repository (234) provides:
>>>>> ------------------------------------------------------------
>>>>> org.apache.aries.application.management.spi.repository.PlatformRepository
>>>>> org.osgi.service.blueprint.container.BlueprintContainer
>>>>>
>>>>> And for the second the service is also well exposed
>>>>>
>>>>> Apache Aries Application Default local platform (233) provides:
>>>>> ---------------------------------------------------------------
>>>>> org.apache.aries.application.management.spi.runtime.LocalPlatform
>>>>> org.osgi.service.blueprint.container.BlueprintContainer
>>>>>
>>>>> [ 233] [Active ] [Created ] [ ] [ 60] Apache Aries
>>>>> Application Default local platform (0.3.0.SNAPSHOT)
>>>>> [ 234] [Active ] [Created ] [ ] [ 60] Apache Aries
>>>>> Application Platform Repository (0.3.0.SNAPSHOT)
>>>>>
>>>>> Regards,
>>>>>
>>>>> Charles
>>>>>
>>>>>
>>>>> On Fri, Jan 14, 2011 at 1:29 PM, Mark Nuttall <[email protected]> wrote:
>>>>>> Hello Charles.
>>>>>> First of all, please have a look at the bundles in your runtime to see
>>>>>> if any have failed to resolve. A missing package can easily set off a
>>>>>> chain of blueprint service dependency failures.
>>>>>>
>>>>>> If all your bundles have resolved then we need to start unpicking the
>>>>>> service dependency failures. I'd start with,
>>>>>>
>>>>>>> org.apache.aries.blueprint - 0.3.0.SNAPSHOT | Bundle
>>>>>>> org.apache.aries.application.resolver.obr is waiting for dependencies
>>>>>>> [(objectClass=org.apache.aries.application.management.spi.repository.PlatformRepository)]
>>>>>>
>>>>>> This service should have been published by
>>>>>> org.apache.aries.application.noop.platform.repo. The bundle is very
>>>>>> simple, with only two package imports: org.osgi.core and
>>>>>> org.apache.aries.application.api. Please have a look at that bundle in
>>>>>> the runtime and let us know why the expected service is not being
>>>>>> published.
>>>>>>
>>>>>> The next bundle to check is
>>>>>> org.apache.aries.application.default.local.platform, which should be
>>>>>> publishing a service with interface
>>>>>> org.apache.aries.application.management.spi.runtime.LocalPlatform.
>>>>>> Again this is a very simple bundle with the same package imports as
>>>>>> the previous one. The output below indicates that neither bundle has
>>>>>> resolved and published its expected service.
>>>>>>
>>>>>> Regards,
>>>>>> Mark
>>>>>>
>>>>>> On 14 January 2011 11:42, Charles Moulliard <[email protected]> wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> I have installed the following bundles to be able to deploy an eab
>>>>>>> archive on Karaf but nothing happens
>>>>>>>
>>>>>>> [ 227] [Active ] [Created ] [ ] [ 60]
>>>>>>> mvn:org.apache.aries.application/org.apache.aries.application.resolver.obr/0.3-SNAPSHOT
>>>>>>> [ 228] [Active ] [Created ] [ ] [ 60]
>>>>>>> mvn:org.apache.aries.application/org.apache.aries.application.install/0.3-SNAPSHOT
>>>>>>> [ 229] [Active ] [ ] [ ] [ 60]
>>>>>>> mvn:org.apache.aries.application/org.apache.aries.application.api/0.3-SNAPSHOT
>>>>>>> [ 230] [Active ] [Created ] [ ] [ 60]
>>>>>>> mvn:org.apache.aries.application/org.apache.aries.application.management/0.3-SNAPSHOT
>>>>>>> [ 231] [Active ] [Created ] [ ] [ 60]
>>>>>>> mvn:org.apache.aries.application/org.apache.aries.application.utils/0.3-SNAPSHOT
>>>>>>> [ 232] [Active ] [Created ] [ ] [ 60]
>>>>>>> mvn:org.apache.aries.application/org.apache.aries.application.modeller/0.3-SNAPSHOT
>>>>>>> [ 233] [Active ] [Created ] [ ] [ 60]
>>>>>>> mvn:org.apache.aries.application/org.apache.aries.application.default.local.platform/0.3-SNAPSHOT
>>>>>>> [ 234] [Active ] [Created ] [ ] [ 60]
>>>>>>> mvn:org.apache.aries.application/org.apache.aries.application.noop.platform.repo/0.3-SNAPSHOT
>>>>>>> [ 235] [Active ] [Created ] [ ] [ 60]
>>>>>>> mvn:org.apache.aries.application/org.apache.aries.application.noop.postresolve.process/0.3-SNAPSHOT
>>>>>>> [ 236] [Active ] [Created ] [ ] [ 60]
>>>>>>> mvn:org.apache.aries.application/org.apache.aries.application.deployment.management/0.3-SNAPSHOT
>>>>>>> [ 237] [Active ] [Created ] [ ] [ 60]
>>>>>>> mvn:org.apache.aries.application/org.apache.aries.application.runtime/0.3-SNAPSHOT
>>>>>>>
>>>>>>>
>>>>>>> In the log file, I see that some dependencies are waiting but that is
>>>>>>> all :
>>>>>>>
>>>>>>> 12:37:56,149 | INFO | rint Extender: 3 | BlueprintContainerImpl
>>>>>>> | container.BlueprintContainerImpl 305 | 8 -
>>>>>>> org.apache.aries.blueprint - 0.3.0.SNAPSHOT | Bundle
>>>>>>> org.apache.aries.application.resolver.obr is waiting for dependencies
>>>>>>> [(objectClass=org.apache.aries.application.modelling.ModellingManager),
>>>>>>> (objectClass=org.apache.aries.application.management.spi.repository.PlatformRepository),
>>>>>>> (objectClass=org.apache.aries.application.modelling.utils.ModellingHelper)]
>>>>>>> 12:37:56,151 | INFO | rint Extender: 1 | BlueprintContainerImpl
>>>>>>> | container.BlueprintContainerImpl 305 | 8 -
>>>>>>> org.apache.aries.blueprint - 0.3.0.SNAPSHOT | Bundle
>>>>>>> org.apache.aries.application.install is waiting for dependencies
>>>>>>> [(objectClass=org.apache.aries.application.management.AriesApplicationManager)]
>>>>>>> 12:37:56,205 | INFO | rint Extender: 3 | BlueprintContainerImpl
>>>>>>> | container.BlueprintContainerImpl 305 | 8 -
>>>>>>> org.apache.aries.blueprint - 0.3.0.SNAPSHOT | Bundle
>>>>>>> org.apache.aries.application.management is waiting for dependencies
>>>>>>> [(objectClass=org.apache.aries.application.DeploymentMetadataFactory),
>>>>>>> (objectClass=org.apache.aries.application.ApplicationMetadataFactory),
>>>>>>> (objectClass=org.apache.aries.application.management.spi.resolve.DeploymentManifestManager),
>>>>>>> (objectClass=org.apache.aries.application.management.spi.runtime.AriesApplicationContextManager),
>>>>>>> (objectClass=org.apache.aries.application.management.spi.runtime.LocalPlatform)]
>>>>>>> 12:37:56,306 | INFO | rint Extender: 2 | BlueprintContainerImpl
>>>>>>> | container.BlueprintContainerImpl 305 | 8 -
>>>>>>> org.apache.aries.blueprint - 0.3.0.SNAPSHOT | Bundle
>>>>>>> org.apache.aries.application.management is waiting for dependencies
>>>>>>> [(objectClass=org.apache.aries.application.management.spi.resolve.DeploymentManifestManager),
>>>>>>> (objectClass=org.apache.aries.application.management.spi.runtime.AriesApplicationContextManager),
>>>>>>> (objectClass=org.apache.aries.application.management.spi.runtime.LocalPlatform)]
>>>>>>> 12:37:56,343 | INFO | rint Extender: 1 | BlueprintContainerImpl
>>>>>>> | container.BlueprintContainerImpl 305 | 8 -
>>>>>>> org.apache.aries.blueprint - 0.3.0.SNAPSHOT | Bundle
>>>>>>> org.apache.aries.application.resolver.obr is waiting for dependencies
>>>>>>> [(objectClass=org.apache.aries.application.management.spi.repository.PlatformRepository)]
>>>>>>> 12:37:56,397 | INFO | rint Extender: 2 | BlueprintContainerImpl
>>>>>>> | container.BlueprintContainerImpl 305 | 8 -
>>>>>>> org.apache.aries.blueprint - 0.3.0.SNAPSHOT | Bundle
>>>>>>> org.apache.aries.application.deployment.management is waiting for
>>>>>>> dependencies
>>>>>>> [(objectClass=org.apache.aries.application.management.spi.resolve.PostResolveTransformer),
>>>>>>> (objectClass=org.apache.aries.application.management.spi.runtime.LocalPlatform),
>>>>>>> (objectClass=org.apache.aries.application.management.spi.resolve.AriesApplicationResolver)]
>>>>>>> 12:37:56,486 | INFO | rint Extender: 3 | BlueprintContainerImpl
>>>>>>> | container.BlueprintContainerImpl 305 | 8 -
>>>>>>> org.apache.aries.blueprint - 0.3.0.SNAPSHOT | Bundle
>>>>>>> org.apache.aries.application.management is waiting for dependencies
>>>>>>> [(objectClass=org.apache.aries.application.management.spi.resolve.DeploymentManifestManager),
>>>>>>> (objectClass=org.apache.aries.application.management.spi.runtime.LocalPlatform)]
>>>>>>> 12:37:56,495 | INFO | rint Extender: 1 | BlueprintContainerImpl
>>>>>>> | container.BlueprintContainerImpl 305 | 8 -
>>>>>>> org.apache.aries.blueprint - 0.3.0.SNAPSHOT | Bundle
>>>>>>> org.apache.aries.application.management is waiting for dependencies
>>>>>>> [(objectClass=org.apache.aries.application.management.spi.resolve.DeploymentManifestManager)]
>>>>>>>
>>>>>>>
>>>>>>> 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 Tue, Jan 11, 2011 at 9:24 PM, Charles Moulliard
>>>>>>> <[email protected]> wrote:
>>>>>>>> How Aries Application Install knows that the folder to be scanned is
>>>>>>>> "load" ?
>>>>>>>> How can we override this location >
>>>>>>>>
>>>>>>>>
>>>>>>>> On Tue, Jan 11, 2011 at 7:50 PM, Charles Moulliard
>>>>>>>> <[email protected]> wrote:
>>>>>>>>> Many thanks for the complement of info. This help me to see all the
>>>>>>>>> possibilities offered by Aries Application as I'min the process to
>>>>>>>>> prepare a new Webinar where I will present much more Aries
>>>>>>>>> functionalities available with Apache ServiceMix/Karaf
>>>>>>>>>
>>>>>>>>> On Tue, Jan 11, 2011 at 1:07 PM, Jeremy Hughes <[email protected]>
>>>>>>>>> wrote:
>>>>>>>>>> On 3 January 2011 10:51, Charles Moulliard <[email protected]>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>> 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 ?
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> You could look at:
>>>>>>>>>>
>>>>>>>>>> mavenBundle("org.apache.aries.application",
>>>>>>>>>> "org.apache.aries.application.install" ),
>>>>>>>>>>
>>>>>>>>>> it has a single class: EBAInstaller which extends the fileinstall
>>>>>>>>>> ArtifactInstaller. It's used in the Blog sample - you go to a built
>>>>>>>>>> samples/blog/blog-assembly/target which includes the fileinstall
>>>>>>>>>> bundle and
>>>>>>>>>> start Aries in a framework. The load dir is created and you drop and
>>>>>>>>>> EBA
>>>>>>>>>> into it. Fileinstall delegates to the EBAInstaller to install the
>>>>>>>>>> bundles
>>>>>>>>>> from the EBA.
>>>>>>>>>>
>>>>>>>>>> HTH,
>>>>>>>>>> Jeremy
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> 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
>>>>>>>>>>> >>
>>>>>>>>>>> >
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>