No URL is defined for schema http://www.springframework.org/schema/osgi.

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

No URL is defined for schema http://www.springframework.org/schema/osgi.

Miroslav Beranič
Hi all,

I've read some messages in this mailing list ( last I found was in August 2018 ), but I think, I have something different scenario.

So, up until today ( when I was doing clean environment setup ) I was able to use define Spring Beans using XML ( as I am porting application, this is like top feature ), but now - out of the blue, I've started to get errors on deployment:

12:13:12.912 INFO [pool-33-thread-1] Generated blueprint for bundle framework.service/5.0.1.SNAPSHOT at /path/to/assemblies/apache-karaf/target/assembly/data/tmp/blueprint-spring-extender1831035315356717600.xml
12:13:12.917 INFO [pool-33-thread-1] Bundle framework.service/5.0.1.SNAPSHOT is waiting for namespace handlers [http://www.springframework.org/schema/osgi]

12:13:12.895 INFO [features-3-thread-1]   org.apache.aries.blueprint.spring.extender/0.4.0
12:13:12.935 WARN [Blueprint Extender: 1] No URL is defined for schema http://www.springframework.org/schema/osgi. This schema will not be validated
12:13:12.969 ERROR [Blueprint Extender: 1] Unable to start blueprint container for bundle framework.service/5.0.1.SNAPSHOT
org.osgi.service.blueprint.container.ComponentDefinitionException: Unsupported node namespace:
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at org.apache.aries.blueprint.container.ExecutorServiceWrapper.run(ExecutorServiceWrapper.java:106) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:45) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]

So, has something changed about Spring ( Spring DM ) from Karaf's point? I went over GIT commits ( for Karaf 4.2.2, last few weeks ), but did not find anything regarding Spring. I am using Spring 4.3.x ( from Karaf features ).

I have spring-beans.xml inside /META-INF/spring/ folder, and I used http://www.springframework.org/schema/osgi namespace to "import" osgi:reference -- and this all worked like a charm.

Now I get this error and no way to find any solution. I "kind of" gave up ( as I read JB's comments - why not use ( only ) Blueprint ), so I gave it a try. But than I was starting getting even more strange errors,
for example Blueprint failed to set property defined in parent class, or create instance that takes Map as input into class constructor - as I failed to find matching property descriptor or class constructor.

Than I went back to original question ... what has changed, that http://www.springframework.org/schema/osgi has stopped working ( as far as I know, spring-dm is even older ( based on the mailing messages I've read ) ),
so I've uses aries-blueprint-spring.

What am I missing?

Kind Regards,
Miroslav


--
Miroslav Beranič
MIBESIS
+386(0)40/814-843
[hidden email]
http://www.mibesis.si
Reply | Threaded
Open this post in threaded view
|

Re: No URL is defined for schema http://www.springframework.org/schema/osgi.

jbonofre
Hi

It's because your are using spring-dm which is deprecated and works only with spring up to 4.

So you have to add the spring-legacy features repo and then you will have the spring-dm feature.

Regards
JB
Le 10 oct. 2018, à 15:04, "Miroslav Beranič" <[hidden email]> a écrit:
Hi all,

I've read some messages in this mailing list ( last I found was in August 2018 ), but I think, I have something different scenario.

So, up until today ( when I was doing clean environment setup ) I was able to use define Spring Beans using XML ( as I am porting application, this is like top feature ), but now - out of the blue, I've started to get errors on deployment:

12:13:12.912 INFO [pool-33-thread-1] Generated blueprint for bundle framework.service/5.0.1.SNAPSHOT at /path/to/assemblies/apache-karaf/target/assembly/data/tmp/blueprint-spring-extender1831035315356717600.xml
12:13:12.917 INFO [pool-33-thread-1] Bundle framework.service/5.0.1.SNAPSHOT is waiting for namespace handlers [http://www.springframework.org/schema/osgi]

12:13:12.895 INFO [features-3-thread-1]   org.apache.aries.blueprint.spring.extender/0.4.0
12:13:12.935 WARN [Blueprint Extender: 1] No URL is defined for schema http://www.springframework.org/schema/osgi. This schema will not be validated
12:13:12.969 ERROR [Blueprint Extender: 1] Unable to start blueprint container for bundle framework.service/5.0.1.SNAPSHOT
org.osgi.service.blueprint.container.ComponentDefinitionException: Unsupported node namespace:
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at org.apache.aries.blueprint.container.ExecutorServiceWrapper.run(ExecutorServiceWrapper.java:106) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:45) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]

So, has something changed about Spring ( Spring DM ) from Karaf's point? I went over GIT commits ( for Karaf 4.2.2, last few weeks ), but did not find anything regarding Spring. I am using Spring 4.3.x ( from Karaf features ).

I have spring-beans.xml inside /META-INF/spring/ folder, and I used http://www.springframework.org/schema/osgi namespace to "import" osgi:reference -- and this all worked like a charm.

Now I get this error and no way to find any solution. I "kind of" gave up ( as I read JB's comments - why not use ( only ) Blueprint ), so I gave it a try. But than I was starting getting even more strange errors,
for example Blueprint failed to set property defined in parent class, or create instance that takes Map as input into class constructor - as I failed to find matching property descriptor or class constructor.

Than I went back to original question ... what has changed, that http://www.springframework.org/schema/osgi has stopped working ( as far as I know, spring-dm is even older ( based on the mailing messages I've read ) ),
so I've uses aries-blueprint-spring.

What am I missing?

Kind Regards,
Miroslav

Reply | Threaded
Open this post in threaded view
|

Re: No URL is defined for schema http://www.springframework.org/schema/osgi.

Guillaume Nodet-2
You can also install the aries-blueprint-spring feature which should provide support for the spring namespaces.

Le mer. 10 oct. 2018 à 14:07, Jean-Baptiste Onofré <[hidden email]> a écrit :
Hi

It's because your are using spring-dm which is deprecated and works only with spring up to 4.

So you have to add the spring-legacy features repo and then you will have the spring-dm feature.

Regards
JB
Le 10 oct. 2018, à 15:04, "Miroslav Beranič" <[hidden email]> a écrit:
Hi all,

I've read some messages in this mailing list ( last I found was in August 2018 ), but I think, I have something different scenario.

So, up until today ( when I was doing clean environment setup ) I was able to use define Spring Beans using XML ( as I am porting application, this is like top feature ), but now - out of the blue, I've started to get errors on deployment:

12:13:12.912 INFO [pool-33-thread-1] Generated blueprint for bundle framework.service/5.0.1.SNAPSHOT at /path/to/assemblies/apache-karaf/target/assembly/data/tmp/blueprint-spring-extender1831035315356717600.xml
12:13:12.917 INFO [pool-33-thread-1] Bundle framework.service/5.0.1.SNAPSHOT is waiting for namespace handlers [http://www.springframework.org/schema/osgi]

12:13:12.895 INFO [features-3-thread-1]   org.apache.aries.blueprint.spring.extender/0.4.0
12:13:12.935 WARN [Blueprint Extender: 1] No URL is defined for schema http://www.springframework.org/schema/osgi. This schema will not be validated
12:13:12.969 ERROR [Blueprint Extender: 1] Unable to start blueprint container for bundle framework.service/5.0.1.SNAPSHOT
org.osgi.service.blueprint.container.ComponentDefinitionException: Unsupported node namespace:
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at org.apache.aries.blueprint.container.ExecutorServiceWrapper.run(ExecutorServiceWrapper.java:106) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:45) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]

So, has something changed about Spring ( Spring DM ) from Karaf's point? I went over GIT commits ( for Karaf 4.2.2, last few weeks ), but did not find anything regarding Spring. I am using Spring 4.3.x ( from Karaf features ).

I have spring-beans.xml inside /META-INF/spring/ folder, and I used http://www.springframework.org/schema/osgi namespace to "import" osgi:reference -- and this all worked like a charm.

