簡體   English   中英

帶有限定符[@Default]的[PartitionManager]類型的依賴關系未滿足?

[英]Unsatisfied dependencies for type [PartitionManager] with qualifiers [@Default]?

我正在嘗試創建一個簡單的企業應用程序,該應用程序利用PicketLink JPA IDM進行用戶管理。 我的結構如下:

應用程序EAR-Web應用程序(WAR)-EJB(JAR)

PicketLink庫在JBoss EAP 6.1上作為模塊提供。

我正在嘗試簡單地@Inject PartitionManager ,但一直收到錯誤。 我嘗試將其注入到EJB和POJO中,兩者的結果相同。 在我的WAR中,我有一個簡單的動作類,如下所示:

@Named
public class TestAction {

  @Inject
  private PartitionManager partitionManager = null;

  public void runTest() {
  if (partitionManager == null) {
  System.err.println("NULL");
  } else {
  System.out.println("NOT NULL");
  }
  }
}

但是,當我嘗試部署此類時,出現以下錯誤:

[0m[31m21:15:47,527 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-1) MSC000001: Failed to start service jboss.deployment.unit."MyTest.ear".WeldStartService: org.jboss.msc.service.StartException in service jboss.deployment.unit."MyTest.ear".WeldStartService: Failed to start service
  at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1767) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [rt.jar:1.7.0_07]
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1.7.0_07]
  at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_07]
Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [PartitionManager] with qualifiers [@Default] at injection point [[field] @Inject private net.test.web.servlets.TestAction.partitionManager]
  at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:311)
  at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:280)
  at org.jboss.weld.bootstrap.Validator.validateBean(Validator.java:143)
  at org.jboss.weld.bootstrap.Validator.validateRIBean(Validator.java:163)
  at org.jboss.weld.bootstrap.Validator.validateBeans(Validator.java:382)
  at org.jboss.weld.bootstrap.Validator.validateDeployment(Validator.java:367)
  at org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:379)
  at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:64)
  at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
  at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
  ... 3 more

我已經嘗試了@Inject同時使用PartitionManagerIdentityManager ,兩者都導致相同的結果。 誰能解釋為什么會發生此錯誤? 創建PartitionManagerIdentityManager還需要做其他事情嗎?

似乎是PicketLink安裝程序創建的PicketLink模塊出現問題。 有一個小錯誤導致無法在JBoss EAP 6.1中正確配置它。 將JAR打包到EAR文件中毫無問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM