-
Notifications
You must be signed in to change notification settings - Fork 11.1k
Description
Original issue created by AaronJWhiteside on 2013-05-28 at 09:34 PM
In JEE7 CDI (CDI 2.0) is enabled by default (without a beans.xml needing to be present), with no standardized way of disable it.
com.google.common.util.concurrent.ServiceManager is annotated with @Singleton and has a constructor...
@Inject ServiceManager(Set<Service> services) {
this((Iterable<Service>) services);
}
So any war or ear that contains a guava 14.0.1 jar suffers from CDI seeing this and trying to create the bean but failing and thus failing the entire war from loading.
This error is from Glassfish 4.0
[2013-05-23T15:08:35.664-0700] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core] [tid: _ThreadID=34 _ThreadName=admin-listener(2)] [timeMillis: 1369346915664] [levelValue: 1000] [[
Exception while loading the app : CDI deployment failure:WELD-001408 Unsatisfied dependencies for type [Set<Service>] with qualifiers [@Default] at injection point [[BackedAnnotatedParameter] Parameter 1 of [BackedAnnotatedConstructor] @Inject com.google.common.util.concurrent.ServiceManager(Set<Service>)]
org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [Set<Service>] with qualifiers [@Default] at injection point [[BackedAnnotatedParameter] Parameter 1 of [BackedAnnotatedConstructor] @Inject com.google.common.util.concurrent.ServiceManager(Set<Service>)]
The same WAR also fails to deploy on Firefly 8.0 with a similar error.
Can guava be modified to not use the @Singleton and @Inject annotations?