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
> >>
>

Reply via email to