CIS-390: Design of Large Software Systems

Homework #5: CORBA

Due: Wednesday, May 1

This assignment is to implement a Java client for a simple bulletin board server written in Python using CORBA. Your solution should meet the following requirements:

The interface definition for the server is given in OMG IDL:

module BBS {
    struct Date {
        short year;
        short month;
        short day;

    struct Message {
        Date postingDate;
        string topic;
        string body;

    typedef sequence<Message> MessageList;

    interface BulletinBoard {
        void post(in Message msg);
        MessageList getAllMessages();
        MessageList getMessagesByTopic(in string topic);



Some of the OMG IDL to Java language mappings include:

The nameserver string for the server BulletinBoard object is: You shouldn't need the server source code, but it is available here if you want it.