- Hãy chắc chắn để sử dụng URL khi bắt đầu các máy chủ Di chuyển các lớp trong thư mục server vào máy chủ của bạn và bắt đầu đăng ký RMI và máy
VI/ Java IDL and CORBA:
- Ở phần trước các bạn đã làm quen với khái niệm lập trình phân tán bằng kỹ thuật RMI của Java. Phần này sẽ cung cấp cho bạn 1 khái niệm lập trình phân tán mở rộng hơn với các đối tượng được thiết kế trên nền CORBA áp dụng cho mọi ngôn ngữ lập trình.
- Không giống như RMI, CORBA cho phép bạn thực hiện phép gọi giữa các đối tượng Java với những đối tượng được viết bằng ngôn ngữ khác. Để gọi được lẫn nhau thì cần phải thông qua chương trình môi giới trung gian của CORBA gọi là Object Request Broker-ORB(Trình môi giới các yêu cầu của đối tượng) tồn tại cả trên sever lẫn client. Các tính năng của CORBA 2 định nghĩa 1 loạt các dịch vụ mà ORB có thể sử dụng cho những tác vụ quản lý khác nhau.
53 Lập Trình Hệ Thống Với Java – Tìm hiểu lập trình phân tán trong Java
- JDK 1.2 đã giới thiệu đầy đủ 1 ORB CORBA 2-compliant, đem lại những ứng dụng Java và applet khả năng kết nối tới những đối tượng CORBA từ xa. - Sau đây là những bước cho việc thực thi những đối tượng CORBA:
1. Viết interface cho đối tượng và chỉ định rõ đối tượng đó thi hành như thế nào, sử dụng IDL(interface definition language) cho việc định nghĩa interface CORBA. IDL là 1 ngôn ngữ đặt biệt dùng để định rõ các interface trong/bằng 1 dạng ngôn ngữ trung gian(language- neutral).
2. Sử dụng trình biên dịch IDL cho ngôn ngữ đích(target language) tạo ra stub cần thiết và lớp trợ giúp(helper classes).
3. Thêm code thực thi cho những đối tượng server, ngôn ngữ viết thì tùy bạn. (Khung sườn được tạo ra bởi trình biên dịch IDL chỉ là glue code(thành phần kết hợp thông qua các kết nối đặc biệt nối 2 interface khác loại). Bạn vẫn cần cung cấp code thực thi cho những phương thức server(server methods).Và biên dịch code thực thi đó.
4. Viết 1 chương trình cho server nhằm tạo và ghi nhận các đối tượng của server. Phương thức thuận tiện nhất cho việc ghi nhận là sử dụng dịch vụ naming củaCORBA(CORBA naming service), dịch vụ này tương tự như rmiregistry
5. Viết 1 chương trình cho client để xác định vị trí của các serverobject
và gọi các dịch vụ dựa và chúng.
6. Khởi động naming service và chương trình server trên server cũng như chương trình client trên client.
- Các bước trên khá giống với những bước mà bạn dùng để xây dựng các ứng dụng phân tán với RMI, nhưng có 2 sự khác niệt quan trọng là:
1. Bạn có thể sử dụng bất kỳ ngôn ngữ nào với 1 liên kết CORBA để thực thi trên client và server.
2. Bạn dùng IDL để định rõ các interface.
- Phần tiếp theo mình sẽ trình bày về việc làm sao dùng IDL để định nghĩa các giao diện CORBA(CORBA interface). Tuy nhiên, CORBA là 1 chủ đề phức tạp nên sẽ giới thiệu vài ví dụ đơn giản để bạn biết làm sao để bắt đầu