Plug JAX-WS / MDQ deployment into Axis2 deployment model
--------------------------------------------------------
Key: AXIS2-3223
URL: https://issues.apache.org/jira/browse/AXIS2-3223
Project: Axis 2.0 (Axis2)
Issue Type: Improvement
Components: jaxws
Reporter: Jeff Barrett
Assignee: Roy A. Wood Jr.
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.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]