[英]JNDI tree: custom work manager vs. default work manager
我通過 Weblogic 控制台創建了一個全局范圍的自定義工作管理器“WorkManagerHighPrio”。
默認工作管理器“default”列在 JNDI 樹中,可以通過java:global/wm/default
查找其引用。 我想知道為什么我的自定義工作管理器沒有在 JNDI 樹中列出,而且查找 URL 是java:comp/env/wm/WorkManagerHighPrio
。
java:global
與java:comp/env
我簽入了config.xml
,兩個工作管理器的配置類似:
<work-manager>
<name>default</name>
<target>app01_cluster</target>
<min-threads-constraint>default_MinThreads</min-threads-constraint>
<max-threads-constraint>default_MaxThreads</max-threads-constraint>
<ignore-stuck-threads>false</ignore-stuck-threads>
</work-manager>
<work-manager>
<name>WorkManagerHighPrio</name>
<target>app01_cluster</target>
</work-manager>
我需要將自定義工作管理器綁定在 java:global/wm 中,因為我需要在資源適配器中使用這個工作管理器。
WorkManager wm = (WorkManager) ic.lookup("java:global/wm/default");
在資源適配器應用程序中,我設法通過查找來檢索默認工作管理器的引用,即使我遇到了下一個問題:
weblogic.work.j2ee.J2EEWorkManager cannot be cast to javax.resource.spi.work.WorkManager
我想,如果我在 ra 中查找工作管理器,它會自動轉換為javax.resource.spi.work.WorkManager
,但我錯了。
您必須使用的“WorkManager” class 是: commonj.work.WorkManager
。
如文檔中所述:
工作經理 API
工作管理器 API,commonj.work,提供了一組接口,允許應用程序在容器內同時執行多個工作項。
那里也有一個簡單的“工作管理器示例”:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.