问题标签 [weld-se]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1145 浏览

java - 为什么我的拦截器在 Weld SE 单元测试中失败?

我有一个拦截器,当我在 Web 应用程序中使用它时,它似乎被 JBoss(EAP 6.4)正确加载,但当我在weld-se 上下文中使用相同的 beans.xml 时被拒绝。

和一个测试:

当我运行测试时:

我真的不知道应该添加或删除什么,为什么 Weld org.jboss.weld.se:weld-se:1.1.28.Final 似乎对 JBoss 中的同一个版本的焊接做不同的事情?

编辑:我的 beans.xml:

再次编辑我的pom:

0 投票
1 回答
884 浏览

java - 在 Java SE 中焊接 CDI:过早调用 PreDestroy 注释方法?

给出以下代码,我想知道为什么在调用 @PreDestroy 注释方法 (CacheManager#doCleanup) 后 CacheManager 仍然“活动”(请参阅​​本文末尾的输出)。Weld 不知道它仍然被引用的事实吗?以及当对象真的不再使用时如何调用此方法?

主班

MyLaucher 类

PeriodicScanner 类...

CacheManager 类

输出是:

如您所见,周期性扫描器在容器关闭后仍然存在。目前,防止过早调用doCleanup()的唯一方法是在 startScanner()返回的 Future 对象上调用 get( )

这样,主应用程序线程就不会退出。

有人知道更好的方法吗?

谢谢

0 投票
3 回答
1135 浏览

cdi - Weld 3 启动时发出警告,其中 XSD 无效 beans.xml 用于焊接:扫描标记

我刚刚将 Weld 从 2.4.4 版本更新到 3.0.1。我在应用程序启动时遇到以下错误,我找不到解决方案。我正在使用焊接 SE。

包含一个特定于焊接的beans.xml标签以在扫描中包含一些类(因为 CDI 规范仅支持排除)。

我使用以下 Maven Weld SE 依赖项。

你能告诉我我应该怎么做才能解决这个问题吗?我检查了 CDI 2.0 XSD,但没有找到。也许,CDI 现在原生支持扫描的包含限制?或者 Weld XSD 可能发生了变化?

我已经在Weld 的错误跟踪器上创建了一张票,以防它是一个错误。

0 投票
1 回答
148 浏览

java - 连接到 WELD-SE 类路径扫描器

我一直在寻找关于 WELD-SE 的类路径扫描器 API 的文档,但一直没有找到。我正在尝试本着 Servlet、WebSocket 和 JAX-RS API 的精神发现带有自定义注释的 POJO。有没有办法用 WELD 做到这一点?

我意识到已经有一些库可以进行类路径扫描,例如 Scannotation、FastClasspathScanner、Corn-CPS 等,但我正在努力保持这个项目的精简,并且不介意与 WELD 紧密集成。

0 投票
2 回答
1740 浏览

java - Weld-SE 未启动,未找到 bean 存档

我试图在我的 Quartz 应用程序中初始化 CDI-SE 上下文,所以我有以下依赖项(maven):

在我的 JobQuartz 中,我有 execute() 方法,其中包含以下内容:

但我收到以下错误:

我的项目是 WAR,所以我把 beans.xml 文件放在里面/src/main/webapp/META-INF/,看内容:

我将文件复制到/src/main/resource/META-INF,但我得到了同样的错误。

0 投票
1 回答
114 浏览

java - 焊接示例中的 JNI 错误

实际上,我想使用 Weld-SE 创建一个类似于 JavaSE 应用程序的小型“Hello WOrld”示例,但似乎存在运行时错误。

这是我的课:

这是我的 pom.xml:

我已经安装了 Java JDK 1.8.0_151 和 Maven 3.5.2。编译过程成功,但是当我在目标目录中执行创建的 jar 文件时,我会一直收到以下错误:

有什么我没有提到或我做错了吗?是否有任何依赖性,不包括在内?

我再次安装了 Java、Maven 和 Eclipse,但没有任何帮助。

非常感谢丹尼尔

0 投票
1 回答
208 浏览

cdi - 批处理作业完成之前的范围冲突?

技术栈:

  • JBeret (core, se) 1.3.0.Final
  • Hibernate Search (orm, jsr352-core, jsr352-jberet) 5.10.4.Final
  • Weld (servlet-core, se-core) 3.0.5.Final

如果我触发

BatchRuntime.getJobOperator().start( MassIndexingJob.NAME, MassIndexingJob.parameters().forEntity(getDomainObjectClass()).build() );

然后我遇到了在批处理作业完成之前无法访问批处理作业之外RequestScoped的任何CDI 组件的情况SessionScoped

我该如何解决这个问题?

堆栈跟踪的一部分

注释@ActivateRequestContext在启动/部署时生成此堆栈跟踪

0 投票
1 回答
123 浏览

java - 如何为泛型继承类型注入?

我花了很多时间寻找任何答案,但我想我必须问。

我正在使用 Weld-SE 来测试我的实体。

我准备了实体随机器进行测试。

现在,在我的测试类中,我想注入那些与通用参数匹配的随机器

准备了随机化器和测试的子类。

但我没能成功。

我怎样才能让它工作?

我尝试了以下工厂课程

我有

0 投票
1 回答
74 浏览

cdi - Weld CDI:尽管有 cdi-spec,但超类替代品的生产商仍然有效

给定

及其替代方案:

比恩在哪里

注入 MainClass:

然后:

没有错误。我原以为必须使用 addBeanClass 添加Bean.class才能满足MainClass中的注入。解释是BeanContainerAlt的超类,其Producers应该是无效的,产生了Bean-Object。这种行为是有意的还是根据规范(我没有找到),它可能在焊接文档中定义吗?

源代码可以在 examplesrc中找到

在那个项目中应该让它运行

0 投票
1 回答
81 浏览

jar - 从命令行运行时,weld-se 无法在类路径的不同 jar 中找到 bean

我有一个使用weld-se 的简单独立应用程序,但是我无法从类路径上的所有bean 档案中检测到bean

基本上,我在运行的目录中有一堆 jar 文件:

其中两个 jar 文件是 bean 档案,并且很好地发现了发生weld.initialize() 的 jar 中包含的 bean。

但是,来自其他 jar 文件的那些将被完全忽略。这对我来说似乎很奇怪,尽管我不知道这是否真的是它的意图。如果是这样,有什么不同的解决方案?