Concurrency 如何在WebLogic 10.3中配置工作管理器?
我想使用WorkManager在WebLogic 10.3应用程序服务器上安排一些并行作业 我发现Oracle/BEA文档有点零碎,很难理解,而且它没有使用EJB3.0中WorkManager的好例子 具体来说,我想知道: 1) 我到底需要在部署描述符(ejb-jar.xml和friends)中放些什么 2) 我想使用@Resource注释将WorkManager注入EJB3会话bean。我对资源使用什么“名称” 3) 如何为WorkManager配置线程数和其他参数Concurrency 如何在WebLogic 10.3中配置工作管理器?,concurrency,jakarta-ee,weblogic,weblogic-10.x,Concurrency,Jakarta Ee,Weblogic,Weblogic 10.x,我想使用WorkManager在WebLogic 10.3应用程序服务器上安排一些并行作业 我发现Oracle/BEA文档有点零碎,很难理解,而且它没有使用EJB3.0中WorkManager的好例子 具体来说,我想知道: 1) 我到底需要在部署描述符(ejb-jar.xml和friends)中放些什么 2) 我想使用@Resource注释将WorkManager注入EJB3会话bean。我对资源使用什么“名称” 3) 如何为WorkManager配置线程数和其他参数 我的理解是WebLogi
我的理解是WebLogic上的底层实现是CommonJ,但如果可能的话,我更愿意使用非专有的方法。首先,您可以在中找到CommonJ的文档,CommonJ是由BEA Oracle和IBM开发的计时器和工作管理器API的实现。它们提供了一个工作管理器示例,但未在本文档中介绍 1) 我到底需要在部署描述符(ejb-jar.xml和friends)中放些什么 根据该节: 工作经理的定义如下: 通过中的资源引用的服务器级别 适当的部署描述符。 这可以是web.xml或ejb-jar.xml 除其他外 下面是部署描述符 片段演示了如何配置 a
工作经理
:
...
<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>
...
3) 如何为WorkManager配置线程数和其他参数
有关工作经理的详细信息,请参见元素和的描述
我的理解是WebLogic的底层实现是CommonJ,但如果可能的话,我更喜欢使用非专有的方法
我没有任何其他建议(而且,只要此实现符合标准,我不介意使用它)。Weblogic文档将回答您的问题。
看起来1)和2)是同一事物的两个不同版本吗?我假设你只需要做2)是一个纯EJB3应用程序?我也这么认为。但我做了测试1),而不是2)我最终放弃了工作经理,转而采用本文中描述的使用TimerService的方法。更简单、更便携,更适合我的简单需求。
@ResourceRef(jndiName="java:comp/env/wm/MyWorkManager",
auth=ResourceRef.Auth.CONTAINER,
type="commonj.work.WorkManager",
name="MyWorkManager")