Saturday, August 13, 2005

Mengenal protokol Hessian/Burlap

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:

Followers