[[Exception-BeanDefinitionStoreException-BeanDefinitionStoreException]]
=== BeanDefinitionStoreException

If you use ActiveMQ 5.x that ships with Camel 1.x and you upgrade it to
use Camel 2.0 you can get an exception while starting.

----
ERROR: java.lang.RuntimeException: Failed to execute start task. Reason:
org.springframework.beans.factory.BeanDefinitionStoreException: Unrecognized
xbean namespace mapping: http://activemq.apache.org/camel/schema/spring
----

The reason is basically that the XML namespace changed in Camel 2.0 as
explained below.

When Camel went from an ActiveMQ sub project to a top level apache
project, they changed the URIs for their xml schemas to reflect this in
Camel 2.0.

To fix this, in `activemq.xml` change all occurrences of:

[source,xml]
----
http://activemq.apache.org/camel/schema/spring
----

to

[source,xml]
----
http://camel.apache.org/schema/spring
----

and

[source,xml]
----
http://activemq.apache.org/camel/schema/spring/camel-spring.xsd
----

to

[source,xml]
----
http://camel.apache.org/schema/spring/camel-spring.xsd
----

These will probably occur in the xsi:schemaLocation attribute of the top
level beans tag (both) and in the xmlns attribute in the `camelContext`
element (just the first).