Now I get this error and no way to find any solution. I "kind of" gave up ( as I read JB's comments - why not use ( only ) Blueprint ), so I gave it a try. But than I was starting getting even more strange errors,
for example Blueprint failed to set property defined in parent class, or create instance that takes Map as input into class constructor - as I failed to find matching property descriptor or class constructor.

Than I went back to original question ... what has changed, that http://www.springframework.org/schema/osgi has stopped working ( as far as I know, spring-dm is even older ( based on the mailing messages I've read ) ),
so I've uses aries-blueprint-spring.

What am I missing?

Kind Regards,
Miroslav



--
------------------------
Guillaume Nodet

Reply | Threaded
Open this post in threaded view
|

Re: No URL is defined for schema http://www.springframework.org/schema/osgi.

Miroslav Beranič
Hi both,

I thought I wrote too much and lost focus.

So, I already use spring-legacy repository, and I get spring-* 4.3.x. I already had all this working. I do not use spring-dm feature ( I see it is available, version 1.2.1, spring-dm and spring-dm-web, did not even notice it before ).

I am using aries-blueprint-spring from Karaf's repository.
    <feature name="aries-blueprint-spring">
        <feature>aries-blueprint</feature>
        <feature>spring</feature>
        <bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.spring/${aries.blueprint.spring.version}</bundle>
        <bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.spring.extender/${aries.blueprint.spring.extender.version}</bundle>
    </feature>

First I install Spring 4.3 from spring-legacy, next I install aries-blueprint-spring ( as if not in this order, Spring 5.0.x is installed ).
    <features name="spring-legacy-${project.version}"


To do "dry run". In practice this is "correct way" :
spring-4.3.x from repository spring-legacy and aries-blueprint-spring from repository spring and I should be all green, or?

Any idea what else could go wrong ... some other JMS/JPA/PAX/... dependency/feature to mix it up?

My biggest pain is -- as I had working setup, and now I can not make it work anymore. I've reverted my work and Karaf, no luck - either way.


Thanks for the directions.


Kind Regards,
Miroslav




V V sre., 10. okt. 2018 ob 14:13 je oseba Guillaume Nodet <[hidden email]> napisala:
You can also install the aries-blueprint-spring feature which should provide support for the spring namespaces.

Le mer. 10 oct. 2018 à 14:07, Jean-Baptiste Onofré <[hidden email]> a écrit :
Hi

It's because your are using spring-dm which is deprecated and works only with spring up to 4.

So you have to add the spring-legacy features repo and then you will have the spring-dm feature.

Regards
JB
Le 10 oct. 2018, à 15:04, "Miroslav Beranič" <[hidden email]> a écrit:
Hi all,

I've read some messages in this mailing list ( last I found was in August 2018 ), but I think, I have something different scenario.

So, up until today ( when I was doing clean environment setup ) I was able to use define Spring Beans using XML ( as I am porting application, this is like top feature ), but now - out of the blue, I've started to get errors on deployment:

12:13:12.912 INFO [pool-33-thread-1] Generated blueprint for bundle framework.service/5.0.1.SNAPSHOT at /path/to/assemblies/apache-karaf/target/assembly/data/tmp/blueprint-spring-extender1831035315356717600.xml
12:13:12.917 INFO [pool-33-thread-1] Bundle framework.service/5.0.1.SNAPSHOT is waiting for namespace handlers [http://www.springframework.org/schema/osgi]

12:13:12.895 INFO [features-3-thread-1]   org.apache.aries.blueprint.spring.extender/0.4.0
12:13:12.935 WARN [Blueprint Extender: 1] No URL is defined for schema http://www.springframework.org/schema/osgi. This schema will not be validated
12:13:12.969 ERROR [Blueprint Extender: 1] Unable to start blueprint container for bundle framework.service/5.0.1.SNAPSHOT
org.osgi.service.blueprint.container.ComponentDefinitionException: Unsupported node namespace:
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at org.apache.aries.blueprint.container.ExecutorServiceWrapper.run(ExecutorServiceWrapper.java:106) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:45) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]

So, has something changed about Spring ( Spring DM ) from Karaf's point? I went over GIT commits ( for Karaf 4.2.2, last few weeks ), but did not find anything regarding Spring. I am using Spring 4.3.x ( from Karaf features ).

I have spring-beans.xml inside /META-INF/spring/ folder, and I used http://www.springframework.org/schema/osgi namespace to "import" osgi:reference -- and this all worked like a charm.

Now I get this error and no way to find any solution. I "kind of" gave up ( as I read JB's comments - why not use ( only ) Blueprint ), so I gave it a try. But than I was starting getting even more strange errors,
for example Blueprint failed to set property defined in parent class, or create instance that takes Map as input into class constructor - as I failed to find matching property descriptor or class constructor.

Than I went back to original question ... what has changed, that http://www.springframework.org/schema/osgi has stopped working ( as far as I know, spring-dm is even older ( based on the mailing messages I've read ) ),
so I've uses aries-blueprint-spring.

What am I missing?

Kind Regards,
Miroslav



--
------------------------
Guillaume Nodet



--
Miroslav Beranič
MIBESIS
+386(0)40/814-843
[hidden email]
http://www.mibesis.si
Reply | Threaded
Open this post in threaded view
|

Re: No URL is defined for schema http://www.springframework.org/schema/osgi.

jbonofre
Afair spring-dm doesn't support spring 4.3 either. It's up to spring 4.2. so you have to install providing the target version.

Further more you have to install spring-dm or blueprint spring extension.

Regards
JB
Le 10 oct. 2018, à 15:34, "Miroslav Beranič" <[hidden email]> a écrit:
Hi both,

I thought I wrote too much and lost focus.

So, I already use spring-legacy repository, and I get spring-* 4.3.x. I already had all this working. I do not use spring-dm feature ( I see it is available, version 1.2.1, spring-dm and spring-dm-web, did not even notice it before ).

I am using aries-blueprint-spring from Karaf's repository.
    <feature name="aries-blueprint-spring">
        <feature>aries-blueprint</feature>
        <feature>spring</feature>
        <bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.spring/${aries.blueprint.spring.version}</bundle>
        <bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.spring.extender/${aries.blueprint.spring.extender.version}</bundle>
    </feature>

First I install Spring 4.3 from spring-legacy, next I install aries-blueprint-spring ( as if not in this order, Spring 5.0.x is installed ).
    <features name="spring-legacy-${project.version}"


To do "dry run". In practice this is "correct way" :
spring-4.3.x from repository spring-legacy and aries-blueprint-spring from repository spring and I should be all green, or?

Any idea what else could go wrong ... some other JMS/JPA/PAX/... dependency/feature to mix it up?

My biggest pain is -- as I had working setup, and now I can not make it work anymore. I've reverted my work and Karaf, no luck - either way.


Thanks for the directions.


Kind Regards,
Miroslav




V V sre., 10. okt. 2018 ob 14:13 je oseba Guillaume Nodet < [hidden email]> napisala:
You can also install the aries-blueprint-spring feature which should provide support for the spring namespaces.

Le mer. 10 oct. 2018 à 14:07, Jean-Baptiste Onofré < [hidden email]> a écrit :
Hi

It's because your are using spring-dm which is deprecated and works only with spring up to 4.

So you have to add the spring-legacy features repo and then you will have the spring-dm feature.

Regards
JB
Le 10 oct. 2018, à 15:04, "Miroslav Beranič" < [hidden email]> a écrit:
Hi all,

I've read some messages in this mailing list ( last I found was in August 2018 ), but I think, I have something different scenario.

So, up until today ( when I was doing clean environment setup ) I was able to use define Spring Beans using XML ( as I am porting application, this is like top feature ), but now - out of the blue, I've started to get errors on deployment:

12:13:12.912 INFO [pool-33-thread-1] Generated blueprint for bundle framework.service/5.0.1.SNAPSHOT at /path/to/assemblies/apache-karaf/target/assembly/data/tmp/blueprint-spring-extender1831035315356717600.xml
12:13:12.917 INFO [pool-33-thread-1] Bundle framework.service/5.0.1.SNAPSHOT is waiting for namespace handlers [ http://www.springframework.org/schema/osgi]

12:13:12.895 INFO [features-3-thread-1]   org.apache.aries.blueprint.spring.extender/0.4.0
12:13:12.935 WARN [Blueprint Extender: 1] No URL is defined for schema http://www.springframework.org/schema/osgi. This schema will not be validated
12:13:12.969 ERROR [Blueprint Extender: 1] Unable to start blueprint container for bundle framework.service/5.0.1.SNAPSHOT
org.osgi.service.blueprint.container.ComponentDefinitionException: Unsupported node namespace:
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at org.apache.aries.blueprint.container.ExecutorServiceWrapper.run(ExecutorServiceWrapper.java:106) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:45) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]

So, has something changed about Spring ( Spring DM ) from Karaf's point? I went over GIT commits ( for Karaf 4.2.2, last few weeks ), but did not find anything regarding Spring. I am using Spring 4.3.x ( from Karaf features ).

I have spring-beans.xml inside /META-INF/spring/ folder, and I used http://www.springframework.org/schema/osgi namespace to "import" osgi:reference -- and this all worked like a charm.

