I'm trying to upgrade my Karaf 4.0.4 to 4.3.2. In 4.0.4, my bundles are deployed as spring apps loaded by spring-dm. In karaf 4.3.2 I have no longer spring-dm. I think the only way to do this, is via blueprint: Aries or Gemini. But as Aries is the default in Karaf, I would go for Aries. 1. Do you have a specific scenario on how I can start my spring bundles other then blueprint? Or using blueprint? 2. If I have no other option than to switch to blueprint, do I have to replace my spring beans with Java beans?
Thanks, Mura Andrei On Mon, Sep 13, 2021 at 12:33 PM Jean-Baptiste Onofré <[email protected]> wrote: > I'm not sure I follow what you are trying ;) > > It seems you are mixing CamelContext Spring and Blueprint. > > If you use Spring CamelContext you don't need blueprint. > > If you want to use blueprint (eventually with the extender), you can use > blueprint namespace. > > So, my point is: what namespace do you want to use ? spring or blueprint ? > > Regards > JB > > On 13/09/2021 11:30, Jean-Baptiste Onofré wrote: > > The aries-blueprint-spring extender is to support spring context. So as > > you use spring camel context in your camel bundle, it's the one involved. > > > > Why not using camel-blueprint namespace ? > > > > <camelContext xmlns="http://camel.apache.org/schema/blueprint"/> > > > > and using OSGI-INF/blueprint for your loading ? > > > > Regards > > JB > > > > On 13/09/2021 11:04, Andrei Petru Mura wrote: > >> Hi Jean, > >> > >> Do you think this can be related to spring loading? If I modify the > >> context file to this: > >> > >> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0 > >> <http://www.osgi.org/xmlns/blueprint/v1.0.0>"> > >> </blueprint> > >> > >> I get this: > >> Unable to start container for blueprint bundle > >> *my-bundle/version.of.the.bundle* > >> java.lang.RuntimeException: > >> > org.springframework.beans.factory.parsing.BeanDefinitionParsingException: > >> Configuration problem: Failed to import bean definitions from URL > >> location > >> > [bundle://6f3b550d-56d9-4050-9a00-265a618c1c72_120.0:0/META-INF/spring/camel-context.xml] > > >> > >> Offending resource: URL > >> > [file:/apache-karaf/data/tmp/blueprint-spring-extender300655750637593520.xml]; > > >> nested exception is > >> org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: > >> Line 11 in XML document from URL > >> > [bundle://6f3b550d-56d9-4050-9a00-265a618c1c72_120.0:0/META-INF/spring/camel-context.xml] > > >> is invalid; nested exception is org.xml.sax.SAXParseException; > >> lineNumber: 11; columnNumber: 63; cvc-elt.1: Cannot find the > >> declaration of element 'blueprint'. > >> > >> So, it seems to me the loading is made by spring, not by aries. Below > >> are my spring related installed features (I put only the installed > >> ones for the sake of readability): > >> > >> karaf@root()> feature:list | grep -i spring > >> spring x 5.3.5.1 x > >> x Started x spring-4.3.2 x Spring 5.3.x > support > >> spring-jdbc x 5.3.5.1 x > >> x Started x spring-4.3.2 x Spring 5.3.x JDBC > >> support > >> spring-orm x 5.3.5.1 x x > >> x Started x spring-4.3.2 x Spring 5.3.x ORM > >> supportrt > >> spring-tx x 5.3.5.1 x > >> x Started x spring-4.3.2 x Spring 5.3.x > >> Transaction (TX) support > >> aries-blueprint-spring x 0.0.0 x x > >> x Started x spring-4.3.2 x > >> camel-spring x 2.25.4 x x > >> x Started x camel-2.25.4 x > >> > >> Anyway, taking in account that aries-blueprint-spring is the one which > >> starts the loading, I'm a bit confused. > >> Any guidance would be appreciated. Thanks. > >> > >> Andrei > >> > >> On Mon, Sep 13, 2021 at 11:50 AM Andrei Petru Mura > >> <[email protected] <mailto:[email protected]>> wrote: > >> > >> Hi Jean, > >> > >> Yes, I do. > >> > >> karaf@root()> feature:list | grep -i blueprint > >> aries-blueprint-spring x 0.0.0 x x > >> x Started x spring-4.3.2 x > >> camel-blueprint x 2.25.4 x x > >> x Started x camel-2.25.4 x > >> aries-blueprint x 4.3.2 x > >> x Started x standard-4.3.2 x Aries Blueprint > >> jaas-deployer x 4.3.2 x > >> x Uninstalled x standard-4.3.2 x Allow > >> support of blueprint JAAS configuration in > >> blueprint-web x 4.3.2 x > >> x Uninstalled x standard-4.3.2 x Provides an > >> OSGI-aware Servlet ContextListener fo > >> > >> Andrei > >> > >> On Mon, Sep 13, 2021 at 11:47 AM Jean-Baptiste Onofré > >> <[email protected] <mailto:[email protected]>> wrote: > >> > >> Hi Andrei, > >> > >> do you have aries-blueprint feature installed ? > >> > >> Aries Blueprint provides the namespace handler. > >> > >> You can find the feature/example in Karaf repo: > >> > >> > https://github.com/apache/karaf/tree/main/examples/karaf-camel-example/karaf-camel-example-blueprint > >> > >> > >> < > https://github.com/apache/karaf/tree/main/examples/karaf-camel-example/karaf-camel-example-blueprint> > > >> > >> > >> Regards > >> JB > >> > >> On 13/09/2021 10:44, Andrei Petru Mura wrote: > >> > Hi all, > >> > > >> > I'm trying to get ready a bundle in Karaf 4.3.2. In karaf I > >> have > >> > installed camel, spring and aries by default (along it's > >> > aries-blueprint-spring feature). > >> > My blueprint XML file looks like below (I reduced it to > >> minimum). > >> > > >> > <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0 > >> <http://www.osgi.org/xmlns/blueprint/v1.0.0> > >> > <http://www.osgi.org/xmlns/blueprint/v1.0.0 > >> <http://www.osgi.org/xmlns/blueprint/v1.0.0>>" > >> > xmlns:xsi=" > http://www.w3.org/2001/XMLSchema-instance > >> <http://www.w3.org/2001/XMLSchema-instance> > >> > <http://www.w3.org/2001/XMLSchema-instance > >> <http://www.w3.org/2001/XMLSchema-instance>>" > >> > > >> > > >> > >> xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0 > >> <http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0> > >> > <http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0 > >> <http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0>>" > >> > xsi:schemaLocation=" > >> > http://www.osgi.org/xmlns/blueprint/v1.0.0 > >> <http://www.osgi.org/xmlns/blueprint/v1.0.0> > >> > <http://www.osgi.org/xmlns/blueprint/v1.0.0 > >> <http://www.osgi.org/xmlns/blueprint/v1.0.0>> > >> > http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd > >> <http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd> > >> > <http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd > >> <http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd>> > >> > "> > >> > </blueprint> > >> > > >> > When I try to start the bundle, I get this in logs: > >> > INFO [pool-8-thread-3] Blueprint bundle > >> > *my-bundle/version.of.the.bundle* is waiting for namespace > >> handlers > >> > [http://www.osgi.org/xmlns/blueprint/v1.0.0 > >> <http://www.osgi.org/xmlns/blueprint/v1.0.0> > >> > <http://www.osgi.org/xmlns/blueprint/v1.0.0 > >> <http://www.osgi.org/xmlns/blueprint/v1.0.0>>] > >> > > >> > Does anyone have any idea how I can fix this? > >> > > >> > Thanks, > >> > Andrei > >> >
