Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.1
    • Fix Version/s: 3.1.3
    • Component/s: webservices
    • Labels:
      None
    • Environment:
      OpenEJB 3.1, Web services

      Description

      CXF 2.0.4 is an incubator version.
      It would be nice to upgrade to the last compatible version : 2.0.9, it solves several bugs.

      1. CXF209.zip
        2 kB
        Jean-Sébastien Scrève
      2. OpenEJBTomcatWebAppPomPatch2.txt
        0.5 kB
        Jean-Sébastien Scrève
      3. CXF22Migration.zip
        24 kB
        Jean-Sébastien Scrève
      4. CXF22MigrationWithSpring.zip
        24 kB
        Jean-Sébastien Scrève
      5. CXF22MigrationWithSpring.zip
        24 kB
        Jean-Sébastien Scrève
      6. PatchCXF_Final.zip
        24 kB
        Jean-Sébastien Scrève

        Activity

        Hide
        Jean-Sébastien Scrève added a comment -

        I made the modifications.
        I updated two pom files : the reference to the 2.0.9 version and the pom file of the tomcat web application. I had to upgrade the assembly revision to beta 2. Otherwise the assembly plugin try to get pom files of jar libraries. As the new libraries do not provide such pom files, it crashed.

        I also updated two Java test files : the superbiz application and the iTest application. The Sevice.create() method do not work anymore with a null QName.

        I tested on a sample application on Tomcat and on the superbiz application.
        Not all OpenEJB tests pass so I was not able to run all JUnit tests. I did not achieve to run iTest either. Is there anything to do to get them work ?

        Regards,

        Jean-Sébastien Scrève.

        Show
        Jean-Sébastien Scrève added a comment - I made the modifications. I updated two pom files : the reference to the 2.0.9 version and the pom file of the tomcat web application. I had to upgrade the assembly revision to beta 2. Otherwise the assembly plugin try to get pom files of jar libraries. As the new libraries do not provide such pom files, it crashed. I also updated two Java test files : the superbiz application and the iTest application. The Sevice.create() method do not work anymore with a null QName. I tested on a sample application on Tomcat and on the superbiz application. Not all OpenEJB tests pass so I was not able to run all JUnit tests. I did not achieve to run iTest either. Is there anything to do to get them work ? Regards, Jean-Sébastien Scrève.
        Hide
        Jean-Sébastien Scrève added a comment -

        I got another trouble with the war generation. It seems that starting from assembly plugin beta-2 version, there is conflict between the generated jar and war files. (same name).
        So the install and deploy only generates one jar file instead of one jar and one war. The generated jar file is in fact the expected war file.
        Appending the assembly id is a a workaround.
        The attached patch makes this modification.

        Show
        Jean-Sébastien Scrève added a comment - I got another trouble with the war generation. It seems that starting from assembly plugin beta-2 version, there is conflict between the generated jar and war files. (same name). So the install and deploy only generates one jar file instead of one jar and one war. The generated jar file is in fact the expected war file. Appending the assembly id is a a workaround. The attached patch makes this modification.
        Hide
        Jacek Laskowski added a comment -

        Just for the record - I've tried to update to 2.1.3 and stumbled upon missing org.apache.cxf.jaxws.support.ContextPropertiesMapping class. It's removed in Revision: 689572 of cxf (cf. http://markmail.org/message/c4upvosp2aa3a4b4). Should OpenEJB be updated to any higher versions of CXF, 2.1.3 or later would be the goal worth spending time.

        Show
        Jacek Laskowski added a comment - Just for the record - I've tried to update to 2.1.3 and stumbled upon missing org.apache.cxf.jaxws.support.ContextPropertiesMapping class. It's removed in Revision: 689572 of cxf (cf. http://markmail.org/message/c4upvosp2aa3a4b4 ). Should OpenEJB be updated to any higher versions of CXF, 2.1.3 or later would be the goal worth spending time.
        Hide
        Jean-Louis MONTEIRO added a comment -

        Update to 2.0.9 has been done out of the box (OPENEJB-1004)
        We are currently working on the latest version (2.2.1)

        Show
        Jean-Louis MONTEIRO added a comment - Update to 2.0.9 has been done out of the box ( OPENEJB-1004 ) We are currently working on the latest version (2.2.1)
        Hide
        Jean-Sébastien Scrève added a comment -

        I attach a patch for CXF 22 migration.
        At first, it was inspired by the Geronimo project.
        I still make some tests on this patch but I thought you'd like to have a look on it.

        Please note there is still something I'm not very happy with :

        • I had to override the createBindingInfo method in NoInitJaxWsServerFactoryBean static class. I made this modification to make the webservice-attachements sample working. I'm sure we can do something better and I continue my investigations.
        Show
        Jean-Sébastien Scrève added a comment - I attach a patch for CXF 22 migration. At first, it was inspired by the Geronimo project. I still make some tests on this patch but I thought you'd like to have a look on it. Please note there is still something I'm not very happy with : I had to override the createBindingInfo method in NoInitJaxWsServerFactoryBean static class. I made this modification to make the webservice-attachements sample working. I'm sure we can do something better and I continue my investigations.
        Hide
        Jean-Sébastien Scrève added a comment -

        And here is the attached patch.

        Jean-Sébastien Scrève.

        Show
        Jean-Sébastien Scrève added a comment - And here is the attached patch. Jean-Sébastien Scrève.
        Hide
        Jean-Sébastien Scrève added a comment -

        Ok I did not manage to get something clean without Spring.
        So I attach a patch that makes use of Spring.
        Code is easier to understand but we have Spring dependencies.

        I made some simple tests (OpenEJB JUnit, examples, with Tomcat) and I'll make some further tests.

        Regards,

        Jean-Sébastien Scrève.

        Show
        Jean-Sébastien Scrève added a comment - Ok I did not manage to get something clean without Spring. So I attach a patch that makes use of Spring. Code is easier to understand but we have Spring dependencies. I made some simple tests (OpenEJB JUnit, examples, with Tomcat) and I'll make some further tests. Regards, Jean-Sébastien Scrève.
        Hide
        Jean-Sébastien Scrève added a comment -

        Oups, made a mistake with license.

        Show
        Jean-Sébastien Scrève added a comment - Oups, made a mistake with license.
        Hide
        Jean-Sébastien Scrève added a comment -

        So here is a final patch without Spring. You can also find a sample for inheritance.

        Regards,

        Jean-Sébastien Scrève.

        Show
        Jean-Sébastien Scrève added a comment - So here is a final patch without Spring. You can also find a sample for inheritance. Regards, Jean-Sébastien Scrève.
        Hide
        Jean-Louis MONTEIRO added a comment -

        Committed revision 893441.
        Thanks Jean-Sébastien!

        Show
        Jean-Louis MONTEIRO added a comment - Committed revision 893441. Thanks Jean-Sébastien!

          People

          • Assignee:
            Jean-Louis MONTEIRO
            Reporter:
            Jean-Sébastien Scrève
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development