问题标签 [commonj]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
5502 浏览

spring - 使用带有 GlassFish 和 Spring 3 的 CommonJ 实现

为了在 Websphere 7 和 GlassFish 3 环境之间统一部署,我决定尝试在 GlassFish 中实现 CommonJ WorkManager 和 TimerManager。但它并没有像预期的那样工作。我做了以下事情:

使用位于http://commonj.myfoo.de/的 myFOO CommonJ 实现,并将库包含到我的 domain/lib 文件夹中(包括 Spring 库)

将以下内容添加到<resources>glassfish domain.xml 的部分:

<servers>在 domain.xml 的/<server>部分中包含引用:

在我的测试应用程序的 web.xml 中添加适当的资源引用:

将以下 bean 添加到我的 applicationContext.xml:

完成所有这些设置后,所有内容都加载找到并且 Web 应用程序运行;但是,ThreadTester 类不在 Timer 上运行。

我已经逐步完成了 myFOO 代码并且 TimerManager (FooTimerManager.java) 主循环正在运行,它似乎永远不会认识到它应该每 30 秒启动一次类。

我的问题:

有没有人有使用 GlassFish 3 和 Spring 实现 JSR 236/237 (CommonJ) 的经验?

除了 myFOO 之外,我还可以使用和尝试其他实现吗?有没有人试图做我做过的事情?如果你成功了,你愿意分享你的成果吗?

谢谢!

编辑1:

我忘了提到,就 WorkManager 而言,使用带有 GlassFish 的 myFOO CommonJ 实现确实有效。不起作用是 TimerManager。这意味着我可以按需启动线程,但触发调度不起作用。

编辑2:

自从更新到 GlassFish 3.1.1,TimerManager 的 myFOO CommonJ 实现运行良好。很好!这个问题现在更像是一个 HOWTO 指南。

0 投票
2 回答
4439 浏览

multithreading - 如何忽略 Weblogic Server 中的卡住线程

我在 Weblogic Application Server 10.3.2 上运行了以下代码。在 timerExpired 上执行的长时间运行的任务花费的时间比服务器范围的 StuckThreadMaxTime 长 600 秒。我不想修改此值,而只是忽略此特定处理线程的卡住线程超时。

我可以从这里看到如何使用 commonj WorkManager 来完成:http: //download.oracle.com/docs/cd/E11035_01/wls100/config_wls/self_tuned.html#wp1069945

然后将以下内容添加到 weblogic.xml 文件中的 work-manager 标记中:

<ignore-stuck-threads>true</ignore-stuck-threads>

但是我到底如何为 Timer/TimerManager 做同样的事情呢?

web.xml

测试定时器.java:

0 投票
1 回答
1324 浏览

websphere - 尝试查找 WebSphere 7 WorkManager 时出现“AsynchBeans 服务未初始化”错误

我正在尝试使用 CommonJWorkManagerTaskExecutor作为 Quartz 的任务执行器,SchedulerFactoryBean以避免 WebSphere 中的非托管线程(在此处描述——向下滚动到“Quartz With CommonJ”部分)。不幸的是,我似乎无法查找任何默认的 WebSphere WorkManagers,也无法查找我创建的任何东西。CommonJ 的 Spring bean WorkManager

我收到ServiceNotInitializedException: AsynchBeans Service not initialized错误和堆栈跟踪:

有什么想法可以解决这个问题吗?谢谢!

0 投票
1 回答
5478 浏览

java - 即使在 Websphere 中停止应用程序后,线程也会继续运行

org.springframework.scheduling.commonj.WorkManagerTaskExecutor 我有一个使用Spring 创建并在 Websphere Application Server 8 中运行的长时间运行的线程。

问题是即使应用程序已停止,该线程仍会继续运行。该线程也需要停止,但没有发生。我什至试图用它 Thread.currentThread().isInterrupted()来检查当前线程是否被中断但它总是返回false。因此,无法通过我的代码知道线程是否应该继续运行或停止。

这是我对 WorkManagerTaskExecutor 的 spring 配置:

线程是这样执行的:

  • 我错过了什么?
  • 我该怎么做才能在应用程序停止时应用程序的线程(由应用程序生成的线程)也停止?

