Hessian (web service protocol)

From LIMSWiki
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Hessian Web Service Protocol
Developer(s) Caucho Technology, Inc.
Development status Active
Written in Java, Python, and ActionScript
Operating system Cross-platform
Type Web service protocol
License(s) Apache License 2.0
Website hessian.caucho.com

Hessian is a binary HTTP-based protocol originally developed by Caucho Technology, Inc. Hessian has a companion protocol, Burlap, which is XML-based. Both protocols were originally meant to be lightweight and "use their own serialization algorithms for primitive types, collections, and so on."[1] Both were created despite the existence of numerous RPC (remote procedure call) protocols, which yielded an innefficient increase in binary data size during connection to a Web service.[2] As the developers put it, "none met our application's needs."[3]

Hessian was built to be fast, support object serialization, and leave wire protocols invisible to developers.[2][4] Both Hessian and Burlap act as "ordinary Java objects" not requiring special classes to implement interfaces, following "design by interface" principles.[5]

Both Hessian and Burlap were originally implemented in Resin, Caucho's Java-based Web and application server.[3][6] Support for the protocols has also been built into the Spring Framework, an open-source application framework and "inversion of control" container for the Java platform.[7]

Adaptations

Although Hessian is primarily intended for Web services, it can be adapted for TCP traffic by using the HessianInput and HessianOutput classes in Caucho's Java implementation.[8]

External links

Implementations

References

  1. Johnson, Rod; Hoeller, Juergen; Arendsen, Alef; Risberg, Thomas; Sampaleanu, Colin (2005). Professional Java Development with the Spring Framework. Wiley Publishing, Inc. pp. 672. ISBN 0764574833. http://book.javanb.com/Professional-Java-Development-with-the-Spring-Framework/BBL0070.html. Retrieved 18 September 2014. 
  2. 2.0 2.1 Hightower, Richard; Gradecki, Joseph D. (2003). "Chapter 9: Hessian Binary Web Service Protocol". Mastering Resin. Wiley Publishing, Inc. pp. 179–198. ISBN 9780471467465. http://books.google.com/books?id=XunF69glXuwC&pg=PA179. Retrieved 18 September 2014. 
  3. 3.0 3.1 "Resin Documentation - Protocols". Caucho Technology, Inc. http://www.caucho.com/resin-3.1/doc/hessian.xtp. Retrieved 18 September 2014. 
  4. "Resin Documentation - Hessian 1.0.2 Specification". Caucho Technology, Inc. http://hessian.caucho.com/doc/hessian-1.0-spec.xtp. Retrieved 18 September 2014. 
  5. Bengoli, Edmon (17 February 2005). "New Protocol Offers Simple, Efficient Java RMI". DevX.com. QuinStreet Inc. http://www.devx.com/Java/Article/27300. Retrieved 18 September 2014. 
  6. "Using Hessian". Caucho Technology, Inc. http://www.mieco.com.my:8080/ref/hessian.xtp. Retrieved 18 September 2014. 
  7. "Package org.springframework.remoting.caucho". The Spring Framework Project. 2004. Archived from the original on 30 May 2004. https://web.archive.org/web/20040530153944/http://www.springframework.org/docs/api/org/springframework/remoting/caucho/package-summary.html. Retrieved 18 September 2014. 
  8. Cruz, Leandro Rodrigo Saad (4 August 2007). "Hessian server outsite servlet container". http://comments.gmane.org/gmane.text.xml.hessian.interest/102. Retrieved 18 September 2014.