org.springframework.remoting.caucho

## Class HessianServiceExporter

- java.lang.Object
- - org.springframework.remoting.support.RemotingSupport
  - - org.springframework.remoting.support.RemoteExporter
    - - org.springframework.remoting.caucho.HessianExporter
      - - org.springframework.remoting.caucho.HessianServiceExporter

- All Implemented Interfaces:
    Aware, BeanClassLoaderAware, InitializingBean, HttpRequestHandler

      public class HessianServiceExporter
      extends HessianExporter
      implements HttpRequestHandler

  Servlet-API-based HTTP request handler that exports the specified service bean as Hessian service endpoint, accessible via a Hessian proxy.

  Note: Spring also provides an alternative version of this exporter, for Sun's JRE 1.6 HTTP server: `SimpleHessianServiceExporter`.

  Hessian is a slim, binary RPC protocol. For information on Hessian, see the Hessian website. Note: As of Spring 3.0, this exporter requires Hessian 3.2 or above.

  Hessian services exported with this class can be accessed by any Hessian client, as there isn't any special handling involved.

  Since:
    13.05.2003
  Author:
    Juergen Hoeller
  See Also:
    `HessianClientInterceptor`, `HessianProxyFactoryBean`, `BurlapServiceExporter`, `HttpInvokerServiceExporter`, `RmiServiceExporter`

- - ### Field Summary

    - ### Fields inherited from class org.springframework.remoting.caucho.HessianExporter

      `CONTENT_TYPE_HESSIAN`

    - ### Fields inherited from class org.springframework.remoting.support.RemotingSupport

      `logger`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `HessianServiceExporter()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `handleRequest(HttpServletRequest request, HttpServletResponse response)` Processes the incoming Hessian request and creates a Hessian response.

    - ### Methods inherited from class org.springframework.remoting.caucho.HessianExporter

      `afterPropertiesSet, doInvoke, invoke, prepare, setDebug, setSendCollectionType, setSerializerFactory`

    - ### Methods inherited from class org.springframework.remoting.support.RemoteExporter

      `checkService, checkServiceInterface, getExporterName, getProxyForService, getService, getServiceInterface, setInterceptors, setRegisterTraceInterceptor, setService, setServiceInterface`

    - ### Methods inherited from class org.springframework.remoting.support.RemotingSupport

      `getBeanClassLoader, overrideThreadContextClassLoader, resetThreadContextClassLoader, setBeanClassLoader`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### HessianServiceExporter

          public HessianServiceExporter()

  - ### Method Detail

    - #### handleRequest

          public void handleRequest(HttpServletRequest request,
                           HttpServletResponse response)
                             throws ServletException,
                                    IOException

      Processes the incoming Hessian request and creates a Hessian response.
      Specified by:
        `handleRequest` in interface `HttpRequestHandler`
      Parameters:
        `request` - current HTTP request
        `response` - current HTTP response
      Throws:
        `ServletException` - in case of general errors
        `IOException` - in case of I/O errors