Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.7.0, 0.8.0, 0.9.0
    • Fix Version/s: 2.0.0-M1
    • Component/s: None
    • Labels:
      None

      Description

      It's just an update of the MANIFEST files. Never related with API design, so won't fix in 2.0.0-M1.

      1. MANIFEST.MF
        2 kB
        John Conlon
      2. pom.xml
        5 kB
        John Conlon

        Activity

        Hide
        rason yang added a comment -

        Great!
        I am really really eager for this feature!
        Thank you!

        Show
        rason yang added a comment - Great! I am really really eager for this feature! Thank you!
        Hide
        Trustin Lee added a comment -

        All JARs are now OSGi bundles. I used maven-bundle-plugin + some Ant tasks. It seems to load OK in Felix. Any external dependencies will need to be provided as OSGi bundles though (e.g. jzlib and rxtx).

        Show
        Trustin Lee added a comment - All JARs are now OSGi bundles. I used maven-bundle-plugin + some Ant tasks. It seems to load OK in Felix. Any external dependencies will need to be provided as OSGi bundles though (e.g. jzlib and rxtx).
        Hide
        Trustin Lee added a comment -

        It seems like the latest felix bundle plugin doesn't work well with multiprojects. I think we need to wait for the better plugin to be released.

        Show
        Trustin Lee added a comment - It seems like the latest felix bundle plugin doesn't work well with multiprojects. I think we need to wait for the better plugin to be released.
        Hide
        Trustin Lee added a comment -

        This issue has been resolved by using Apache Felix maven-bundle-plugin v1.0.0. All MINA modules are now OSGi bundles thanks to the bundle plugin. Please confirm the fix and let me know.

        Show
        Trustin Lee added a comment - This issue has been resolved by using Apache Felix maven-bundle-plugin v1.0.0. All MINA modules are now OSGi bundles thanks to the bundle plugin. Please confirm the fix and let me know.
        Hide
        Trustin Lee added a comment -

        > Would you like me to create a OSGi wrapper project for the latest trunk?

        That would be great!

        Show
        Trustin Lee added a comment - > Would you like me to create a OSGi wrapper project for the latest trunk? That would be great!
        Hide
        John Conlon added a comment -

        Yes as a matter of fact the latest Mina OSGi work is still on the apacheDS. You will find three projects in sandbox/jconlon/osgi-mina. These projects are for the Mina 1.1.

        The first of these projects is mina-integration-osgi this is a wrapping bundle for mina. The second mina-osgi-example is a OSGi version of the Chat example. The third mina-osgi-example-integration-test is a Spring-OSGi based testing framework for the second project.

        I have not moved them to my Mina sandbox or said much about them because many of the third party dependencies Enrique and I built for OSGi enabling ADS are in the process of moving to the OSGi felix commons area. Additionally the Spring-OSGi efforts are in a state of flux so the testing framework is not very stable nor is it available from stable maven repos.

        However the main osgi bundling of mina 1.1 (mina-integration-osgi) should build for you as it does me right now.

        The other two projects are a bit more bold in their use of third party snapshots and thus are more shakey as they require sets of pre-built dependencies that you won't likely have. Time will fructify these dependencies and we should have something provided by third parties soon.

        Would you like me to create a OSGi wrapper project for the latest trunk?

        Show
        John Conlon added a comment - Yes as a matter of fact the latest Mina OSGi work is still on the apacheDS. You will find three projects in sandbox/jconlon/osgi-mina. These projects are for the Mina 1.1. The first of these projects is mina-integration-osgi this is a wrapping bundle for mina. The second mina-osgi-example is a OSGi version of the Chat example. The third mina-osgi-example-integration-test is a Spring-OSGi based testing framework for the second project. I have not moved them to my Mina sandbox or said much about them because many of the third party dependencies Enrique and I built for OSGi enabling ADS are in the process of moving to the OSGi felix commons area. Additionally the Spring-OSGi efforts are in a state of flux so the testing framework is not very stable nor is it available from stable maven repos. However the main osgi bundling of mina 1.1 (mina-integration-osgi) should build for you as it does me right now. The other two projects are a bit more bold in their use of third party snapshots and thus are more shakey as they require sets of pre-built dependencies that you won't likely have. Time will fructify these dependencies and we should have something provided by third parties soon. Would you like me to create a OSGi wrapper project for the latest trunk?
        Hide
        Trustin Lee added a comment -

        Sorry for catching up this issue late. Is your patch still applicable for MINA? I think Netty stuff can be ignored. Please let me know if anything has changed since then.

        Show
        Trustin Lee added a comment - Sorry for catching up this issue late. Is your patch still applicable for MINA? I think Netty stuff can be ignored. Please let me know if anything has changed since then.
        Hide
        John Conlon added a comment -

        This pom.xml can be use with a Java5 version of Mina 1.0.0.

        Show
        John Conlon added a comment - This pom.xml can be use with a Java5 version of Mina 1.0.0.
        Hide
        John Conlon added a comment -

        Here is an example of the Manifest.MF for a created OSGi bundle.

        Show
        John Conlon added a comment - Here is an example of the Manifest.MF for a created OSGi bundle.
        Hide
        John Conlon added a comment -

        Since the creation of a single project Mina appears to be shelved. To move the OSGi effort forward, I would like to create a OSGi bundle for wrapping the current Mina 1.0.0 release.

        Before I attach the pom.xml for the project called mina-integration-osgi
        I have a few questions of the community.

        Java 1.4?
        My first intention was to do this for Java5, but do we also need an OSGi wrapping project for a java 1.4 of Mina 1.0.0?

        Wrapped Dependencies?
        In the example I am showing below is for a Java5 release (no backport libs)

        Here are the dependencies that will be wrapped in the bundle:
        <dependency>

        <groupId>org.apache.mina</groupId>

        <artifactId>mina-core</artifactId>

        <version>$

        {pom.version}</version>

        </dependency>

        <dependency>

        <groupId>org.apache.mina</groupId>

        <artifactId>mina-java5</artifactId>

        <version>${pom.version}

        </version>

        </dependency>

        <dependency>

        <groupId>org.apache.mina</groupId>

        <artifactId>mina-filter-ssl</artifactId>

        <version>$

        {pom.version}</version>

        </dependency>

        <dependency>

        <!--This dependency is using several transients

        net.gleamynode.netty2.mina-->

        <groupId>org.apache.mina</groupId>

        <artifactId>mina-filter-codec-netty</artifactId>

        <version>${pom.version}

        </version>

        </dependency>

        <dependency>

        <groupId>org.apache.mina</groupId>

        <artifactId>mina-filter-compression</artifactId>

        <version>$

        {pom.version}</version>

        </dependency>

        <dependency>

        <groupId>org.apache.mina</groupId>

        <artifactId>mina-integration-spring</artifactId>

        <version>${pom.version}

        </version>

        <exclusions>

        <exclusion>

        <groupId>org.springframework</groupId>

        <artifactId>spring-beans</artifactId>

        </exclusion>

        <exclusion>

        <groupId>org.springframework</groupId>

        <artifactId>spring-core</artifactId>

        </exclusion>

        </exclusions>

        </dependency>

        <dependency>

        <groupId>org.apache.mina</groupId>

        <artifactId>mina-integration-jmx</artifactId>

        <version>$

        {pom.version}

        </version>

        </dependency>
        Are these dependencies all that need to be delievered in the bundle to meet Mina 1.0.0 functionality?

        Provided Dependencies?
        At OSGi runtime the two additional dependencies will be provided by other OSGi common use bundles wrapping:
        <dependency>

        <groupId>commons-collections</groupId>

        <artifactId>commons-collections</artifactId>

        <version>3.0</version>

        <scope>provided</scope>

        </dependency>

        <dependency>

        <groupId>org.slf4j</groupId>

        <artifactId>slf4j-simple</artifactId>

        <version>1.0</version>

        <scope>provided</scope>

        </dependency>
        Are there any more dependencies that I am missing?

        Ignored Dependencies?
        The OSGi Maven Plugin provides an analysis mode so one can tell library depenency usage. When bundleing Mina 1.0.0 the analysis is showing an unusual circular dependency on a no longer used mina library.

        [INFO] org.apache.mina.protocol used by;
        +-- net.gleamynode.netty2.mina

        [INFO] org.apache.commons.logging used by;
        +-- net.gleamynode.netty2

        [INFO] net.gleamynode.netty2 used by;

        – net.gleamynode.netty2.mina
        +-- org.apache.mina.filter.codec.netty

        I have a hunch that I can simple ignore the org.apache.mina.protocol library.
        Is there any reason I can't?

        Pending imput I expect to attach the project pom tomorrow.

        Show
        John Conlon added a comment - Since the creation of a single project Mina appears to be shelved. To move the OSGi effort forward, I would like to create a OSGi bundle for wrapping the current Mina 1.0.0 release. Before I attach the pom.xml for the project called mina-integration-osgi I have a few questions of the community. Java 1.4? My first intention was to do this for Java5, but do we also need an OSGi wrapping project for a java 1.4 of Mina 1.0.0? Wrapped Dependencies? In the example I am showing below is for a Java5 release (no backport libs) Here are the dependencies that will be wrapped in the bundle: <dependency> <groupId>org.apache.mina</groupId> <artifactId>mina-core</artifactId> <version>$ {pom.version}</version> </dependency> <dependency> <groupId>org.apache.mina</groupId> <artifactId>mina-java5</artifactId> <version>${pom.version} </version> </dependency> <dependency> <groupId>org.apache.mina</groupId> <artifactId>mina-filter-ssl</artifactId> <version>$ {pom.version}</version> </dependency> <dependency> <!--This dependency is using several transients net.gleamynode.netty2.mina--> <groupId>org.apache.mina</groupId> <artifactId>mina-filter-codec-netty</artifactId> <version>${pom.version} </version> </dependency> <dependency> <groupId>org.apache.mina</groupId> <artifactId>mina-filter-compression</artifactId> <version>$ {pom.version}</version> </dependency> <dependency> <groupId>org.apache.mina</groupId> <artifactId>mina-integration-spring</artifactId> <version>${pom.version} </version> <exclusions> <exclusion> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> </exclusion> <exclusion> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.mina</groupId> <artifactId>mina-integration-jmx</artifactId> <version>$ {pom.version} </version> </dependency> Are these dependencies all that need to be delievered in the bundle to meet Mina 1.0.0 functionality? Provided Dependencies? At OSGi runtime the two additional dependencies will be provided by other OSGi common use bundles wrapping: <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.0</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>1.0</version> <scope>provided</scope> </dependency> Are there any more dependencies that I am missing? Ignored Dependencies? The OSGi Maven Plugin provides an analysis mode so one can tell library depenency usage. When bundleing Mina 1.0.0 the analysis is showing an unusual circular dependency on a no longer used mina library. [INFO] org.apache.mina.protocol used by; +-- net.gleamynode.netty2.mina [INFO] org.apache.commons.logging used by; +-- net.gleamynode.netty2 [INFO] net.gleamynode.netty2 used by; – net.gleamynode.netty2.mina +-- org.apache.mina.filter.codec.netty I have a hunch that I can simple ignore the org.apache.mina.protocol library. Is there any reason I can't? Pending imput I expect to attach the project pom tomorrow.
        Hide
        John Conlon added a comment -

        If mina 1.1.0 consolidates to one project, the maven-osgi plugin can easily create a jar that is also an OSGi bundle.

        Show
        John Conlon added a comment - If mina 1.1.0 consolidates to one project, the maven-osgi plugin can easily create a jar that is also an OSGi bundle.

          People

          • Assignee:
            Trustin Lee
            Reporter:
            Trustin Lee
          • Votes:
            4 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development