Hessian   - Protokol binary yang sederhana (lightweight) untuk menghubungkan web services.
- Menggunakan HTTP sebagai protokol transport
- Karena sederhana/kecil hessian dapat digunakan pada J2ME
- Spesifikasinya bersifat terbuka, dapat dilihat di http://www.caucho.com/resin-3.0/protocols/hessian-1.0-spec.xtp
 
 
- Dikembangkan oleh Caucho Technology
- Implementasi library java dari Caucho Tech. berlisensi Apache License
 
 
- Implementasi Hessian server berupa servlet 
- Tidak memerlukan intermediate definition language (IDL) atau schema eksternal
- Cukup menggunakan interface
 
 
- Implementasi service untuk server hanya perlu meng-extend com.caucho.hessian.server.HessianServlet
- Service pada server juga dapat berupa POJO yang kemudian menggunakan IoC 
- Contoh:
 
   import com.caucho.hessian.server.HessianServlet;
  public class BasicService extends HessianServlet implements BasicAPI {
     private String _greeting = "Hello, world";
     public void setGreeting(String greeting) {
       _greeting = greeting;
     }
     public String hello() {
       return _greeting;
     }
  }
    - Sedangkan client hanya memerlukan com.caucho.hessian.client.HessianProxyFactory untuk memanggil service di server
- Contoh:
 
   import com.caucho.hessian.client.HessianProxyFactory;
  public class BasicClient {
    public static void main(String[] args) {  
       // Setting jika menggunakan proxy
       System.getProperties().put("proxySet", "true");
       System.getProperties().put("http.proxyHost", "10.0.0.1");
       System.getProperties().put("http.proxyPort", "8080");        
       String url = "http://www.caucho.com/hessian/test/basic";  
       HessianProxyFactory factory = new HessianProxyFactory();
       BasicAPI basic = null;
       try {
          basic = (BasicAPI) factory.create(BasicAPI.class, url);
       } catch (MalformedURLException e) {
          e.printStackTrace();
       }
       System.out.println("hello(): " + basic.hello());   
    }
  }
    - Client dan server menggunakan interface yang sama yaitu:
 
   public interface BasicAPI {
     public String hello();
  }Burlap
 
No comments:
Post a Comment