I proceeded with the changes, there is still one thing for which I would like some clarifications. What is the added value of leveraging the obr, since all the required bundles are available as bundles in public maven repositories.
Most probably I am unaware of some of the OBR features. On Fri, Nov 26, 2010 at 10:29 PM, Guillaume Nodet <[email protected]> wrote: > On Fri, Nov 26, 2010 at 21:21, <[email protected]> wrote: > > Author: iocanel > > Date: Fri Nov 26 20:21:25 2010 > > New Revision: 1039550 > > > > URL: http://svn.apache.org/viewvc?rev=1039550&view=rev > > Log: > > [KARAF-293] Created a project that hosts the karaf enterprise features > > > > Added: > > karaf/trunk/features/enterprise/ > > karaf/trunk/features/enterprise/pom.xml > > karaf/trunk/features/enterprise/src/ > > karaf/trunk/features/enterprise/src/main/ > > karaf/trunk/features/enterprise/src/main/resources/ > > karaf/trunk/features/enterprise/src/main/resources/features.xml > > Modified: > > karaf/trunk/features/pom.xml > > > > Added: karaf/trunk/features/enterprise/pom.xml > > URL: > http://svn.apache.org/viewvc/karaf/trunk/features/enterprise/pom.xml?rev=1039550&view=auto > > > ============================================================================== > > --- karaf/trunk/features/enterprise/pom.xml (added) > > +++ karaf/trunk/features/enterprise/pom.xml Fri Nov 26 20:21:25 2010 > > @@ -0,0 +1,85 @@ > > +<?xml version="1.0" encoding="UTF-8"?> > > +<project xmlns="http://maven.apache.org/POM/4.0.0" > > + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > > + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 > http://maven.apache.org/xsd/maven-4.0.0.xsd"> > > + <!-- > > + > > + Licensed to the Apache Software Foundation (ASF) under one or > more > > + contributor license agreements. See the NOTICE file distributed > with > > + this work for additional information regarding copyright > ownership. > > + The ASF licenses this file to You under the Apache License, > Version 2.0 > > + (the "License"); you may not use this file except in compliance > with > > + the License. You may obtain a copy of the License at > > + > > + http://www.apache.org/licenses/LICENSE-2.0 > > + > > + Unless required by applicable law or agreed to in writing, > software > > + distributed under the License is distributed on an "AS IS" > BASIS, > > + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or > implied. > > + See the License for the specific language governing permissions > and > > + limitations under the License. > > + --> > > + > > + <modelVersion>4.0.0</modelVersion> > > + > > + <parent> > > + <groupId>org.apache.karaf.features</groupId> > > + <artifactId>features</artifactId> > > + <version>2.1.99-SNAPSHOT</version> > > + </parent> > > + > > + <artifactId>enterprise</artifactId> > > + <name>Apache Karaf :: Features :: Enterprise</name> > > + > > + <properties> > > + <features.file>features.xml</features.file> > > + <cglib.version>2.1_3_6</cglib.version> > > + > <geronimo.transaction.version>1.1.1</geronimo.transaction.version> > > + <geronimo.persistence.version>1.1</geronimo.persistence.version> > > + </properties> > > I think the maintenance would be easier if all versions are defined in > the root pom. It avoid looking in various poms when someone wants to > update a given version. > > > + > > + <build> > > + <resources> > > + <resource> > > + <directory>src/main/resources</directory> > > + <filtering>true</filtering> > > + </resource> > > + </resources> > > + > > + <plugins> > > + <plugin> > > + <groupId>org.apache.maven.plugins</groupId> > > + <artifactId>maven-resources-plugin</artifactId> > > + <version>2.4.3</version> > > + <executions> > > + <execution> > > + <id>filter</id> > > + <phase>process-resources</phase> > > + </execution> > > + </executions> > > + </plugin> > > + <plugin> > > + <groupId>org.codehaus.mojo</groupId> > > + <artifactId>build-helper-maven-plugin</artifactId> > > + <executions> > > + <execution> > > + <id>attach-artifacts</id> > > + <phase>package</phase> > > + <goals> > > + <goal>attach-artifact</goal> > > + </goals> > > + <configuration> > > + <artifacts> > > + <artifact> > > + > <file>target/classes/${features.file}</file> > > + <type>xml</type> > > + <classifier>features</classifier> > > + </artifact> > > + </artifacts> > > + </configuration> > > + </execution> > > + </executions> > > + </plugin> > > + </plugins> > > + </build> > > +</project> > > \ No newline at end of file > > > > Added: karaf/trunk/features/enterprise/src/main/resources/features.xml > > URL: > http://svn.apache.org/viewvc/karaf/trunk/features/enterprise/src/main/resources/features.xml?rev=1039550&view=auto > > > ============================================================================== > > --- karaf/trunk/features/enterprise/src/main/resources/features.xml > (added) > > +++ karaf/trunk/features/enterprise/src/main/resources/features.xml Fri > Nov 26 20:21:25 2010 > > @@ -0,0 +1,44 @@ > > +<?xml version="1.0" encoding="UTF-8"?> > > + > > + <!-- > > + > > + Licensed to the Apache Software Foundation (ASF) under one or > more > > + contributor license agreements. See the NOTICE file distributed > with > > + this work for additional information regarding copyright > ownership. > > + The ASF licenses this file to You under the Apache License, > Version 2.0 > > + (the "License"); you may not use this file except in compliance > with > > + the License. You may obtain a copy of the License at > > + > > + http://www.apache.org/licenses/LICENSE-2.0 > > + > > + Unless required by applicable law or agreed to in writing, > software > > + distributed under the License is distributed on an "AS IS" > BASIS, > > + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or > implied. > > + See the License for the specific language governing permissions > and > > + limitations under the License. > > + --> > > + > > +<fetures> > > + <feature name='transaction' description="OSGi Transaction > Manager" version='${aries.blueprint.version}'> > > + <details>The Aries JTA</details> > > + > > <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo.transaction.version}</bundle> > > + > > <bundle>mvn:org.apache.aries.transaction/org.apache.aries.transaction.blueprint/${aries.blueprint.version}</bundle> > > + > > <bundle>mvn:org.apache.aries.transaction/org.apache.aries.transaction.manager/${aries.blueprint.version}</bundle> > > + </feature> > > + > > + <feature name='persistence' description="OSGi Persistence > Container" version='${aries.blueprint.version}'> > > + > > <bundle>mvn:org.apache.geronimo.specs/geronimo-jta_1.1_spec/${geronimo.transaction.version}</bundle> > > + > > <bundle>mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo.transaction.version}</bundle> > > + > > <bundle>mvn:org.apache.aries.jpa/org.apache.aries.jpa.blueprint.aries/${aries.blueprint.version}</bundle> > > + > > <bundle>mvn:org.apache.aries.jpa/org.apache.aries.jpa.container/${aries.blueprint.version}</bundle> > > + > > <bundle>mvn:org.apache.aries.jpa/org.apache.aries.jpa.container.context/${aries.blueprint.version}</bundle> > > + > > <bundle>mvn:org.apache.aries/org.apache.aries.util/${aries.blueprint.version}</bundle> > > + </feature> > > + > > + <feature name='jndi' description="OSGi Service Registry JNDI > access" version='${aries.blueprint.version}'> > > + > <bundle>mvn:org.osgi/org.osgi.enterprise/${osgi.version}</bundle> > > + > > <bundle>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.cglib/${cglib.version}</bundle> > > + > > <bundle>mvn:org.apache.aries.jndi/org.apache.aries.jndi.core/${aries.blueprint.version}</bundle> > > + > > <bundle>mvn:org.apache.aries.jndi/org.apache.aries.jndi.url/${aries.blueprint.version}</bundle> > > + </feature> > > +</fetures> > > > Apart from the typo on the root element, I think it would be nice if > those features could leverage the obr repository when installed. > I.e. add repository="(obr)" on the feature elements and put a > dependency="true" on bundles which are not part of the core feature > (i.e. they are installed because you need those to provide some third > party package. > Last, installing the org.osgi/org.osgi.enterprise is imho a bad idea > and it's too big and could break modularity. Aries usually provide a > bundle with the api and also one which contain both the implementation > and the api... > > > \ No newline at end of file > > > > Modified: karaf/trunk/features/pom.xml > > URL: > http://svn.apache.org/viewvc/karaf/trunk/features/pom.xml?rev=1039550&r1=1039549&r2=1039550&view=diff > > > ============================================================================== > > --- karaf/trunk/features/pom.xml (original) > > +++ karaf/trunk/features/pom.xml Fri Nov 26 20:21:25 2010 > > @@ -37,6 +37,7 @@ > > <module>command</module> > > <module>management</module> > > <module>obr</module> > > + <module>enterprise</module> > > </modules> > > > > </project> > > > > > > > > > > -- > Cheers, > Guillaume Nodet > ------------------------ > Blog: http://gnodet.blogspot.com/ > ------------------------ > Open Source SOA > http://fusesource.com > -- *Ioannis Canellos* http://iocanel.blogspot.com Integration Engineer @ Upstream S.A. <http://www.upstreamsystems.com>
