我想声明一个工作管理器在托管线程中执行一些工作。
Weblogic 文档告诉我们可以
- 使用管理控制台声明一个全局工作者管理器
- 在 ejb-jar.xml 配置文件中声明一个本地它。
我想使用第二个选项。但是我的 ejb-jar.xml 是由 ejbgen 工具生成的。
ejbgen 中没有允许我声明工作管理器的标记。
那么我应该如何创建本地工人经理声明?
我收集了一些有趣的答案,作为我自己问题的答案发布。
我想声明一个工作管理器在托管线程中执行一些工作。
Weblogic 文档告诉我们可以
- 使用管理控制台声明一个全局工作者管理器
- 在 ejb-jar.xml 配置文件中声明一个本地它。
我想使用第二个选项。但是我的 ejb-jar.xml 是由 ejbgen 工具生成的。
ejbgen 中没有允许我声明工作管理器的标记。
那么我应该如何创建本地工人经理声明?
我收集了一些有趣的答案,作为我自己问题的答案发布。
我假设您将您的工作管理器定义为ejb-jar.xml 中记录的示例resource-ref
,如下所示 -
...
<resource-ref>
<res-ref-name>wm/MyWorkManager</res-ref-name>
<res-type>commonj.work.WorkManager</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
...
因此,您可以使用该@ejbgen:resource-ref
任务在 ejb-jar.xml 中生成它,如此处所述
对于这个问题,我有一些有用的答案:
使用默认工作管理器
WorkManager wm = (WorkManager) new InitialContext().lookup("java:comp/env/wm/default";
使用weblogic-application.xml
来配置工作管理器,而不是在 ejb-jar.xml 中配置它
使用将包含工作管理器声明的共享库(weblogic 9+ 功能)。