我们最近从Jboss 4.2迁移到Jboss EAP 6.4。在我们的一个EJB类中,我们有过载方法create(AbstractBean)和create(AbstractEntity)。 AbstractEntity类正在扩展AbstractBean类。当我们尝试在Jboss 6.4实例中调用create(AbstractBean)方法时,我们得到了IllegalArgumentException:参数类型不匹配错误,但我们没有在Jboss 4.2中获得此异常。
当我们注释掉create(AbstractEntity)方法时,异常没有发生,当我们尝试使用反射调用方法时,异常没有发生。
但我们只是想知道在服务器配置中有什么要解决的问题,或者如上所述使用反射是一个正确的解决方案。
任何人都可以帮助我们正确理解Jboss6.4的行为。
答案 0 :(得分:0)
我们在一个类中有两个方法,它们具有不同的arugment类型,但是一个方法的参数类型扩展了其他方法的参数类型,因此JBoss最终出现了模糊错误。我们已经使用派生类作为参数删除了该方法,并将超类保留为一。这解决了我们的问题。