我有一个 EJB 返回我自己的 ValidationMessage
对象的列表:
@Remote
public interface Intf {
List<ValidationMessage> validateFile();
}
我正在使用 weblogic 的 appc 实用程序生成 EJB 客户端 JAR。问题是它没有将 ValidationMessage
类包含到客户端 JAR 中。也许它看不到对此类的依赖,因为它只查看已编译的代码,而通用信息已被删除。
如果我向接口(interface)添加另一个直接返回此类的虚拟方法,一切都很好。
@Remote
public interface Intf {
List<ValidationMessage> validateFile();
ValidationMessage dummy();
}
我的问题是:有没有办法在不添加虚拟方法的情况下解决这个问题?有没有办法控制客户端 JAR 中 appc 包含的内容?
最佳答案
这不是实际答案,我不了解 WebLogic 或 appc 实用程序。
这看起来像是泛型删除问题。 validateFile()
方法的实际返回类型是原始类型 List
;虽然类文件中有额外的信息来重建类型参数,但一些工具不会检查它们。
我预测如果您还在方法参数中引用缺失的类,这个问题就会消失。
关于java - 网络逻辑 appc : include generic arguments in the ejb client jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3256672/