org.springframework.remoting.caucho
Class HessianExporter

java.lang.Object
  extended by org.springframework.remoting.support.RemotingSupport
      extended by org.springframework.remoting.support.RemoteExporter
          extended by org.springframework.remoting.caucho.HessianExporter
All Implemented Interfaces:
BeanClassLoaderAware, InitializingBean
Direct Known Subclasses:
HessianServiceExporter, SimpleHessianServiceExporter

public class HessianExporter
extends RemoteExporter
implements InitializingBean

General stream-based protocol exporter for a Hessian endpoint.

Hessian is a slim, binary RPC protocol. For information on Hessian, see the Hessian website.

This exporter will work with both Hessian 2.x and 3.x (respectively Resin 2.x and 3.x), autodetecting the corresponding skeleton class. As of Spring 2.0, it is also compatible with the new Hessian 2 protocol (a.k.a. Hessian 3.0.20+), while remaining compatible with older versions.

Since:
2.5.1
Author:
Juergen Hoeller
See Also:
invoke(java.io.InputStream, java.io.OutputStream), HessianServiceExporter, SimpleHessianServiceExporter

Field Summary
 
Fields inherited from class org.springframework.remoting.support.RemotingSupport
logger
 
Constructor Summary
HessianExporter()
           
 
Method Summary
 void afterPropertiesSet()
          Invoked by a BeanFactory after it has set all bean properties supplied (and satisfied BeanFactoryAware and ApplicationContextAware).
 void invoke(InputStream inputStream, OutputStream outputStream)
          Perform an invocation on the exported object.
 void prepare()
          Initialize this exporter.
 void setDebug(boolean debug)
          Set whether Hessian's debug mode should be enabled, logging to this exporter's Commons Logging log.
 void setSendCollectionType(boolean sendCollectionType)
          Set whether to send the Java collection type for each serialized collection.
 void setSerializerFactory(com.caucho.hessian.io.SerializerFactory serializerFactory)
          Specify the Hessian SerializerFactory to use.
 
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

HessianExporter

public HessianExporter()
Method Detail

setSerializerFactory

public void setSerializerFactory(com.caucho.hessian.io.SerializerFactory serializerFactory)
Specify the Hessian SerializerFactory to use.

This will typically be passed in as an inner bean definition of type com.caucho.hessian.io.SerializerFactory, with custom bean property values applied.


setSendCollectionType

public void setSendCollectionType(boolean sendCollectionType)
Set whether to send the Java collection type for each serialized collection. Default is "true".


setDebug

public void setDebug(boolean debug)
Set whether Hessian's debug mode should be enabled, logging to this exporter's Commons Logging log. Default is "false".

See Also:
HessianProxyFactory.setDebug(boolean)

afterPropertiesSet

public void afterPropertiesSet()
Description copied from interface: InitializingBean
Invoked by a BeanFactory after it has set all bean properties supplied (and satisfied BeanFactoryAware and ApplicationContextAware).

This method allows the bean instance to perform initialization only possible when all bean properties have been set and to throw an exception in the event of misconfiguration.

Specified by:
afterPropertiesSet in interface InitializingBean

prepare

public void prepare()
Initialize this exporter.


invoke

public void invoke(InputStream inputStream,
                   OutputStream outputStream)
            throws Throwable
Perform an invocation on the exported object.

Parameters:
inputStream - the request stream
outputStream - the response stream
Throws:
Throwable - if invocation failed


Copyright © 2002-2008 The Spring Framework.