org.springframework.remoting.httpinvoker

## Interface HttpInvokerRequestExecutor

All Known Implementing Classes:
  AbstractHttpInvokerRequestExecutor, CommonsHttpInvokerRequestExecutor, HttpComponentsHttpInvokerRequestExecutor, SimpleHttpInvokerRequestExecutor

    public interface HttpInvokerRequestExecutor

Strategy interface for actual execution of an HTTP invoker request. Used by HttpInvokerClientInterceptor and its subclass HttpInvokerProxyFactoryBean.

Two implementations are provided out of the box:

- SimpleHttpInvokerRequestExecutor: Uses J2SE facilities to execute POST requests, without support for HTTP authentication or advanced configuration options.
- CommonsHttpInvokerRequestExecutor: Uses Jakarta's Commons HttpClient to execute POST requests, allowing to use a preconfigured HttpClient instance (potentially with authentication, HTTP connection pooling, etc).

Since:
  1.1
Author:
  Juergen Hoeller
See Also:
  `HttpInvokerClientInterceptor.setHttpInvokerRequestExecutor(org.springframework.remoting.httpinvoker.HttpInvokerRequestExecutor)`

### Method Summary

Methods
`RemoteInvocationResult` `executeRequest(HttpInvokerClientConfiguration config, RemoteInvocation invocation)` Execute a request to send the given remote invocation.

### Method Detail

#### executeRequest

    RemoteInvocationResult executeRequest(HttpInvokerClientConfiguration config,
                                        RemoteInvocation invocation)
                                          throws Exception

Execute a request to send the given remote invocation.

Parameters:
  `config` - the HTTP invoker configuration that specifies the target service
  `invocation` - the RemoteInvocation to execute
Returns:
  the RemoteInvocationResult object
Throws:
  `IOException` - if thrown by I/O operations
  `ClassNotFoundException` - if thrown during deserialization
  `Exception` - in case of general errors