Hessian (web service protocol)

From LIMSWiki
Revision as of 19:37, 18 September 2014 by Shawndouglas (talk | contribs) (Added ref)
Jump to navigationJump to search
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.