Uploaded image for project: 'JBoss Enterprise SOA Platform'
  1. JBoss Enterprise SOA Platform
  2. SOA-2224

AbstractHttpMethodFactory should extract retry handler parameter in setConfiguration method

    Details

    • Workaround Description:
      Hide

      There is no known workaround.

      Show
      There is no known workaround.
    • Release Notes Text:
      Hide
      https://issues.jboss.org/browse/SOA-2224

      If the configuration was set in certain ways, the custom retry handler was not picked up. This was due to a bug in both POSTHttpMethodFactory and GETHttpMethodFactory, whereby the setConfiguration(ConfigTree):void method was not set in the HttpMethod's HttpMethodParams. A task has been added to AbstractHttpMethodFactory to correctly extract the parameter and instantiate the handler. Note that the retry handler is configured by specifying the org.jboss.soa.esb.actions.routing.http.routingHandler parameter on the action. The value of this parameter must be the name of a class which implements HttpMethodRetryHandler and has a public, no-arg constructor.
      Show
      https://issues.jboss.org/browse/SOA-2224 If the configuration was set in certain ways, the custom retry handler was not picked up. This was due to a bug in both POSTHttpMethodFactory and GETHttpMethodFactory, whereby the setConfiguration(ConfigTree):void method was not set in the HttpMethod's HttpMethodParams. A task has been added to AbstractHttpMethodFactory to correctly extract the parameter and instantiate the handler. Note that the retry handler is configured by specifying the org.jboss.soa.esb.actions.routing.http.routingHandler parameter on the action. The value of this parameter must be the name of a class which implements HttpMethodRetryHandler and has a public, no-arg constructor.
    • Release Notes Docs Status:
      Documented as Resolved Issue

      Description

      If you set your config like this:

      <action ... class="org.jboss.soa.esb.actions.soap.proxy.SOAPProxy">
      ...
      <property name="http-client-properties">
      <http-client-property name="http.method.retry-handler" value="com.foobar.MyRetryHandler"/>
      </property>

      or like this:

      <action ... class="org.jboss.soa.esb.actions.soap.proxy.SOAPProxy">
      ...
      <property name="file" value="http-client.properties"/>

      http-client.properties:
      http.method.retry-handler=com.foobar.MyRetryHandler

      , your custom retry handler is not picked up. This is NOT a bug in SOAPProxy.

      The bug is in both POSTHttpMethodFactory and GETHttpMethodFactory, where in the setConfiguration(ConfigTree):void method, the http-client-properties that are available in the passed-in ConfigTree are not set into the HttpMethod's HttpMethodParams.

      What should happen is that ANY property that starts with "http.method." should be set into the HttpMethodParams.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  kconner Kevin Conner
                  Reporter:
                  david.boeren David Boeren
                  Writer:
                  David Le Sage
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  1 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: