[ 
https://issues.apache.org/jira/browse/AXIS2-1800?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12470787
 ] 

Rich Scheuerle commented on AXIS2-1800:
---------------------------------------

I have a patch (that I will supply shortly) that has the following "proof of 
concept" design.

    metadata module:
   1) The ServiceDescription class provides getServiceRuntimeDescription and 
setServiceRuntimeDescription methods.

   2) The ServiceRuntimeDescription is an "marker" interface that the runtime 
can use to cache information on the ServiceDescription.  
        The information in the ServiceRuntimeDescription must be immutable and 
threadsafe because it will be used across different
         threads and classloaders.

     jaxws module:
     1)  Defined a ResourceInjectionServiceDescription interface that extends 
ServiceRuntimeDescription.  
           Initially this interface only provides a single new method, 
hasResourceAnnotation().

     2)  The runtime now loads a ResourceInjectionServiceDescription object to 
determine if an @Resource annotation is present on 
 a Method or Field of the service implementation class.  This information is 
stored on the ServiceDescription.  The calculation is only performed once per 
service implementation class; thus performance is improved.

     3) Implemented the various Builder/Factory/Impl classes for 
ResoureInjectionServiceDescription.

------------------------
Also

A) I implemented the same framework for OperationRuntimeDescription.  The 
OperationRuntimeDescription objects will be used
 to hold marshal/unmarshal information.  Currently there are no methods on the 
OperationRuntimeDescription.

B) I noticed that we don't have a webservice test that tests resource 
injection.  I updated the FaultsServiceTest and Impl to make sure
that the injected context is set and the web service is initialized.

Please send me comments on this design once you read the patch.



> JAX-WS Cache or improve the @XMLRootElement and related annotation lookups
> --------------------------------------------------------------------------
>
>                 Key: AXIS2-1800
>                 URL: https://issues.apache.org/jira/browse/AXIS2-1800
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Improvement
>          Components: jaxws
>            Reporter: Rich Scheuerle
>         Assigned To: Rich Scheuerle
>
> The JAX-WS doc/lit wrapped marshalling code needs to query annotations such 
> as @XmlRootElement, @XmlList, @XmlType etc.
> This defect is opened to save/cache the resulting information on the 
> OperationDescription or possibly a static WeakHashtable to improve 
> performance.

-- 
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]

Reply via email to