Now I get this error and no way to find any solution. I "kind of" gave up ( as I read JB's comments - why not use ( only ) Blueprint ), so I gave it a try. But than I was starting getting even more strange errors,
for example Blueprint failed to set property defined in parent class, or create instance that takes Map as input into class constructor - as I failed to find matching property descriptor or class constructor.

Than I went back to original question ... what has changed, that http://www.springframework.org/schema/osgi has stopped working ( as far as I know, spring-dm is even older ( based on the mailing messages I've read ) ),
so I've uses aries-blueprint-spring.

What am I missing?

Kind Regards,
Miroslav



--
------------------------
Guillaume Nodet



--
Miroslav Beranič
MIBESIS
+386(0)40/814-843
[hidden email]
http://www.mibesis.si
Reply | Threaded
Open this post in threaded view
|

Re: No URL is defined for schema http://www.springframework.org/schema/osgi.

Miroslav Beranič
Hi all,

I found a solution.

To repeat/clarify first:
- I am using Karaf 4.2.2
- I am using "as much as I can" "built in" features
- I am using Spring 4.3 ( features from Karaf's spring-legacy repository/features )
- I am using Karaf's feature "aries-blueprint-spring" to get "Spring Framework XSD namespace" support ( http://www.springframework.org/schema/osgi ), part of the Aries project, file located at /aries/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-1.2.xsd, because of the implementation org.apache.aries.blueprint.spring.extender.SpringOsgiNamespaceHandler, one can reference XSD file as spring-osgi.xsd ( it is "renamed" to spring-osgi-1.2.xsd ).
- I am using bundle from ServiceMix Bundles org.apache.servicemix.bundles:org.apache.servicemix.bundles.spring-beans/4.3.18 to get Spring Framework 4.3 XSD files, one can also use http://www.springframework.org/schema/beans/spring-beans.xsd and will get http://www.springframework.org/schema/beans/spring-beans-4.3.xsd ( if bundle version 4.3 is the only one installed , it is in my  case ).
- I am not using spring-dm feature from Karaf's repository

Here, the fun part starts. As I said, it was all working ( one day ) and than next day ( when installed on new virtual dev box ) it stopped working throwing errors like:

11:09:19.614 ERROR [pool-20-thread-1] Unable to start blueprint container for bundle framework.service/5.0.1.SNAPSHOT
java.lang.RuntimeException: org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from URL location [bundle://90.0:0/META-INF/spring/mm-context.xml]
Offending resource: URL [file:/path/to/karaf-4.2.2/data/tmp/blueprint-spring-extender1091125880178019981.xml]; nested exception is org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from URL location [classpath:/META-INF/mm/spring/mm-dl-management-beans.xml]
Offending resource: URL [bundle://90.0:0/META-INF/spring/mm-context.xml]; nested exception is org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/osgi]
Offending resource: class path resource [META-INF/mm/spring/mm-dl-management-beans.xml]

    at org.apache.aries.blueprint.spring.BlueprintNamespaceHandler.parse(BlueprintNamespaceHandler.java:132) ~[?:?]
    at org.apache.aries.blueprint.parser.Parser.parseCustomElement(Parser.java:1369) ~[47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:427) ~[47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331) ~[47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351) [47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278) [47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:299) [47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintExtender.access$1100(BlueprintExtender.java:68) [47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintExtender$BlueprintContainerServiceImpl.createContainer(BlueprintExtender.java:617) [47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.spring.extender.SpringOsgiExtension.start(SpringOsgiExtension.java:112) [49:org.apache.aries.blueprint.spring.extender:0.4.0]
    at org.apache.felix.utils.extender.AbstractExtender$1.run(AbstractExtender.java:265) [49:org.apache.aries.blueprint.spring.extender:0.


And even some times I got even more strange error:

12:13:12.969 ERROR [Blueprint Extender: 1] Unable to start blueprint container for bundle framework.service/5.0.1.SNAPSHOT
org.osgi.service.blueprint.container.ComponentDefinitionException: Unsupported node namespace:
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278) [111:org.apache.aries.blueprint.core:1.9.0]

( notice the "empty" namespace ... )


After all the strange things done, to make it work again, I've started vanilla project ... and it worked. As expected. Simple as putting one xml inside bundle class path /META-INF/spring/context.xml.

So, the fun part was -- I "wanted to clean up" config files and I moved XML files to /META-INF/mm/spring/*.xml and include/import them from context.xml.

And this was the issue. It turned out, Blueprint/Spring support will fly out of the window, when http://www.springframework.org/schema/osgi is used in a XML file being referenced / included / imported.

So to fix my issue, I have all the Spring XML files ( that have http://www.springframework.org/schema/osgi namespace ) stored inside folder /META-INF/spring/ and all other Spring-only namespaced files in other locations.

Did not have the time to look over the source code why is this so, but to me, this is strange implementation. This is also not "pointed out" in the documentation or so, so ... fun fun fun. Took me days too long to figure this out.


Kind Regards,
Miroslav



V V sre., 10. okt. 2018 ob 14:39 je oseba Jean-Baptiste Onofré <[hidden email]> napisala:
Afair spring-dm doesn't support spring 4.3 either. It's up to spring 4.2. so you have to install providing the target version.

Further more you have to install spring-dm or blueprint spring extension.

Regards
JB
Le 10 oct. 2018, à 15:34, "Miroslav Beranič" <[hidden email]> a écrit:
Hi both,

I thought I wrote too much and lost focus.

So, I already use spring-legacy repository, and I get spring-* 4.3.x. I already had all this working. I do not use spring-dm feature ( I see it is available, version 1.2.1, spring-dm and spring-dm-web, did not even notice it before ).

I am using aries-blueprint-spring from Karaf's repository.
    <feature name="aries-blueprint-spring">
        <feature>aries-blueprint</feature>
        <feature>spring</feature>
        <bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.spring/${aries.blueprint.spring.version}</bundle>
        <bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.spring.extender/${aries.blueprint.spring.extender.version}</bundle>
    </feature>

First I install Spring 4.3 from spring-legacy, next I install aries-blueprint-spring ( as if not in this order, Spring 5.0.x is installed ).
    <features name="spring-legacy-${project.version}"


To do "dry run". In practice this is "correct way" :
spring-4.3.x from repository spring-legacy and aries-blueprint-spring from repository spring and I should be all green, or?

Any idea what else could go wrong ... some other JMS/JPA/PAX/... dependency/feature to mix it up?

My biggest pain is -- as I had working setup, and now I can not make it work anymore. I've reverted my work and Karaf, no luck - either way.


Thanks for the directions.


Kind Regards,
Miroslav




V V sre., 10. okt. 2018 ob 14:13 je oseba Guillaume Nodet < [hidden email]> napisala:
You can also install the aries-blueprint-spring feature which should provide support for the spring namespaces.

Le mer. 10 oct. 2018 à 14:07, Jean-Baptiste Onofré < [hidden email]> a écrit :
Hi

It's because your are using spring-dm which is deprecated and works only with spring up to 4.

So you have to add the spring-legacy features repo and then you will have the spring-dm feature.

Regards
JB
Le 10 oct. 2018, à 15:04, "Miroslav Beranič" < [hidden email]> a écrit:
Hi all,

I've read some messages in this mailing list ( last I found was in August 2018 ), but I think, I have something different scenario.

So, up until today ( when I was doing clean environment setup ) I was able to use define Spring Beans using XML ( as I am porting application, this is like top feature ), but now - out of the blue, I've started to get errors on deployment:

12:13:12.912 INFO [pool-33-thread-1] Generated blueprint for bundle framework.service/5.0.1.SNAPSHOT at /path/to/assemblies/apache-karaf/target/assembly/data/tmp/blueprint-spring-extender1831035315356717600.xml
12:13:12.917 INFO [pool-33-thread-1] Bundle framework.service/5.0.1.SNAPSHOT is waiting for namespace handlers [ http://www.springframework.org/schema/osgi]

12:13:12.895 INFO [features-3-thread-1]   org.apache.aries.blueprint.spring.extender/0.4.0
12:13:12.935 WARN [Blueprint Extender: 1] No URL is defined for schema http://www.springframework.org/schema/osgi. This schema will not be validated
12:13:12.969 ERROR [Blueprint Extender: 1] Unable to start blueprint container for bundle framework.service/5.0.1.SNAPSHOT
org.osgi.service.blueprint.container.ComponentDefinitionException: Unsupported node namespace:
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at org.apache.aries.blueprint.container.ExecutorServiceWrapper.run(ExecutorServiceWrapper.java:106) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:45) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]

So, has something changed about Spring ( Spring DM ) from Karaf's point? I went over GIT commits ( for Karaf 4.2.2, last few weeks ), but did not find anything regarding Spring. I am using Spring 4.3.x ( from Karaf features ).

I have spring-beans.xml inside /META-INF/spring/ folder, and I used http://www.springframework.org/schema/osgi namespace to "import" osgi:reference -- and this all worked like a charm.

Now I get this error and no way to find any solution. I "kind of" gave up ( as I read JB's comments - why not use ( only ) Blueprint ), so I gave it a try. But than I was starting getting even more strange errors,
for example Blueprint failed to set property defined in parent class, or create instance that takes Map as input into class constructor - as I failed to find matching property descriptor or class constructor.

Than I went back to original question ... what has changed, that http://www.springframework.org/schema/osgi has stopped working ( as far as I know, spring-dm is even older ( based on the mailing messages I've read ) ),
so I've uses aries-blueprint-spring.

What am I missing?

Kind Regards,
Miroslav



--
------------------------
Guillaume Nodet



--
Miroslav Beranič
MIBESIS
+386(0)40/814-843
[hidden email]
http://www.mibesis.si


--
Miroslav Beranič
MIBESIS
+386(0)40/814-843
[hidden email]
http://www.mibesis.si
Reply | Threaded
Open this post in threaded view
|

Re: No URL is defined for schema http://www.springframework.org/schema/osgi.

Miroslav Beranič
Hi all,

not quite done yet.

So new day, new problems. After another round of try/error -- it worked, and did not work next day.

Even "one xml deploy" bundle was not working. Now, I am more focused into the CXF project.

I am quite sure, this "works today, does not work tomorrow" is due to bundle deploy order. I've found out, that there are multiple Xerces instances flying around. I had one, for some legacy SOAP client generated from WSDL using Axis 1.4.

It had Xerces, after a lot of redeploys I've figured out that when Xerces bundle is deployed Karaf is not able to resolve/deploy bundle with Spring XML configuration.

I am getting "org.osgi.service.blueprint.container.ComponentDefinitionException: Unsupported node namespace:" ( notice empty namespace ). When I do uninstall of the Xerces bundle -- and restart Spring XML configuration bundle, it works. Repeat Xerces bundle install, Spring XML configuration bundle fails to load.

When cxf feature is installed bundle:
313 │ Active   │  30 │ 2.11.0.1                           │ org.apache.servicemix.bundles.xerces
is installed. I've exported bundles for the feature cxf and JAR file name is: org.apache.servicemix.bundles.xerces-2.11.0_1.jar

This is also in line with my first voodoo , when I was asking if it is possible that some dependency makes a mess. I would say, this is the "main problem".

Other issue was with ActiveMQ and Camel, and "class cast exceptions" for Spring's classes, also some nice pitfalls there ( all solved with correct bundle deploy order ).

What I've notices is - order of the feature/bundle loading is the key and it is not easy. One "innocent" dependency and whole tree of un-wanted bundles is put into the Karaf.


I would really really like to know, am I doing so much something extra and no one else has this issues? As all I am doing is loading bundle with spring xml configuration and SOAP server ( with CXF ) and all stops working. It is hard to believe this is "only my problem".

The more likely thing is : I am doing all wrong. Also if this is true, I would really like to know what? How can it be, that if I load Apache CXF feature and in another bundle Spring XML Configuration, one "overrides" XML/XSD namespace resolution. To me this is interesting as I would really like to know, how is this connected and how this is even possible.


So today's finding is: If you have errors like: No URL is defined for schema http://www.springframework.org/schema/osgi, org.osgi.service.blueprint.container.ComponentDefinitionException: Unsupported node namespace:, go and check if you have Xerces bundle installed. If so, try to uninstall it and restart failed bundle. My guess is - it will start to work. But what now. How to replace Xerces - it is like part of every web/xml related project. I have no answer for this.

I've checked CXF source code, and noticed that Spring bundles and versions are not in sync ( version part of the Karaf - referencing CXF Karaf repository ) ... so I would suspect this will be another land mine I will blindly step on.

But

when things are working, when Karaf is able to load ( over Aries ) bundle with Spring XML configuration -- it works really well and it is really easy to make it work. That is one of the biggest frustration, as it is such a nice platform, but one wrong JAR and all stops working ...


Kind Regards,
Miroslav



V V čet., 11. okt. 2018 ob 12:52 je oseba Miroslav Beranič <[hidden email]> napisala:
Hi all,

I found a solution.

To repeat/clarify first:
- I am using Karaf 4.2.2
- I am using "as much as I can" "built in" features
- I am using Spring 4.3 ( features from Karaf's spring-legacy repository/features )
- I am using Karaf's feature "aries-blueprint-spring" to get "Spring Framework XSD namespace" support ( http://www.springframework.org/schema/osgi ), part of the Aries project, file located at /aries/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-1.2.xsd, because of the implementation org.apache.aries.blueprint.spring.extender.SpringOsgiNamespaceHandler, one can reference XSD file as spring-osgi.xsd ( it is "renamed" to spring-osgi-1.2.xsd ).
- I am using bundle from ServiceMix Bundles org.apache.servicemix.bundles:org.apache.servicemix.bundles.spring-beans/4.3.18 to get Spring Framework 4.3 XSD files, one can also use http://www.springframework.org/schema/beans/spring-beans.xsd and will get http://www.springframework.org/schema/beans/spring-beans-4.3.xsd ( if bundle version 4.3 is the only one installed , it is in my  case ).
- I am not using spring-dm feature from Karaf's repository

Here, the fun part starts. As I said, it was all working ( one day ) and than next day ( when installed on new virtual dev box ) it stopped working throwing errors like:

11:09:19.614 ERROR [pool-20-thread-1] Unable to start blueprint container for bundle framework.service/5.0.1.SNAPSHOT
java.lang.RuntimeException: org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from URL location [bundle://90.0:0/META-INF/spring/mm-context.xml]
Offending resource: URL [file:/path/to/karaf-4.2.2/data/tmp/blueprint-spring-extender1091125880178019981.xml]; nested exception is org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from URL location [classpath:/META-INF/mm/spring/mm-dl-management-beans.xml]
Offending resource: URL [bundle://90.0:0/META-INF/spring/mm-context.xml]; nested exception is org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/osgi]
Offending resource: class path resource [META-INF/mm/spring/mm-dl-management-beans.xml]

    at org.apache.aries.blueprint.spring.BlueprintNamespaceHandler.parse(BlueprintNamespaceHandler.java:132) ~[?:?]
    at org.apache.aries.blueprint.parser.Parser.parseCustomElement(Parser.java:1369) ~[47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:427) ~[47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331) ~[47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351) [47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278) [47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:299) [47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintExtender.access$1100(BlueprintExtender.java:68) [47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintExtender$BlueprintContainerServiceImpl.createContainer(BlueprintExtender.java:617) [47:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.spring.extender.SpringOsgiExtension.start(SpringOsgiExtension.java:112) [49:org.apache.aries.blueprint.spring.extender:0.4.0]
    at org.apache.felix.utils.extender.AbstractExtender$1.run(AbstractExtender.java:265) [49:org.apache.aries.blueprint.spring.extender:0.


And even some times I got even more strange error:

12:13:12.969 ERROR [Blueprint Extender: 1] Unable to start blueprint container for bundle framework.service/5.0.1.SNAPSHOT
org.osgi.service.blueprint.container.ComponentDefinitionException: Unsupported node namespace:
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278) [111:org.apache.aries.blueprint.core:1.9.0]

( notice the "empty" namespace ... )


After all the strange things done, to make it work again, I've started vanilla project ... and it worked. As expected. Simple as putting one xml inside bundle class path /META-INF/spring/context.xml.

So, the fun part was -- I "wanted to clean up" config files and I moved XML files to /META-INF/mm/spring/*.xml and include/import them from context.xml.

And this was the issue. It turned out, Blueprint/Spring support will fly out of the window, when http://www.springframework.org/schema/osgi is used in a XML file being referenced / included / imported.

So to fix my issue, I have all the Spring XML files ( that have http://www.springframework.org/schema/osgi namespace ) stored inside folder /META-INF/spring/ and all other Spring-only namespaced files in other locations.

Did not have the time to look over the source code why is this so, but to me, this is strange implementation. This is also not "pointed out" in the documentation or so, so ... fun fun fun. Took me days too long to figure this out.


Kind Regards,
Miroslav



V V sre., 10. okt. 2018 ob 14:39 je oseba Jean-Baptiste Onofré <[hidden email]> napisala:
Afair spring-dm doesn't support spring 4.3 either. It's up to spring 4.2. so you have to install providing the target version.

Further more you have to install spring-dm or blueprint spring extension.

Regards
JB
Le 10 oct. 2018, à 15:34, "Miroslav Beranič" <[hidden email]> a écrit:
Hi both,

I thought I wrote too much and lost focus.

So, I already use spring-legacy repository, and I get spring-* 4.3.x. I already had all this working. I do not use spring-dm feature ( I see it is available, version 1.2.1, spring-dm and spring-dm-web, did not even notice it before ).

I am using aries-blueprint-spring from Karaf's repository.
    <feature name="aries-blueprint-spring">
        <feature>aries-blueprint</feature>
        <feature>spring</feature>
        <bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.spring/${aries.blueprint.spring.version}</bundle>
        <bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.spring.extender/${aries.blueprint.spring.extender.version}</bundle>
    </feature>

First I install Spring 4.3 from spring-legacy, next I install aries-blueprint-spring ( as if not in this order, Spring 5.0.x is installed ).
    <features name="spring-legacy-${project.version}"


To do "dry run". In practice this is "correct way" :
spring-4.3.x from repository spring-legacy and aries-blueprint-spring from repository spring and I should be all green, or?

Any idea what else could go wrong ... some other JMS/JPA/PAX/... dependency/feature to mix it up?

My biggest pain is -- as I had working setup, and now I can not make it work anymore. I've reverted my work and Karaf, no luck - either way.


Thanks for the directions.


Kind Regards,
Miroslav




V V sre., 10. okt. 2018 ob 14:13 je oseba Guillaume Nodet < [hidden email]> napisala:
You can also install the aries-blueprint-spring feature which should provide support for the spring namespaces.

Le mer. 10 oct. 2018 à 14:07, Jean-Baptiste Onofré < [hidden email]> a écrit :
Hi

It's because your are using spring-dm which is deprecated and works only with spring up to 4.

So you have to add the spring-legacy features repo and then you will have the spring-dm feature.

Regards
JB
Le 10 oct. 2018, à 15:04, "Miroslav Beranič" < [hidden email]> a écrit:
Hi all,

I've read some messages in this mailing list ( last I found was in August 2018 ), but I think, I have something different scenario.

So, up until today ( when I was doing clean environment setup ) I was able to use define Spring Beans using XML ( as I am porting application, this is like top feature ), but now - out of the blue, I've started to get errors on deployment:

12:13:12.912 INFO [pool-33-thread-1] Generated blueprint for bundle framework.service/5.0.1.SNAPSHOT at /path/to/assemblies/apache-karaf/target/assembly/data/tmp/blueprint-spring-extender1831035315356717600.xml
12:13:12.917 INFO [pool-33-thread-1] Bundle framework.service/5.0.1.SNAPSHOT is waiting for namespace handlers [ http://www.springframework.org/schema/osgi]

12:13:12.895 INFO [features-3-thread-1]   org.apache.aries.blueprint.spring.extender/0.4.0
12:13:12.935 WARN [Blueprint Extender: 1] No URL is defined for schema http://www.springframework.org/schema/osgi. This schema will not be validated
12:13:12.969 ERROR [Blueprint Extender: 1] Unable to start blueprint container for bundle framework.service/5.0.1.SNAPSHOT
org.osgi.service.blueprint.container.ComponentDefinitionException: Unsupported node namespace:
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331) ~[111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at org.apache.aries.blueprint.container.ExecutorServiceWrapper.run(ExecutorServiceWrapper.java:106) [111:org.apache.aries.blueprint.core:1.9.0]
    at org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:45) [111:org.apache.aries.blueprint.core:1.9.0]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]

So, has something changed about Spring ( Spring DM ) from Karaf's point? I went over GIT commits ( for Karaf 4.2.2, last few weeks ), but did not find anything regarding Spring. I am using Spring 4.3.x ( from Karaf features ).

I have spring-beans.xml inside /META-INF/spring/ folder, and I used http://www.springframework.org/schema/osgi namespace to "import" osgi:reference -- and this all worked like a charm.

Now I get this error and no way to find any solution. I "kind of" gave up ( as I read JB's comments - why not use ( only ) Blueprint ), so I gave it a try. But than I was starting getting even more strange errors,
for example Blueprint failed to set property defined in parent class, or create instance that takes Map as input into class constructor - as I failed to find matching property descriptor or class constructor.

Than I went back to original question ... what has changed, that http://www.springframework.org/schema/osgi has stopped working ( as far as I know, spring-dm is even older ( based on the mailing messages I've read ) ),
so I've uses aries-blueprint-spring.

What am I missing?

Kind Regards,
Miroslav



--
------------------------
Guillaume Nodet



--
Miroslav Beranič
MIBESIS
+386(0)40/814-843
[hidden email]
http://www.mibesis.si


--
Miroslav Beranič
MIBESIS
+386(0)40/814-843
[hidden email]
http://www.mibesis.si


--
Miroslav Beranič
MIBESIS
+386(0)40/814-843
[hidden email]
http://www.mibesis.si
Reply | Threaded
Open this post in threaded view
|

Re: No URL is defined for schema http://www.springframework.org/schema/osgi.

jbonofre
Hi,

to avoid such problem, you can use and prepare the boot features. I will
avoid some refresh and stick a init state.

IMHO, it should help.

Regards
JB

On 12/10/2018 17:05, Miroslav Beranič wrote:

> Hi all,
>
> not quite done yet.
>
> So new day, new problems. After another round of try/error -- it worked,
> and did not work next day.
>
> Even "one xml deploy" bundle was not working. Now, I am more focused
> into the CXF project.
>
> I am quite sure, this "works today, does not work tomorrow" is due to
> bundle deploy order. I've found out, that there are multiple Xerces
> instances flying around. I had one, for some legacy SOAP client
> generated from WSDL using Axis 1.4.
>
> It had Xerces, after a lot of redeploys I've figured out that when
> Xerces bundle is deployed Karaf is not able to resolve/deploy bundle
> with Spring XML configuration.
>
> I am getting
> "org.osgi.service.blueprint.container.ComponentDefinitionException:
> Unsupported node namespace:" ( notice empty namespace ). When I do
> uninstall of the Xerces bundle -- and restart Spring XML configuration
> bundle, it works. Repeat Xerces bundle install, Spring XML configuration
> bundle fails to load.
>
> When cxf feature is installed bundle:
> 313 │ Active   │  30 │ 2.11.0.1                           │
> org.apache.servicemix.bundles.xerces
> is installed. I've exported bundles for the feature cxf and JAR file
> name is: org.apache.servicemix.bundles.xerces-2.11.0_1.jar
>
> This is also in line with my first voodoo , when I was asking if it is
> possible that some dependency makes a mess. I would say, this is the
> "main problem".
>
> Other issue was with ActiveMQ and Camel, and "class cast exceptions" for
> Spring's classes, also some nice pitfalls there ( all solved with
> correct bundle deploy order ).
>
> What I've notices is - order of the feature/bundle loading is the key
> and it is not easy. One "innocent" dependency and whole tree of
> un-wanted bundles is put into the Karaf.
>
>
> I would really really like to know, am I doing so much something extra
> and no one else has this issues? As all I am doing is loading bundle
> with spring xml configuration and SOAP server ( with CXF ) and all stops
> working. It is hard to believe this is "only my problem".
>
> The more likely thing is : I am doing all wrong. Also if this is true, I
> would really like to know what? How can it be, that if I load Apache CXF
> feature and in another bundle Spring XML Configuration, one "overrides"
> XML/XSD namespace resolution. To me this is interesting as I would
> really like to know, how is this connected and how this is even possible.
>
>
> So today's finding is: If you have errors like: No URL is defined for
> schema http://www.springframework.org/schema/osgi,
> org.osgi.service.blueprint.container.ComponentDefinitionException:
> Unsupported node namespace:, go and check if you have Xerces bundle
> installed. If so, try to uninstall it and restart failed bundle. My
> guess is - it will start to work. But what now. How to replace Xerces -
> it is like part of every web/xml related project. I have no answer for this.
>
> I've checked CXF source code, and noticed that Spring bundles and
> versions are not in sync ( version part of the Karaf - referencing CXF
> Karaf repository ) ... so I would suspect this will be another land mine
> I will blindly step on.
>
> But
>
> when things are working, when Karaf is able to load ( over Aries )
> bundle with Spring XML configuration -- it works really well and it is
> really easy to make it work. That is one of the biggest frustration, as
> it is such a nice platform, but one wrong JAR and all stops working ...
>
>
> Kind Regards,
> Miroslav
>
>
>
> V V čet., 11. okt. 2018 ob 12:52 je oseba Miroslav Beranič
> <[hidden email] <mailto:[hidden email]>> napisala:
>
>     Hi all,
>
>     I found a solution.
>
>     To repeat/clarify first:
>     - I am using Karaf 4.2.2
>     - I am using "as much as I can" "built in" features
>     - I am using Spring 4.3 ( features from Karaf's spring-legacy
>     repository/features )
>     - I am using Karaf's feature "aries-blueprint-spring" to get "Spring
>     Framework XSD namespace" support (
>     http://www.springframework.org/schema/osgi ), part of the Aries
>     project, file located at
>     /aries/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-1.2.xsd,
>     because of the implementation
>     org.apache.aries.blueprint.spring.extender.SpringOsgiNamespaceHandler,
>     one can reference XSD file as spring-osgi.xsd ( it is "renamed" to
>     spring-osgi-1.2.xsd ).
>     - I am using bundle from ServiceMix Bundles
>     org.apache.servicemix.bundles:org.apache.servicemix.bundles.spring-beans/4.3.18
>     to get Spring Framework 4.3 XSD files, one can also use
>     http://www.springframework.org/schema/beans/spring-beans.xsd and
>     will get
>     http://www.springframework.org/schema/beans/spring-beans-4.3.xsd (
>     if bundle version 4.3 is the only one installed , it is in my  case ).
>     - I am not using spring-dm feature from Karaf's repository
>
>     Here, the fun part starts. As I said, it was all working ( one day )
>     and than next day ( when installed on new virtual dev box ) it
>     stopped working throwing errors like:
>
>     11:09:19.614 ERROR [pool-20-thread-1] Unable to start blueprint
>     container for bundle framework.service/5.0.1.SNAPSHOT
>     java.lang.RuntimeException:
>     org.springframework.beans.factory.parsing.BeanDefinitionParsingException:
>     Configuration problem: Failed to import bean definitions from URL
>     location [bundle://90.0:0/META-INF/spring/mm-context.xml]
>     Offending resource: URL
>     [file:/path/to/karaf-4.2.2/data/tmp/blueprint-spring-extender1091125880178019981.xml];
>     nested exception is
>     org.springframework.beans.factory.parsing.BeanDefinitionParsingException:
>     Configuration problem: Failed to import bean definitions from URL
>     location [classpath:/META-INF/mm/spring/mm-dl-management-beans.xml]
>     Offending resource: URL
>     [bundle://90.0:0/META-INF/spring/mm-context.xml]; nested exception
>     is
>     org.springframework.beans.factory.parsing.BeanDefinitionParsingException:
>     Configuration problem: Unable to locate Spring NamespaceHandler for
>     XML schema namespace [http://www.springframework.org/schema/osgi]
>     Offending resource: class path resource
>     [META-INF/mm/spring/mm-dl-management-beans.xml]
>
>         at
>     org.apache.aries.blueprint.spring.BlueprintNamespaceHandler.parse(BlueprintNamespaceHandler.java:132)
>     ~[?:?]
>         at
>     org.apache.aries.blueprint.parser.Parser.parseCustomElement(Parser.java:1369)
>     ~[47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:427)
>     ~[47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331)
>     ~[47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351)
>     [47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278)
>     [47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:299)
>     [47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintExtender.access$1100(BlueprintExtender.java:68)
>     [47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintExtender$BlueprintContainerServiceImpl.createContainer(BlueprintExtender.java:617)
>     [47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.spring.extender.SpringOsgiExtension.start(SpringOsgiExtension.java:112)
>     [49:org.apache.aries.blueprint.spring.extender:0.4.0]
>         at
>     org.apache.felix.utils.extender.AbstractExtender$1.run(AbstractExtender.java:265)
>     [49:org.apache.aries.blueprint.spring.extender:0.
>
>
>     And even some times I got even more strange error:
>
>     12:13:12.969 ERROR [Blueprint Extender: 1] Unable to start blueprint
>     container for bundle framework.service/5.0.1.SNAPSHOT
>     org.osgi.service.blueprint.container.ComponentDefinitionException:
>     Unsupported node namespace:
>         at
>     org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386)
>     ~[111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374)
>     ~[111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361)
>     ~[111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340)
>     ~[111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403)
>     ~[111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331)
>     ~[111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351)
>     [111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278)
>     [111:org.apache.aries.blueprint.core:1.9.0]
>
>     ( notice the "empty" namespace ... )
>
>
>     After all the strange things done, to make it work again, I've
>     started vanilla project ... and it worked. As expected. Simple as
>     putting one xml inside bundle class path /META-INF/spring/context.xml.
>
>     So, the fun part was -- I "wanted to clean up" config files and I
>     moved XML files to /META-INF/mm/spring/*.xml and include/import them
>     from context.xml.
>
>     And this was the issue. It turned out, Blueprint/Spring support will
>     fly out of the window, when
>     http://www.springframework.org/schema/osgi is used in a XML file
>     being referenced / included / imported.
>
>     So to fix my issue, I have all the Spring XML files ( that have
>     http://www.springframework.org/schema/osgi namespace ) stored inside
>     folder /META-INF/spring/ and all other Spring-only namespaced files
>     in other locations.
>
>     Did not have the time to look over the source code why is this so,
>     but to me, this is strange implementation. This is also not "pointed
>     out" in the documentation or so, so ... fun fun fun. Took me days
>     too long to figure this out.
>
>
>     Kind Regards,
>     Miroslav
>
>
>
>     V V sre., 10. okt. 2018 ob 14:39 je oseba Jean-Baptiste Onofré
>     <[hidden email] <mailto:[hidden email]>> napisala:
>
>         Afair spring-dm doesn't support spring 4.3 either. It's up to
>         spring 4.2. so you have to install providing the target version.
>
>         Further more you have to install spring-dm or blueprint spring
>         extension.
>
>         Regards
>         JB
>         Le 10 oct. 2018, à 15:34, "Miroslav Beranič"
>         <[hidden email]
>         <mailto:[hidden email]>> a écrit:
>
>             Hi both,
>
>             I thought I wrote too much and lost focus.
>
>             So, I already use spring-legacy repository, and I get
>             spring-* 4.3.x. I already had all this working. I do not use
>             spring-dm feature ( I see it is available, version 1.2.1,
>             spring-dm and spring-dm-web, did not even notice it before ).
>
>             I am using aries-blueprint-spring from Karaf's repository.
>                 <feature name="aries-blueprint-spring">
>                     <feature>aries-blueprint</feature>
>                     <feature>spring</feature>
>                    
>             <bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.spring/${aries.blueprint.spring.version}</bundle>
>
>                    
>             <bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.spring.extender/${aries.blueprint.spring.extender.version}</bundle>
>
>                 </feature>
>
>             First I install Spring 4.3 from spring-legacy, next I
>             install aries-blueprint-spring ( as if not in this order,
>             Spring 5.0.x is installed ).
>                 <features name="spring-legacy-${project.version}"
>
>
>             To do "dry run". In practice this is "correct way" :
>             spring-4.3.x from repository spring-legacy and
>             aries-blueprint-spring from repository spring and I should
>             be all green, or?
>
>             Any idea what else could go wrong ... some other
>             JMS/JPA/PAX/... dependency/feature to mix it up?
>
>             My biggest pain is -- as I had working setup, and now I can
>             not make it work anymore. I've reverted my work and Karaf,
>             no luck - either way.
>
>
>             Thanks for the directions.
>
>
>             Kind Regards,
>             Miroslav
>
>
>
>
>             V V sre., 10. okt. 2018 ob 14:13 je oseba Guillaume Nodet <
>             [hidden email] <mailto:[hidden email]>> napisala:
>
>                 You can also install the aries-blueprint-spring feature
>                 which should provide support for the spring namespaces.
>
>                 Le mer. 10 oct. 2018 à 14:07, Jean-Baptiste Onofré <
>                 [hidden email] <mailto:[hidden email]>> a écrit :
>
>                     Hi
>
>                     It's because your are using spring-dm which is
>                     deprecated and works only with spring up to 4.
>
>                     So you have to add the spring-legacy features repo
>                     and then you will have the spring-dm feature.
>
>                     Regards
>                     JB
>                     Le 10 oct. 2018, à 15:04, "Miroslav Beranič" <
>                     [hidden email]
>                     <mailto:[hidden email]>> a écrit:
>
>                         Hi all,
>
>                         I've read some messages in this mailing list (
>                         last I found was in August 2018 ), but I think,
>                         I have something different scenario.
>
>                         So, up until today ( when I was doing clean
>                         environment setup ) I was able to use define
>                         Spring Beans using XML ( as I am porting
>                         application, this is like top feature ), but now
>                         - out of the blue, I've started to get errors on
>                         deployment:
>
>                         12:13:12.912 INFO [pool-33-thread-1] Generated
>                         blueprint for bundle
>                         framework.service/5.0.1.SNAPSHOT at
>                         /path/to/assemblies/apache-karaf/target/assembly/data/tmp/blueprint-spring-extender1831035315356717600.xml
>
>                         12:13:12.917 INFO [pool-33-thread-1] Bundle
>                         framework.service/5.0.1.SNAPSHOT is waiting for
>                         namespace handlers [
>                         http://www.springframework.org/schema/osgi]
>
>                         12:13:12.895 INFO [features-3-thread-1]  
>                         org.apache.aries.blueprint.spring.extender/0.4.0
>                         12:13:12.935 WARN [Blueprint Extender: 1] No URL
>                         is defined for schema
>                         http://www.springframework.org/schema/osgi. This
>                         schema will not be validated
>                         12:13:12.969 ERROR [Blueprint Extender: 1]
>                         Unable to start blueprint container for bundle
>                         framework.service/5.0.1.SNAPSHOT
>                         org.osgi.service.blueprint.container.ComponentDefinitionException:
>                         Unsupported node namespace:
>                             at
>                         org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386)
>                         ~[111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374)
>                         ~[111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361)
>                         ~[111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340)
>                         ~[111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403)
>                         ~[111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331)
>                         ~[111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351)
>                         [111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278)
>                         [111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>                         [?:?]
>                             at
>                         java.util.concurrent.FutureTask.run(FutureTask.java:266)
>                         [?:?]
>                             at
>                         org.apache.aries.blueprint.container.ExecutorServiceWrapper.run(ExecutorServiceWrapper.java:106)
>                         [111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:45)
>                         [111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>                         [?:?]
>                             at
>                         java.util.concurrent.FutureTask.run(FutureTask.java:266)
>                         [?:?]
>                             at
>                         java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
>                         [?:?]
>                             at
>                         java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
>                         [?:?]
>                             at
>                         java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>                         [?:?]
>                             at
>                         java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>                         [?:?]
>                             at java.lang.Thread.run(Thread.java:748) [?:?]
>
>                         So, has something changed about Spring ( Spring
>                         DM ) from Karaf's point? I went over GIT commits
>                         ( for Karaf 4.2.2, last few weeks ), but did not
>                         find anything regarding Spring. I am using
>                         Spring 4.3.x ( from Karaf features ).
>
>                         I have spring-beans.xml inside /META-INF/spring/
>                         folder, and I used
>                         http://www.springframework.org/schema/osgi
>                         namespace to "import" osgi:reference -- and this
>                         all worked like a charm.
>
>                         Now I get this error and no way to find any
>                         solution. I "kind of" gave up ( as I read JB's
>                         comments - why not use ( only ) Blueprint ), so
>                         I gave it a try. But than I was starting getting
>                         even more strange errors,
>                         for example Blueprint failed to set property
>                         defined in parent class, or create instance that
>                         takes Map as input into class constructor - as I
>                         failed to find matching property descriptor or
>                         class constructor.
>
>                         Than I went back to original question ... what
>                         has changed, that
>                         http://www.springframework.org/schema/osgi has
>                         stopped working ( as far as I know, spring-dm is
>                         even older ( based on the mailing messages I've
>                         read ) ),
>                         so I've uses aries-blueprint-spring.
>
>                         What am I missing?
>
>                         Kind Regards,
>                         Miroslav
>
>
>
>                 --
>                 ------------------------
>                 Guillaume Nodet
>
>
>
>             --
>             Miroslav Beranič
>             MIBESIS
>             +386(0)40/814-843
>             [hidden email]
>             <mailto:[hidden email]>
>             http://www.mibesis.si 
>
>
>
>     --
>     Miroslav Beranič
>     MIBESIS
>     +386(0)40/814-843
>     [hidden email] <mailto:[hidden email]>
>     http://www.mibesis.si
>
>
>
> --
> Miroslav Beranič
> MIBESIS
> +386(0)40/814-843
> [hidden email] <mailto:[hidden email]>
> http://www.mibesis.si

--
Jean-Baptiste Onofré
[hidden email]
http://blog.nanthrax.net
Talend - http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: No URL is defined for schema http://www.springframework.org/schema/osgi.

Miroslav Beranič
Hi JB,

if I understood correct, I've looked up, how to install features at boot time. Is this what you were saying?

So, what I did was: updated etc/org.apache.karaf.features.repos.cfg ( not really related, but added by feature file here ), and updated etc/org.apache.karaf.features.cfg to install cxf ( added at the end of featuresBoot property ):
    cxf/3.2.6, \
    cxf-jaxrs-cdi/3.2.6

after Karaf startup I can see the CXF with all the dependencies was installed. But.

When I installed the JPA/Hibernate feature ( part of my project ), I get following error:

.
.
.

07:40:50.588 INFO [features-3-thread-1]   org.apache.servicemix.bundles.dom4j/1.6.1.5
07:40:50.590 INFO [features-3-thread-1]   org.apache.httpcomponents.httpclient/4.5.2
07:40:50.593 ERROR [Blueprint Extender: 3] Unable to start blueprint container for bundle framework.service/5.0.1.SNAPSHOT
org.osgi.service.blueprint.container.ComponentDefinitionException: Unsupported node namespace:

.
.
.

07:40:50.607 INFO [features-3-thread-1]   org.hibernate.core/5.2.9.Final
07:40:50.641 INFO [features-3-thread-1]   org.hibernate.osgi/5.2.9.Final
07:40:50.718 INFO [features-3-thread-1] Found provider for mm org.hibernate.jpa.HibernatePersistenceProvider
07:40:50.753 INFO [features-3-thread-1] HHH000204: Processing PersistenceUnitInfo [
    name: mm
    ...]
07:40:50.839 INFO [features-3-thread-1] HHH000412: Hibernate Core {5.2.9.Final}
07:40:50.842 INFO [features-3-thread-1] HHH000206: hibernate.properties not found
07:40:50.902 INFO [features-3-thread-1] HCANN000001: Hibernate Commons Annotations {5.0.1.Final}
07:40:52.418 ERROR [features-3-thread-1] Bundle framework.persistence [216] EventDispatcher: Error during dispatch. (java.lang.NoSuchMethodError: org.codehaus.stax2.ri.EmptyIterator.getInstance()Lorg/codehaus/stax2/ri/EmptyIterator;)
java.lang.NoSuchMethodError: org.codehaus.stax2.ri.EmptyIterator.getInstance()Lorg/codehaus/stax2/ri/EmptyIterator;

.
.
.

So now not even JPA/Hibernate is not working any more. I must be doing something wrong.

I guess "java.lang.NoSuchMethodError" is saying I did not compile class with the same dependency JAR as I use it in the runtime?


Well, this does not look good. Darn.


Kind Regards,
Miroslav



V V sob., 13. okt. 2018 ob 07:04 je oseba Jean-Baptiste Onofré <[hidden email]> napisala:
Hi,

to avoid such problem, you can use and prepare the boot features. I will
avoid some refresh and stick a init state.

IMHO, it should help.

Regards
JB

On 12/10/2018 17:05, Miroslav Beranič wrote:
> Hi all,
>
> not quite done yet.
>
> So new day, new problems. After another round of try/error -- it worked,
> and did not work next day.
>
> Even "one xml deploy" bundle was not working. Now, I am more focused
> into the CXF project.
>
> I am quite sure, this "works today, does not work tomorrow" is due to
> bundle deploy order. I've found out, that there are multiple Xerces
> instances flying around. I had one, for some legacy SOAP client
> generated from WSDL using Axis 1.4.
>
> It had Xerces, after a lot of redeploys I've figured out that when
> Xerces bundle is deployed Karaf is not able to resolve/deploy bundle
> with Spring XML configuration.
>
> I am getting
> "org.osgi.service.blueprint.container.ComponentDefinitionException:
> Unsupported node namespace:" ( notice empty namespace ). When I do
> uninstall of the Xerces bundle -- and restart Spring XML configuration
> bundle, it works. Repeat Xerces bundle install, Spring XML configuration
> bundle fails to load.
>
> When cxf feature is installed bundle:
> 313 │ Active   │  30 │ 2.11.0.1                           │
> org.apache.servicemix.bundles.xerces
> is installed. I've exported bundles for the feature cxf and JAR file
> name is: org.apache.servicemix.bundles.xerces-2.11.0_1.jar
>
> This is also in line with my first voodoo , when I was asking if it is
> possible that some dependency makes a mess. I would say, this is the
> "main problem".
>
> Other issue was with ActiveMQ and Camel, and "class cast exceptions" for
> Spring's classes, also some nice pitfalls there ( all solved with
> correct bundle deploy order ).
>
> What I've notices is - order of the feature/bundle loading is the key
> and it is not easy. One "innocent" dependency and whole tree of
> un-wanted bundles is put into the Karaf.
>
>
> I would really really like to know, am I doing so much something extra
> and no one else has this issues? As all I am doing is loading bundle
> with spring xml configuration and SOAP server ( with CXF ) and all stops
> working. It is hard to believe this is "only my problem".
>
> The more likely thing is : I am doing all wrong. Also if this is true, I
> would really like to know what? How can it be, that if I load Apache CXF
> feature and in another bundle Spring XML Configuration, one "overrides"
> XML/XSD namespace resolution. To me this is interesting as I would
> really like to know, how is this connected and how this is even possible.
>
>
> So today's finding is: If you have errors like: No URL is defined for
> schema http://www.springframework.org/schema/osgi,
> org.osgi.service.blueprint.container.ComponentDefinitionException:
> Unsupported node namespace:, go and check if you have Xerces bundle
> installed. If so, try to uninstall it and restart failed bundle. My
> guess is - it will start to work. But what now. How to replace Xerces -
> it is like part of every web/xml related project. I have no answer for this.
>
> I've checked CXF source code, and noticed that Spring bundles and
> versions are not in sync ( version part of the Karaf - referencing CXF
> Karaf repository ) ... so I would suspect this will be another land mine
> I will blindly step on.
>
> But
>
> when things are working, when Karaf is able to load ( over Aries )
> bundle with Spring XML configuration -- it works really well and it is
> really easy to make it work. That is one of the biggest frustration, as
> it is such a nice platform, but one wrong JAR and all stops working ...
>
>
> Kind Regards,
> Miroslav
>
>
>
> V V čet., 11. okt. 2018 ob 12:52 je oseba Miroslav Beranič
> <[hidden email] <mailto:[hidden email]>> napisala:
>
>     Hi all,
>
>     I found a solution.
>
>     To repeat/clarify first:
>     - I am using Karaf 4.2.2
>     - I am using "as much as I can" "built in" features
>     - I am using Spring 4.3 ( features from Karaf's spring-legacy
>     repository/features )
>     - I am using Karaf's feature "aries-blueprint-spring" to get "Spring
>     Framework XSD namespace" support (
>     http://www.springframework.org/schema/osgi ), part of the Aries
>     project, file located at
>     /aries/blueprint/blueprint-spring-extender/src/main/resources/org.apache.aries.blueprint.spring.extender/spring-osgi-1.2.xsd,
>     because of the implementation
>     org.apache.aries.blueprint.spring.extender.SpringOsgiNamespaceHandler,
>     one can reference XSD file as spring-osgi.xsd ( it is "renamed" to
>     spring-osgi-1.2.xsd ).
>     - I am using bundle from ServiceMix Bundles
>     org.apache.servicemix.bundles:org.apache.servicemix.bundles.spring-beans/4.3.18
>     to get Spring Framework 4.3 XSD files, one can also use
>     http://www.springframework.org/schema/beans/spring-beans.xsd and
>     will get
>     http://www.springframework.org/schema/beans/spring-beans-4.3.xsd (
>     if bundle version 4.3 is the only one installed , it is in my  case ).
>     - I am not using spring-dm feature from Karaf's repository
>
>     Here, the fun part starts. As I said, it was all working ( one day )
>     and than next day ( when installed on new virtual dev box ) it
>     stopped working throwing errors like:
>
>     11:09:19.614 ERROR [pool-20-thread-1] Unable to start blueprint
>     container for bundle framework.service/5.0.1.SNAPSHOT
>     java.lang.RuntimeException:
>     org.springframework.beans.factory.parsing.BeanDefinitionParsingException:
>     Configuration problem: Failed to import bean definitions from URL
>     location [bundle://90.0:0/META-INF/spring/mm-context.xml]
>     Offending resource: URL
>     [file:/path/to/karaf-4.2.2/data/tmp/blueprint-spring-extender1091125880178019981.xml];
>     nested exception is
>     org.springframework.beans.factory.parsing.BeanDefinitionParsingException:
>     Configuration problem: Failed to import bean definitions from URL
>     location [classpath:/META-INF/mm/spring/mm-dl-management-beans.xml]
>     Offending resource: URL
>     [bundle://90.0:0/META-INF/spring/mm-context.xml]; nested exception
>     is
>     org.springframework.beans.factory.parsing.BeanDefinitionParsingException:
>     Configuration problem: Unable to locate Spring NamespaceHandler for
>     XML schema namespace [http://www.springframework.org/schema/osgi]
>     Offending resource: class path resource
>     [META-INF/mm/spring/mm-dl-management-beans.xml]
>
>         at
>     org.apache.aries.blueprint.spring.BlueprintNamespaceHandler.parse(BlueprintNamespaceHandler.java:132)
>     ~[?:?]
>         at
>     org.apache.aries.blueprint.parser.Parser.parseCustomElement(Parser.java:1369)
>     ~[47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:427)
>     ~[47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331)
>     ~[47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351)
>     [47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278)
>     [47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:299)
>     [47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintExtender.access$1100(BlueprintExtender.java:68)
>     [47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintExtender$BlueprintContainerServiceImpl.createContainer(BlueprintExtender.java:617)
>     [47:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.spring.extender.SpringOsgiExtension.start(SpringOsgiExtension.java:112)
>     [49:org.apache.aries.blueprint.spring.extender:0.4.0]
>         at
>     org.apache.felix.utils.extender.AbstractExtender$1.run(AbstractExtender.java:265)
>     [49:org.apache.aries.blueprint.spring.extender:0.
>
>
>     And even some times I got even more strange error:
>
>     12:13:12.969 ERROR [Blueprint Extender: 1] Unable to start blueprint
>     container for bundle framework.service/5.0.1.SNAPSHOT
>     org.osgi.service.blueprint.container.ComponentDefinitionException:
>     Unsupported node namespace:
>         at
>     org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386)
>     ~[111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374)
>     ~[111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361)
>     ~[111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340)
>     ~[111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403)
>     ~[111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331)
>     ~[111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351)
>     [111:org.apache.aries.blueprint.core:1.9.0]
>         at
>     org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278)
>     [111:org.apache.aries.blueprint.core:1.9.0]
>
>     ( notice the "empty" namespace ... )
>
>
>     After all the strange things done, to make it work again, I've
>     started vanilla project ... and it worked. As expected. Simple as
>     putting one xml inside bundle class path /META-INF/spring/context.xml.
>
>     So, the fun part was -- I "wanted to clean up" config files and I
>     moved XML files to /META-INF/mm/spring/*.xml and include/import them
>     from context.xml.
>
>     And this was the issue. It turned out, Blueprint/Spring support will
>     fly out of the window, when
>     http://www.springframework.org/schema/osgi is used in a XML file
>     being referenced / included / imported.
>
>     So to fix my issue, I have all the Spring XML files ( that have
>     http://www.springframework.org/schema/osgi namespace ) stored inside
>     folder /META-INF/spring/ and all other Spring-only namespaced files
>     in other locations.
>
>     Did not have the time to look over the source code why is this so,
>     but to me, this is strange implementation. This is also not "pointed
>     out" in the documentation or so, so ... fun fun fun. Took me days
>     too long to figure this out.
>
>
>     Kind Regards,
>     Miroslav
>
>
>
>     V V sre., 10. okt. 2018 ob 14:39 je oseba Jean-Baptiste Onofré
>     <[hidden email] <mailto:[hidden email]>> napisala:
>
>         Afair spring-dm doesn't support spring 4.3 either. It's up to
>         spring 4.2. so you have to install providing the target version.
>
>         Further more you have to install spring-dm or blueprint spring
>         extension.
>
>         Regards
>         JB
>         Le 10 oct. 2018, à 15:34, "Miroslav Beranič"
>         <[hidden email]
>         <mailto:[hidden email]>> a écrit:
>
>             Hi both,
>
>             I thought I wrote too much and lost focus.
>
>             So, I already use spring-legacy repository, and I get
>             spring-* 4.3.x. I already had all this working. I do not use
>             spring-dm feature ( I see it is available, version 1.2.1,
>             spring-dm and spring-dm-web, did not even notice it before ).
>
>             I am using aries-blueprint-spring from Karaf's repository.
>                 <feature name="aries-blueprint-spring">
>                     <feature>aries-blueprint</feature>
>                     <feature>spring</feature>
>                    
>             <bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.spring/${aries.blueprint.spring.version}</bundle>
>
>                    
>             <bundle>mvn:org.apache.aries.blueprint/org.apache.aries.blueprint.spring.extender/${aries.blueprint.spring.extender.version}</bundle>
>
>                 </feature>
>
>             First I install Spring 4.3 from spring-legacy, next I
>             install aries-blueprint-spring ( as if not in this order,
>             Spring 5.0.x is installed ).
>                 <features name="spring-legacy-${project.version}"
>
>
>             To do "dry run". In practice this is "correct way" :
>             spring-4.3.x from repository spring-legacy and
>             aries-blueprint-spring from repository spring and I should
>             be all green, or?
>
>             Any idea what else could go wrong ... some other
>             JMS/JPA/PAX/... dependency/feature to mix it up?
>
>             My biggest pain is -- as I had working setup, and now I can
>             not make it work anymore. I've reverted my work and Karaf,
>             no luck - either way.
>
>
>             Thanks for the directions.
>
>
>             Kind Regards,
>             Miroslav
>
>
>
>
>             V V sre., 10. okt. 2018 ob 14:13 je oseba Guillaume Nodet <
>             [hidden email] <mailto:[hidden email]>> napisala:
>
>                 You can also install the aries-blueprint-spring feature
>                 which should provide support for the spring namespaces.
>
>                 Le mer. 10 oct. 2018 à 14:07, Jean-Baptiste Onofré <
>                 [hidden email] <mailto:[hidden email]>> a écrit :
>
>                     Hi
>
>                     It's because your are using spring-dm which is
>                     deprecated and works only with spring up to 4.
>
>                     So you have to add the spring-legacy features repo
>                     and then you will have the spring-dm feature.
>
>                     Regards
>                     JB
>                     Le 10 oct. 2018, à 15:04, "Miroslav Beranič" <
>                     [hidden email]
>                     <mailto:[hidden email]>> a écrit:
>
>                         Hi all,
>
>                         I've read some messages in this mailing list (
>                         last I found was in August 2018 ), but I think,
>                         I have something different scenario.
>
>                         So, up until today ( when I was doing clean
>                         environment setup ) I was able to use define
>                         Spring Beans using XML ( as I am porting
>                         application, this is like top feature ), but now
>                         - out of the blue, I've started to get errors on
>                         deployment:
>
>                         12:13:12.912 INFO [pool-33-thread-1] Generated
>                         blueprint for bundle
>                         framework.service/5.0.1.SNAPSHOT at
>                         /path/to/assemblies/apache-karaf/target/assembly/data/tmp/blueprint-spring-extender1831035315356717600.xml
>
>                         12:13:12.917 INFO [pool-33-thread-1] Bundle
>                         framework.service/5.0.1.SNAPSHOT is waiting for
>                         namespace handlers [
>                         http://www.springframework.org/schema/osgi]
>
>                         12:13:12.895 INFO [features-3-thread-1]  
>                         org.apache.aries.blueprint.spring.extender/0.4.0
>                         12:13:12.935 WARN [Blueprint Extender: 1] No URL
>                         is defined for schema
>                         http://www.springframework.org/schema/osgi. This
>                         schema will not be validated
>                         12:13:12.969 ERROR [Blueprint Extender: 1]
>                         Unable to start blueprint container for bundle
>                         framework.service/5.0.1.SNAPSHOT
>                         org.osgi.service.blueprint.container.ComponentDefinitionException:
>                         Unsupported node namespace:
>                             at
>                         org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1386)
>                         ~[111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.parser.Parser.getNamespaceHandler(Parser.java:1374)
>                         ~[111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.parser.Parser.decorateCustomNode(Parser.java:1361)
>                         ~[111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.parser.Parser.handleCustomAttributes(Parser.java:1340)
>                         ~[111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.parser.Parser.loadComponents(Parser.java:403)
>                         ~[111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.parser.Parser.populate(Parser.java:331)
>                         ~[111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:351)
>                         [111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:278)
>                         [111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>                         [?:?]
>                             at
>                         java.util.concurrent.FutureTask.run(FutureTask.java:266)
>                         [?:?]
>                             at
>                         org.apache.aries.blueprint.container.ExecutorServiceWrapper.run(ExecutorServiceWrapper.java:106)
>                         [111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:45)
>                         [111:org.apache.aries.blueprint.core:1.9.0]
>                             at
>                         java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>                         [?:?]
>                             at
>                         java.util.concurrent.FutureTask.run(FutureTask.java:266)
>                         [?:?]
>                             at
>                         java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
>                         [?:?]
>                             at
>                         java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
>                         [?:?]
>                             at
>                         java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>                         [?:?]
>                             at
>                         java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>                         [?:?]
>                             at java.lang.Thread.run(Thread.java:748) [?:?]
>
>                         So, has something changed about Spring ( Spring
>                         DM ) from Karaf's point? I went over GIT commits
>                         ( for Karaf 4.2.2, last few weeks ), but did not
>                         find anything regarding Spring. I am using
>                         Spring 4.3.x ( from Karaf features ).
>
>                         I have spring-beans.xml inside /META-INF/spring/
>                         folder, and I used
>                         http://www.springframework.org/schema/osgi
>                         namespace to "import" osgi:reference -- and this
>                         all worked like a charm.
>
>                         Now I get this error and no way to find any
>                         solution. I "kind of" gave up ( as I read JB's
>                         comments - why not use ( only ) Blueprint ), so
>                         I gave it a try. But than I was starting getting
>                         even more strange errors,
>                         for example Blueprint failed to set property
>                         defined in parent class, or create instance that
>                         takes Map as input into class constructor - as I
>                         failed to find matching property descriptor or
>                         class constructor.
>
>                         Than I went back to original question ... what
>                         has changed, that
>                         http://www.springframework.org/schema/osgi has
>                         stopped working ( as far as I know, spring-dm is
>                         even older ( based on the mailing messages I've
>                         read ) ),
>                         so I've uses aries-blueprint-spring.
>
>                         What am I missing?
>
>                         Kind Regards,
>                         Miroslav
>
>
>
>                 --
>                 ------------------------
>                 Guillaume Nodet
>
>
>
>             --
>             Miroslav Beranič
>             MIBESIS
>             +386(0)40/814-843
>             [hidden email]
>             <mailto:[hidden email]>
>             http://www.mibesis.si
>
>
>
>     --
>     Miroslav Beranič
>     MIBESIS
>     +386(0)40/814-843
>     [hidden email] <mailto:[hidden email]>
>     http://www.mibesis.si
>
>
>
> --
> Miroslav Beranič
> MIBESIS
> +386(0)40/814-843
> [hidden email] <mailto:[hidden email]>
> http://www.mibesis.si

--
Jean-Baptiste Onofré
[hidden email]
http://blog.nanthrax.net
Talend - http://www.talend.com


--
Miroslav Beranič
MIBESIS
+386(0)40/814-843
[hidden email]
http://www.mibesis.si