使用已更改的接口

时间:2016-07-07 17:14:54

标签: java-ee interface ejb

今天我用EJB做了一些实验。

JavaEE 6

Websphere 8.0.x

我有一个定义一些远程方法的接口:

interface Calculator{
  int add(int x, int y);
  int mul(itn x, int y);
}

此接口由EJB实现。

此外,我有另一个EJB调用Calculator-EJB 来自另一个应用程序(耳朵)。所以我总共部署了 两个耳朵文件,一切正常。

现在我更改了Calculator接口,我删除了mul方法, 但是在实现EJB类中,仍然实现了mul方法, 我刚刚删除了@override注释。 现在,我使用实现更改接口的EJB重新部署了耳朵。

令我惊讶的是,另一个耳朵应用程序仍然能够调用 多元方法。

这是EJB标准的一部分吗?

之后我将Calculator接口重命名为Calculator2 并重新部署实现这个新接口的EJB。

另一个耳朵应用程序,只有旧计算器 接口,仍然可以调用新的方法 部署了EJB,它只实现了新的Calculator2接口。

同样的问题:这是EJB标准的一部分吗?

1 个答案:

答案 0 :(得分:1)

这应该是EJB3.1规范的“无接口视图”。

可以在没有接口的情况下访问EJB公开的所有方法。 但是我不确定你是否可以将NoInterfaceView与接口并行,这可能不符合规范。