【发布时间】:2018-05-04 06:20:11
【问题描述】:
我正在研究将应用程序从 GlassFish 3 迁移到 Payara 4 的 POC。我已经在 Payara 中完成了所需的配置设置,例如 jdbc 连接池、队列等。应用程序中有 EJB 组件,但它构建成一个war 文件并在 GlassFish 3 服务器上部署和运行。但是,当我尝试在 Payara 4 上部署时,CDI 错误显示为:
部署期间发生错误:加载应用程序时出现异常:CDI 定义失败:HV000151:覆盖另一个方法的方法不得更改参数约束配置....
错误堆栈跟踪: 引起:javax.validation.ConstraintDeclarationException:HV000151:覆盖另一个方法的方法不得更改参数约束配置,... 在 org.hibernate.validator.internal.metadata.aggregated.rule.OverridingMethodMustNotAlterParameterConstraints.apply(OverridingMethodMustNotAlterParameterConstraints.java:24) 在 org.hibernate.validator.internal.metadata.aggregated.ExecutableMetaData$Builder.assertCorrectnessOfConfiguration(ExecutableMetaData.java:460) 在 org.hibernate.validator.internal.metadata.aggregated.ExecutableMetaData$Builder.build(ExecutableMetaData.java:378) 在 org.hibernate.validator.internal.metadata.aggregated.BeanMetaDataImpl$BuilderDelegate.build(BeanMetaDataImpl.java:677)
由于 CDI 启用是 Payara 中添加的新功能,因此在将应用程序从较低版本的 GF 迁移到 Payara 时必须进行一些配置更改,这似乎很难理解。那么有没有办法在 Payara 上实际部署这个 war 文件呢?
【问题讨论】:
标签: jakarta-ee ejb cdi overriding payara