Технология CORBA (Общая Архитектура Брокера Объектных запросов): интерфейс, управление объектами. Создание сервисного приложения, простейшего объекта. Установка связи между клиентом и серверным объектом. Массивы, обработка ошибок и устойчивость к сбоям.
Аннотация к работе
архитектура объектный запрос база данные CORBA(Common Object Request Broker Architecture)- Общая Архитектура Брокера Объектных запросов Это стандарт, набор спецификаций, для промежуточного программного обеспечения объектного типа, возникающий в результате самого широкого обсуждения накопившихся реальных проблем, в котором участвуют и разработчики и потребители технологий. Под термином CORBA понимается именно сложная и развитая концепция, которая сформулированна на уровне специального языка описаний - IDL. Под стандартом применительно к CORBA понимается то, что официально утверждено консорциумом OMG. Технология CORBA Спецификация CORBA (Common Object Request Broker Architecture) разработана группой компаний Object Management Group и описывает основанный на объектах способ создания распределенных приложений, то есть как осуществляется взаимодействие объектов клиента и сервера. За его основу был взят язык C , поэтому нам студентам, знакомым с C , при работе с IDL будет достаточно удобно пользоваться данной технологией. Теперь осталось написать код функции main(): #include #include #include MyInterfaceImpl.h #pragma argsused main(int argc, char* argv[]) { try { // Инициализация взаимодействия с CORBA CORBA::ORB_var orb = CORBA::ORB_init(argc, argv); // Создание серванта будущего CORBA-объекта MyInterfaceImpl* servant = new MyInterfaceImpl; // Создание временного (transient) // CORBA-объекта и получение объектной ссылки CORBA::Object_ptr oRef = servant->_this(); // Преобразование объектной ссылки в строку CORBA::String_var str = orb->object_to_string (oRef); // Запись в файл ofstream oref_file (MyORef.ior); oref_file.write (str, strlen(str) 1); oref_file.close(); cout run(); } catch(const CORBA::Exception& e) { cerr resolve_initial_references(RootPOA); PortableServer::POA_var rootPoa = PortableServer::POA::_narrow(rpObj); Дочерние POA создаются с помощью обращения к уже созданным POA как к фабрикам.