大家好,我有以下代码试图使用
CDI
的
@produces
import java.sql.Connection;
import javax.enterprise.inject.Produces;
public class ConnectionSupplier
{
@Produces
@Connect
public Connection getConnection()
{
}
}
这是
@connect
@Qualifier
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD, ElementType.FIELD})
public @interface Connect{}
我们在这里制作
注射
import com.seta.history.db.entities.Day;
import java.sql.Connection;
import javax.enterprise.context.RequestScoped;
import javax.inject.Inject;
import javax.inject.Named;
@RequestScoped
@Named("day")
public class DayController
{
@Inject
@Connect
private Connection connection;
public void save(Day day)
{
}
}
但它给出了以下例外
Severe: Exception during lifecycle processing
org.glassfish.deployment.common.DeploymentException: CDI deployment
failure:WELD-001408: Unsatisfied dependencies for type Connection with
qualifiers @Connect
at injection point [BackedAnnotatedField] @Inject @Connect private
com.seta.history.db.controllers.DayController.connection
at
com.seta.history.db.controllers.
DayController.connection(DayController.java:0)
我正在使用
+
玻璃鱼4.1.2
注释
我们通常用玻璃鱼和
CDI