【问题标题】:CDI error in weblogic 12.1.1weblogic 12.1.1 中的 CDI 错误
【发布时间】:2012-05-26 19:01:01
【问题描述】:

我有一个用@Named 和@RequestScoped 注释的CDI bean。 它在 Glassfish 3.1.2 中运行良好,但是当我在 Weblogic 12.1.1 中部署它时出现以下错误!

Caused By: org.jboss.weld.exceptions.DefinitionException: WELD-000075 Normal scoped managed bean implementation class有一个公共字段: public@Named @RequestScoped 类 com.x.y.web.monitoring.MyController

我的 bean 中没有任何公共字段!!!它们都是私有的,我使用 getter 和 setter。 这是 weblogic 12.1.1 中的错误吗? 如何在 weblogic 中更新焊接版本?

【问题讨论】:

  • 你在捆绑一个 AspectJ 库吗?
  • 不,我不是。当我拥有 CDI 拦截器和装饰器时,我不再需要 Aspectj! ;)
  • 我在问,因为我记得我的类路径上的不同版本的 ASpectJ 有一些问题。

标签: java weblogic java-ee-6 cdi jboss-weld


【解决方案1】:

听起来确实是 WebLogic 中的一个问题。我很确定他们使用的是旧版本的 Weld,您必须在 WebLogic 表单或联系人中询问有关更新的信息,我还没有看到有关如何更新版本的任何信息。

【讨论】:

  • 谢谢 Jason,但这是过去焊接实现中的错误吗?像 glassfish weblogic 使用 OSGi 捆绑包,我尝试用从 jboss 存储库获得的较新版本替换捆绑包,但它不起作用并给了我另一个错误!我认为 weblogic 有它自己的机制来从 jar 文件制作 OSGi 包。
  • 当然听起来像是 WebLogic 中的一个问题! ;)
  • 我不再感到惊讶了,我在 Weblogic JEE 实现中遇到了更多的错误,没有人关心(我没有付费)。所以我也不再关心并转移到更好的平台
【解决方案2】:

某些 IDE(如 Netbeans)会自动为 viewscope 导入错误的类。确保您导入了 javax.faces.bean.ViewScoped 而不是 javax.faces.view.ViewScoped

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-29
    • 1970-01-01
    • 1970-01-01
    • 2020-07-18
    • 2014-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多