karaf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Uwe Barthel (JIRA)" <j...@apache.org>
Subject [jira] [Created] (KARAF-1617) Blueprint deployer in combination with maven URL deployer creates wrong OSGi/blueprint/ file
Date Wed, 04 Jul 2012 08:49:33 GMT
Uwe Barthel created KARAF-1617:
----------------------------------

             Summary: Blueprint deployer in combination with maven URL deployer creates wrong
OSGi/blueprint/ file
                 Key: KARAF-1617
                 URL: https://issues.apache.org/jira/browse/KARAF-1617
             Project: Karaf
          Issue Type: Bug
          Components: karaf-core
    Affects Versions: 2.2.8
         Environment: Karaf 2.2.8

* org/apache/karaf/deployer/org.apache.karaf.deployer.blueprint/2.2.8
* org/apache/aries/blueprint/org.apache.aries.blueprint/0.3.2
            Reporter: Uwe Barthel


We are using the Aries JNDI service for providing database-datasources via JNDI.

The datasource definition is a blueprint-XML file like [this one|https://github.com/cschneider/Karaf-Tutorial/blob/master/db/datasource/datasource-derby.xml]
and is located in our Maven repository.

I try to install the datasource definition like:

{quote}
bundle:install -s blueprint:mvn:my.product.database/my.product.database.layer//xml/datasource-hsqldb
{quote}

The bundle will be installed but the blueprint service was not created.

The blueprint deployer creates a bundle-JAR file and including a new ZipEntry as blueprint
service descriptor into {{OSGi/blueprint/}}.


{code:title=org.apache.karaf.deployer.blueprint.BlueprintTransformer.transform(URL, OutputStream)}
[...]

        String name = url.getPath();
        int idx = name.lastIndexOf('/');
        if (idx >= 0) {
            name = name.substring(idx + 1);
        }

[...]

        e = new ZipEntry("OSGI-INF/blueprint/" + name);
        out.putNextEntry(e);
        // Copy the new DOM
        if (tf == null) {
            tf = TransformerFactory.newInstance();
        }
        tf.newTransformer().transform(new DOMSource(doc), new StreamResult(out));
        out.closeEntry();

[...]
{code}

Based on the {{mvn:}} URL the name of the blueprint descriptor file is {{datasource-hsqldb}}
(w/o the {{.xml}} extension).

The blueprint service needs the {{.xml}} file extension.

{code:title=org.apache.aries.blueprint.container.BlueprintExtender.checkBundle(Bundle)}
[...]
           addEntries(bundle, name, "*.xml", pathList);
[...]
{code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message