Вопрос
Насколько я знаю, в прошлом возникали проблемы с несовместимыми реализациями CORBA, вызванные различными интерпретациями спецификации.Как обстоит ситуация сегодня?Могу ли я ожидать, что две разные реализации будут взаимодействовать без проблем?
Решение
Я работал с материалами corba последние 8 лет.Это стандарт (ASAM ODS OO API), и он использует Corba для реализации API между сервером и клиентами.
Мы долгое время не могли найти несовместимости.(java, jorb, mico, omniorb / C ++ / Java)
Когда мы начинали, в основном были проблемы со службами имен (другой порт, ...), но до тех пор мы не выясняли никакой реальной несовместимости.
Я думаю, что разница между различными реализациями orb может заключаться в функциях, которые представлены реализацией.
Что все еще существует, так это то, что скорость разных реализаций различается.
Другие советы
В то время, когда я тестировал совместимость реализации CORBA Sun (теперь Oracle) (Java SE 1.4.0) с моей собственной, я обнаружил, что CORBA it в Sun неправильно переключается с большого на маленький порядковый номер (CORBA должна быть способна обрабатывать как большие, так и маленькие порядковые номера сообщений, определяя порядок байтов из заголовка).Реализация на основе C, которая отправляет первое сообщение, используя значение little endian по умолчанию, не смогла бы общаться.
О проблеме сообщалось как ошибка 4119129 и, кажется, теперь исправлено.Я публикую, потому что, возможно, кто-то пробовал в то время и помнит, что это не сработало с.
В то время это был один из причины вместо этого использовать JacORB.