- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经查看了 SO 上的其他相关问题,但没有找到我的问题的答案。
我正在从 JBoss AS 7.11 升级到 Wildfly 8.2,并且遇到了人们所说的“臭名昭著的 WELD-001408
”问题。然而,我的情况似乎有所不同,因为我们没有使用任何 @Inject
注释,或者据我所知任何会导致验证错误的东西。
下面的堆栈跟踪似乎表明异常是由焊接 validator 本身与限定符@Default
引起的。这对任何人都有意义吗?
我强调,我的应用程序中的任何地方都没有 @Inject
和 @Default
注释。所以,这个异常是神秘的。
任何人都可以为我指明正确的方向,让我的应用程序在 Wildfly 8.2 中启动并运行吗?
如果需要任何其他信息,请询问,如果可能,我会提供。
谢谢!!!
编辑 [2015 年 5 月 12 日]:
我想知道这是否与 hibernate validator 有关?
来自 pom.xml:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.1.3.Final</version>
<scope>runtime</scope>
</dependency>
我是否正确使用了 hibernate validator ?是否需要提供一些配置?是否可以使用其他 validator 来代替?
<小时/>wildfly 启动时的堆栈跟踪:
11:21:57,196 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC000001: Failed to start service jboss.deployment.unit."search.war".WeldStartService: org.jboss.msc.service.StartException in service jboss.deployment.unit."search.war".WeldStartService: Failed to start service
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904) [jboss-msc-1.2.2.Final.jar:1.2.2.Final]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_21]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_21]
at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_21]
Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001408:
** Unsatisfied dependencies for type Validator with qualifiers @Default
at injection point [UnbackedAnnotatedField] @Inject private **
org.hibernate.validator.internal.cdi.interceptor.ValidationInterceptor.validator
at org.hibernate.validator.internal.cdi.interceptor.ValidationInterceptor.validator(ValidationInterceptor.java:0)
WELD-001475: The following beans match by type, but none have matching qualifiers:
- ValidatorBean [id=org.hibernate.validator.internal.cdi.ValidatorBean_hv]
at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:372)
at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:293)
at org.jboss.weld.bootstrap.Validator.validateInterceptor(Validator.java:569)
at org.jboss.weld.bootstrap.ConcurrentValidator$2.doWork(ConcurrentValidator.java:85)
at org.jboss.weld.bootstrap.ConcurrentValidator$2.doWork(ConcurrentValidator.java:83)
at org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:60)
at org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:53)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [rt.jar:1.7.0_21]
at java.util.concurrent.FutureTask.run(FutureTask.java:166) [rt.jar:1.7.0_21]
... 3 more
最佳答案
抱歉(我知道您正在使用 JBoss 或 Wildfly),但我只是为使用 Liberty 或 Websphere 服务器的用户添加此答案,因为相同的消息“WELD-001408: Unsatisfied dependencies for type Validator with qualifiers @Default
”也出现在这些服务器中。
无论如何,问题描述可以帮助您解决 JBoss 中的问题
问题描述
If your application includes the class Validator.class (including in internal jar files) Liberty may get confused between the the classfile in your application and the class file installed inside liberty itself leading to a WELD-001408: Unsatisfied dependencies for type Validator with qualifiers @Default exception.
我遇到了你的问题,但在Liberty V16.0.0.3中,我通过添加修复了它
<cdi12 enableImplicitBeanArchives="false"/>
在server.xml文件中
这里是描述问题及其修复的链接 http://www-01.ibm.com/support/docview.wss?uid=swg1PI71667
顺便说一句,这个问题已在 Liberty V16.0.0.4(现在是最后一个版本)中修复
关于java - 焊接-001408 : Unsatisfied dependencies for type Validator with qualifiers @Default,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30172992/
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?将问题更新为 on-topic对于堆栈溢出。 5年前关闭。 Improve this qu
我想编写一个小型 SE 应用程序来运行特定于操作系统的命令。这些命令作为“插件”提供给主应用程序,以便能够在运行时添加新的命令实现。这是一个强制性请求:不需要重新部署主应用程序来执行新插件。 所以,我
我找到了 CDI/Weld: book or resource recommendation ,是的,这是同一个问题,但现在已经“老”了,所以我想知道这个问题是否有任何更新? 我正在学习 Java E
我在尝试在同一个项目中使用两个专门处理第三个 bean 的 Bean 时发现了此错误。即使其中一个是通过 beans.xml 激活的,而另一个则没有。 我在文档中没有找到任何有关此行为的引用,这对我来
假设我有一个名为 SocialNetworkService 的接口(interface), 和三个实现 - TwitterService , FacebookService和 FriendFeedSe
我正在 eclipse helios 中尝试 JSF2 CDI(焊接)bean,而不是 ManagedBeans,但无法在我的 Named beans 的表达式语言中执行自动完成( #{myNamed
我正在开发一个 Java EE 5 网络应用程序。我也许可以在某个时候将它升级到 EE 6,但目前不能。 Web 应用程序在 Tomcat 6 中运行。我可以使用 CDI 吗? 我在 Weld doc
经过 2 天的调试和尝试,除了向您寻求解决方案外,我别无他法。 我想在 Tomcat WebApp 中使用 CDI(在 JEE6 上),只有简单的普通旧 Java 对象(目前)。据我所知,将 POJO
我当前的工作是将我的 Java EE 应用程序从 Jboss 7 服务器迁移到 Wildfly 10。我在集成 CDI 和 Spring-Data 时遇到问题。我使用与 Jboss 7 相同的配置。当
我刚刚切换到 Weld 以使用 CDI JSF 2 Beans + 对话范围。 这是我的 maven 依赖: org.jboss.weld.servlet w
我已经查看了 SO 上的其他相关问题,但没有找到我的问题的答案。 我正在从 JBoss AS 7.11 升级到 Wildfly 8.2,并且遇到了人们所说的“臭名昭著的 WELD-001408”问题。
我正在实现一个使用 Jersey、Hibernate 和 DataSources 的 JAX-RS,但在纠正了很多错误之后,我遇到了一个无法找到解决方案的问题 Caused by: org.jboss
我有两个基础类A和B。 B 被注入(inject)到 A 中。我在 A 和 B 中注入(inject)了第三个类 C,如下所示: class A { @Inject B b; @Inj
我的 webapp 在 src/main/resources/META-INF 下有一个非空的生产 beans.xml。现在,对于我的测试,我需要将 1 个 bean 换成另一种。 我应该把这个测试
我在 @Inject 时收到错误。我不明白为什么。 我的应用程序服务器:GlassFish 4.1.2 当我@Inject我创建的类时,服务器给出错误 java.io.IOException: com
我是一名优秀的程序员,十分优秀!