[ http://issues.apache.org/jira/browse/BEEHIVE-867?page=all ]
     
Chad Schoettger resolved BEEHIVE-867:
-------------------------------------

    Resolution: Fixed
     Assign To: Jacob Danner  (was: Chad Schoettger)

This enhancement request was resolved several months ago, I'm just a bit slow 
in getting this bug updated.  

The resolution differed a bit from the original proposal in that support for 
JAX-RPC handlers has been added by the addition of a public api to the 
ServiceControl interface, 

   /**
     * Set any JAX-RPC handlers for this client.
     * @param handlers List of HandlerInfo.
     */
    public void setHandlers(List<HandlerInfo> handlers);

This method can be used to set/remove handlers from the service control, each 
invocation of this method sets the current set of handlers to the contents of 
the handlers parameter.

> Enhance JAX-RPC Handler support in the service control
> ------------------------------------------------------
>
>          Key: BEEHIVE-867
>          URL: http://issues.apache.org/jira/browse/BEEHIVE-867
>      Project: Beehive
>         Type: Improvement

>   Components: System Controls
>     Reporter: Chad Schoettger
>     Assignee: Jacob Danner

>
> This proposal has been discussed on the beehive dev list, for reference: 
> Date: Jul 27, 2005 
> Title: Design proposal for enhanced JAX-RPC handler functionality for the 
> service control
> One of the primary goals of this change would be to allow service control 
> users to define their own JAX-RPC handler chains for a service control. 
> Currently the service control only supports the HeaderHandler (see source 
> tree) which can add SOAP headers to outgoing messages and SOAP retrieve 
> headers from incoming messages. There are two service control API's which 
> support this: Element[] getInputHeaders() and void setOutputHeaders(Element[])
> I propose that these two API's be removed as well as the HeaderHandler class.
> The API's would be replaced with a new annotation in the ServiceControl 
> interface:
>     public @interface HandlerConfigParams {
>         String name();
>         String value();
>     }
>     public @interface MessageHandler {
>         Class handlerClass();
>         HandlerConfigParams[] configParams() default {};
>         String[] headers() default {};
>     }
>    
>     @Retention(RetentionPolicy.RUNTIME)
>     @Target({ElementType.TYPE})
>     public @interface MessageHandlers {
>         MessageHandler[] value();
>     }
> If this optional annotation is set service control would add the handlers to 
> the HandlerRegistry at runtime.  I'm thinking this would be a class-level 
> annotation for the service control - would it also be useful to be able to 
> define this on a per method basis?
>   

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to