2011-12-19 50 views
4

我们有一个使用corba调用多个第三方系统的Java客户端。这些是实现相同接口集合的不同系统。我们提供了库(jar文件)来使用这些接口。例如,从这些库目的之一是兼容Java类名称

this.that.GeneralException 

现在我们必须连接到另一个外部系统,但是他们通过引入一些包的水平,像换了命名:

org.example.this.that.GeneralException 

我的猜测是,上面的类将被认为是完全不同的。于是我做了一个老客户的副本,切换到新的库,并根据新的命名方式更改参考。 由于缺乏新系统的测试环境,我将该客户端连接到其中一个旧系统。而且,非常好,它工作得很好。

这是什么有关corba或我在这里失踪?

编辑

刚刚收到照会的第三方开发者之一。实际上,这与corba无关。相反,他们正试图维持其系统的向后兼容性。因此,他们将新的命名方案映射到旧的命名方案,现在正在同时提供两个名称下的界面。

回答

0

其实,这与corba没有任何关系。相反,他们正试图维持其系统的向后兼容性。因此,他们将新的命名方案映射到旧的命名方案,现在正在同时提供两个名称下的界面。

3

通常通过IDL生成CORBA的存根和骨架。 IDL定义的一部分定义了Java生成存根的情况下的包结构。通过更改客户端接口类的包结构,您基本上已经实现了ORB在客户端和服务器之间预期的合同。您遇到的唯一问题将是客户端存根引用服务器上不存在的方法的位置。

+0

可以解决_problem_,看我上面的编辑。 – TPete 2011-12-20 07:57:14