Axis2
  1. Axis2
  2. AXIS2-3223

Plug JAX-WS / MDQ deployment into Axis2 deployment model

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.4
    • Fix Version/s: 1.4
    • Component/s: jaxws
    • Labels:
      None

      Description

      Currently the metadata processing for JAXWS (i.e. the creation of the metadata description hierachy based on annotations and WSDL) is not integrated into the Axis2 deployment model. The JAXWS unit tests are using a deprecated factory method which builds the desription hierarchy when an inbound request for a service is received. The deprecated method DescriptionFactory.createServiceDescriptionFromServiceImpl(implClass, axisSvc) is called from EndpointController.getEndpointDescription. This deprecated method causes obsolete code paths to be executed and does not go down code paths that are used for actual server integration.

      Actual server integration (for example in Geronimo) plugs the JAXWS metadata processing into the server's deployment logic. This is done by creating DescriptionBuilderComposite objects and using those DBCs to create the JAXWS/Metadata description hierarchy. The processes of creating the JAXWS descrition hierachy also creates the Axis2 description hierachy (e.g. AxisService and such) based on annotations (and/or WSDL).

      I think the following needs to be done:
      1. Add a plug point in the Axis2 deployment logic that allows plugging in to the deployment logic, or perhaps overridding it completely
      2. In the JAXWS integration-level tests (which require a running server), the plugpoint or override would create the JAXWS and associated Axis2 description hierachy during application deployment.
      3. The logic in EndpointController.getEndpointDescription should change to consider not finding the JAXWS description hierachy an error and reject the inbound request. The deprecated method DescriptionFactory.createServiceDescriptionFromServiceImpl(implClass, axisSvc) should be removed.
      4. Note that there is a convenience method DescriptionFactory.createServiceDescription(Class) that will take an implementation class and create the DBCs using relfection which may be helpful.

        Issue Links

          Activity

          Transition Time In Source Status Execution Times Last Executer Last Execution Date
          Open Open Resolved Resolved
          164d 3h 8m 1 Davanum Srinivas 03/Mar/08 17:38
          Resolved Resolved Reopened Reopened
          2d 19h 15m 1 Brian DePradine 06/Mar/08 12:54
          Reopened Reopened Resolved Resolved
          5h 6m 1 Roy A. Wood Jr. 06/Mar/08 18:00
          Resolved Resolved Closed Closed
          20s 1 Roy A. Wood Jr. 06/Mar/08 18:00
          Gavin made changes -
          Link This issue is depended upon by AXIS2-2722 [ AXIS2-2722 ]
          Gavin made changes -
          Link This issue blocks AXIS2-2722 [ AXIS2-2722 ]
          Roy A. Wood Jr. made changes -
          Status Resolved [ 5 ] Closed [ 6 ]
          Hide
          Roy A. Wood Jr. added a comment -

          re-closing after completing item 3

          Show
          Roy A. Wood Jr. added a comment - re-closing after completing item 3
          Roy A. Wood Jr. made changes -
          Status Reopened [ 4 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Hide
          Roy A. Wood Jr. added a comment -

          Item 3 is now complete....re-closing

          Show
          Roy A. Wood Jr. added a comment - Item 3 is now complete....re-closing
          Hide
          Roy A. Wood Jr. added a comment -

          Thanks for pointing this out Brian. I'll take care of this.

          Show
          Roy A. Wood Jr. added a comment - Thanks for pointing this out Brian. I'll take care of this.
          Brian DePradine made changes -
          Affects Version/s 1.4 [ 12312677 ]
          Fix Version/s 1.4 [ 12312677 ]
          Brian DePradine made changes -
          Resolution Fixed [ 1 ]
          Status Resolved [ 5 ] Reopened [ 4 ]
          Hide
          Brian DePradine added a comment -

          Item 3 from the list hasn't ben done yet, so I am reopening so that we don't forget it.

          Show
          Brian DePradine added a comment - Item 3 from the list hasn't ben done yet, so I am reopening so that we don't forget it.
          Hide
          Davanum Srinivas added a comment -

          Closing this issue since we have added the JAXWS Deployer now..

          thanks,
          dims

          Show
          Davanum Srinivas added a comment - Closing this issue since we have added the JAXWS Deployer now.. thanks, dims
          Davanum Srinivas made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Fixed [ 1 ]
          Davanum Srinivas made changes -
          Link This issue relates to AXIS2-3500 [ AXIS2-3500 ]
          Brian DePradine made changes -
          Field Original Value New Value
          Link This issue blocks AXIS2-2722 [ AXIS2-2722 ]
          Jeff Barrett created issue -

            People

            • Assignee:
              Roy A. Wood Jr.
              Reporter:
              Jeff Barrett
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development