You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Eugene Tarasov (JIRA)" <ji...@apache.org> on 2013/09/26 23:52:04 UTC

[jira] [Created] (CAMEL-6790) Resuming a bundle that uses blueprint+camel fails if it was suspended externally

Eugene Tarasov created CAMEL-6790:
-------------------------------------

             Summary: Resuming a bundle that uses blueprint+camel fails if it was suspended externally
                 Key: CAMEL-6790
                 URL: https://issues.apache.org/jira/browse/CAMEL-6790
             Project: Camel
          Issue Type: Bug
          Components: camel-blueprint
    Affects Versions: 2.12.1
            Reporter: Eugene Tarasov


There is a problem in this scenario:

# Karaf is running.
# Start some bundle that uses blueprint+camel. For convenience will call it <testbundle>.
# Cause this bundle to be suspended by container, by refreshing a bundle that provides some namespace used by <testbundle> bundle. For example, by refreshing camel-cxf (assuming that <testbundle> uses also blueprint/cxf namespace). In logs one can see something like this:
bq. Bundle <testbundle> is waiting for namespace handlers [http://camel.apache.org/schema/blueprint/cxf]

In this case after the missing namespace becomes available again the bundle will fail to resume with exception like:
bq. Caused by: org.xml.sax.SAXParseException: cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'camelContext'.

The problem is in CamelNamespaceHandler class which is a part of camel-blueprint. When it parses incoming dom it changes namespace of all elements from http://camel.apache.org/schema/blueprint to http://camel.apache.org/schema/spring. So when a bundle that uses blueprint+camel needs to validate its blueprint context again (like if it was waiting for some namespace) the new validation will fail.


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira