java - Weblogic 10.3.6 上的 Weld

标签 java weblogic cdi weld

我正在尝试在 Weblogic 10.3 上运行基于 Weld、JPA2、Vaadin 的应用程序。

我的问题是 Weld 似乎注册了所有 Bean,但它们没有注入(inject)到我的 servlet 中。

以下日志消息可疑:

1433 [[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'] INFO  org.jboss.weld.environment.gwtdev.GwtDevHostedModeContainer  - Jetty detected, JSR-299 injection will be available in Servlets and Filters. Injection into Listeners is not supported.
30.08.2012 16:09:20 org.jboss.weld.environment.jetty.MortbayWeldServletHandler process
INFO: Cannot find matching WebApplicationContext, no default CDI support: use jetty-web.xml

基本上我关注了这个博客:http://jianmingli.com/wp/?p=4373用于 Weld 集成。

可能我需要根据http://docs.jboss.org/weld/reference/1.0.0/en-US/html/environments.html#d0e5036配置beanmanager但我不知道该怎么做。

有人有什么想法吗?

/亲切的问候

最佳答案

您是否按照教程中的语音步骤执行了这些步骤?

  • 您必须将 beans.xml 放在 src/META-INF 中。放在WEB-INF 里是不行的。
  • 您必须在 WEB-INF 目录中创建 weblogic.xml 并将 wls:prefer-web-inf-classes 设置为 true。否则,WEB-INF/lib jar 文件将无法正确加载。

Weblogic是一个有线应用程序服务器!我使用的是 12.1.1 版本,并且 CDI 有很多问题!

如果阅读该教程是出于学习目的,我建议不要使用 Weblogic,而是使用 jBoss AS 的 Glassfish。

JBoss developer framework在这个范围内有许多很棒的示例和教程。

关于java - Weblogic 10.3.6 上的 Weld ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12198939/

相关文章:

weblogic - 如何在 Weblogic 10g 的两个上下文根中安装一个 Web 应用程序?

java - 在 JSF 中使用构建器模式?

Java EE 6 @javax.annotation.ManagedBean 与 @javax.inject.Named 与 @javax.faces.ManagedBean

java - 为什么不在同一个服务类中调用拦截器?

java - FileInputStream/FileOutputStream 阻塞?

在 Mac 上的 Android 中创建数据报套接字时出现 java.net.BindException

jquery - 使用反向 ajax 对同一客户端进行多个 ajax 调用

java - 在oracle weblogic上使用javassist

java - 向 Spring Data Repository 添加自定义功能的问题

java - 从字符串中提取模式?