我有一个在 JBoss AS 7.1.1 上运行的基于 Java EE 6 CDI 的应用程序,它也包含一些会话 Bean。
@Stateless
public class OrderService {
@Inject
private Logger log;
@Inject
private EntityManager em;
. . . . .
}
一切正常,直到我不得不将我的 SLSB 公开为 SOAP Web 服务。所以我必须提供一个接口并声明 Web 服务:
@Stateless
@Remote(OrderServiceItf.class)
@WebService
public class OrderService implements OrderServiceItf {
@Inject
private Logger log;
@Inject
private EntityManager em;
. . . . .
}
@WebService
public interface OrderServiceItf {
. . . .
}
不幸的是,一旦我部署应用程序,无论我在哪里使用这个 Bean,我都会得到以下 WELD 异常: org.jboss.weld.exceptions.DeploymentException: WELD-001408 在注入点 [[field] 带有限定符 [@Default] 的类型 [OrderService] 的不满足依赖关系] @Inject com.telco.service.SendMessageService.orderService]
public class SendMessageService implements Serializable {
@Inject
private Logger logger;
int money;
@Inject OrderService orderService;
}
任何帮助我该如何解决这个问题?非常感谢!