我认为这不被视为非托管线程,因为我正在使用适当的WorkManager注册线程,容器将其作为 JNDI 公开的资源。

更新:这是创建线程的代码。

0 投票
1 回答
406 浏览

websphere - 如何将 asyncHttpClient 与 commonj workmanager 集成?

我们有一个用例,来自最终用户的单个请求将触发对其他远程系统的 1 个或多个 http 请求。来自远程系统的所有响应都将汇总为一个对最终用户的响应。我们通过在 websphere 中使用 commonj workmanager 来实现这一点。

现在,我们想使用 asyncHttpClient 以减少线程来服务多个并发 http 调用。

所以我的问题是:

如何将 asyncHttpClient 与 commonj workmanager 集成?我们必须使用 commonj 作为线程池,因为这是在 wehsphere 中拥有托管线程的唯一方法。

请指教。

0 投票
2 回答
4004 浏览

multithreading - 需要示例代码解释 Tomcat 中的 Workmanager

我想知道如何在 Tomcat 7 中使用 WorkManager。我遇到了开源库Foo-CommonJ,但我没有找到解释用法的示例代码。FooWorkManager 的构造函数的输入参数是 commonj.work.work 类的一个实例,因为没有人提供commonj.work.work类(tomcat 和 foo-commonj 都没有)。基本上我需要一个示例代码来解释在 tomcat 中 WorkManager (FooCommonj jar) 的用法。如果 Foo-Commonj 不能正确支持 workmanager,那么还有其他选择。

0 投票
3 回答
6402 浏览

spring - Spring WorkManagerTaskExecutor 无法在 websphere 中初始化

我想使用 Websphere 工作管理器在 jee 上下文中执行异步作业,但我在创建 spring WorkManager 时遇到问题。

豆定义:

我在 websphere 帮助中找到了这个定义。但问题是这以 noClassDefFound 结束。我注意到org.springframework.scheduling.commonj自 2.xx 版以来 spring-context 中缺少pckg

它被替换为org.springframework.jca.work.WorkManagerTaskExecutor?

当我使用这个其他弹簧类时,我得到错误:

原因:org.springframework.jndi.TypeMismatchNamingException:JNDI 位置 [wm/default] 上可用的类型 [class com.ibm.ws.asynchbeans.WorkManagerImpl] 的对象不可分配给 [javax.resource.spi.work.WorkManager]

所以这里有什么交易?谢谢

是 - 7.0.0.23 春天 - 3.1.2

0 投票
1 回答
5670 浏览

java - Weblogic Server 11g 上的自定义线程

我的 weblogic 服务器上需要一个自定义 threda;我不能使用 TimerEJB 或 Delayed MDB,因为我必须使用 3d 库。

我知道不鼓励应用服务器上的自定义线程;这里有一篇相关文章(4 岁):为什么不鼓励在 Java EE 容器中生成线程?

是不是还是灰心丧气?我可以使用ExecutorServiceQuartz 吗?或者我必须只考虑 commonj 和工人经理?

0 投票
0 回答
182 浏览

java - 每周执行一次定时器

我正在使用 commonJ TimerManager 发送通知电子邮件。

现在我需要在星期一每周执行一次 Timer,但我在配置方面遇到了一些问题。

如何在特定日期每周设置一次计时器?

谢谢

0 投票
0 回答
3349 浏览

java - 如何使用 WebSphere 实现 CommonJ 工作管理器?

我从未使用 WebSphere 实现过 CommonJ Work Manager。事实上,我什至不熟悉这个术语。我们目前有一个计划运行,它在特定时间间隔后运行,它创建一个作业并将该作业处理给 ThreadPoolExecutor。每项工作都做某些共同的工作。

作业调度已经使用org.springframework.scheduling.quartz完成,现在我被告知使用 CommonJ Work Manager 来实现这个东西。

我做了一些谷歌搜索,发现下面的链接,
http ://pic.dhe.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=%2Fcom.ibm.websphere.express.doc%2Finfo%2Fexp% 2Fasyncbns%2Fconcepts%2Fcasb_workmgr.html
但发现有点难以理解。任何带有示例的解释将不胜感激。