Bài đăng nổi bật

Hướng dẫn thay đổi thư mục root mặc định của Docker trên Linux

Hoàn cảnh: người viết gặp một trường hợp như này Được team hạ tầng cấp cho một máy chủ gồm 2 phân vùng lưu trữ, 1 phân vùng 20GB được gắn và...

26 tháng 11, 2013

Tạo SOAP message bằng Java

Về cơ bản một SOAP message bao gồm 3 thành phần:
  • SOAP-ENV:Envelope
  • SOAP-ENV:Header
  • SOAP-ENV:Body
Như hình vẽ dưới đây:
Để  tạo một SOAP message ta tuân thủ theo các bước sau:
  • Tạo một đối tượng của javax.xml.soap.MessageFactory.
  • Sau đó tạo đối tượng javax.xml.soap.SOAPMessage từ MessageFactory.
  • Một SOAPMessage sẽ chứa toàn bộ javax.xml.soap.SOAPEnvelope" 
  • Một SOAPEnvelope sẽ chứa header và body của SOAP message 
Và ta tạo SOAP message theo code ví dụ dưới đây:

18 tháng 11, 2013

Build scribe trên Ubuntu server 12.04 64 bit



http://ycavatars.blogspot.com/2012/05/build-scribe-on-ubuntu-1204.html
>

Một số link tham khảo:

Cài các thư viện cần thiết

$sudo apt-get install make flex bison libtool libevent-dev automake pkg-config libssl-dev libboost-all-dev libbz2-dev build-essential g++ python-dev git

Cài đặt Thrift

$git clone https://github.com/apache/thrift.git
$cd thrift
$git fetch
$git branch -a
$git checkout 0.9.x # latest version at this time
# install jdk and ant if you need the java code generator
$sudo apt-get install openjdk-6-jdk ant
$./bootstrap.sh #ignore warning
$./configure
$make
$sudo make install

Kiểm tra lại thrift

#in thrift/tutorial directory
$thrift -r -v --gen java tutorial.thrift
Nếu thấy thư mục gen-java được tạo ra là được.

Cài đặt fb303

#chuyển tới thư mục thrift/contrib/fb303
$./bootstrap.sh
$./configure CPPFLAGS="-DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H"
$make
$sudo make install

Cài đặt Python Module cho Thrift và fb303

# từ thư mục thrift
$ cd lib/py
$ sudo python setup.py install
$ cd contrib/fb303/py
$ sudo python setup.py install
Để kiểm tra module python đã được cài đặt, ta chạy lệnh, nếu không có lỗi là Okey:
$ python -c 'import thrift' ; python -c 'import fb303'

Cài đặt Scribe

Chú ý phải có bước chạy ./bootstrap.sh trước khi chạy configure.
$git clone https://github.com/facebook/scribe.git
$cd scribe
$./configure CPPFLAGS="-DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H -DBOOST_FILESYSTEM_VERSION=2" LIBS="-lboost_system -lboost_filesystem"
$make
$sudo make install
Tạo biến môi trường
export LD_LIBRARY_PATH=/usr/local/lib

Cài đặt module Python cho Scribe

$ cd lib/py
$ sudo python setup.py install
Kiểm tra lại bằng lệnh, thấy không có lỗi là okey:
$python -c 'import scribe'
  Cuối cùng là chạy  'scribed'.
Một số chú ý:
  • Hiện tôi phải lấy nguồn từ git thì mới build thành công, các nguồn khác tôi thử đều có lỗi.
  • Nếu thrift phải build thông qua proxy, bạn mở file thrift/lib/java/build.properties và thêm dòng sau:
    #proxy configure
    proxy.host=10.30.11.6 #ip của proxy server
    proxy.port=3128 #port của proxy server
    proxy.enabled=true