JBoss 5.1计划作业停止执行

时间:2012-11-20 14:59:00

标签: java jboss jax-ws quartz-scheduler

我有状态的石英作业,由JBoss调度程序安排。 他们每隔20-30秒开火一次。 其中4个是jax-ws客户端。 1是轴2客户端,2是http客户端。

仅在jax-ws客户端出现问题。 经过一段时间后,当客户端尝试初始化soap服务时,它们会在执行过程中堆叠:

        soap = new MyService(new URL(targetEndpoint), new QName(
        "http://www.catmancer.com/Service", "myservice"))
        .getMyServiceSoap();

并且它们不再启动,直到服务器重启。即使石英作业超时也不会抛出异常。日志中没有例外。

提前感谢

1 个答案:

答案 0 :(得分:0)

好吧,如果连接卡住(网络故障,防火墙......)并挂起,Quartz作业永远不会结束。它不断占用Quartz工作线程。我不认为Quartz内置了任何超时 - 只要它想要就可以运行。

由于你的工作是有状态的,Quartz不会在旧的完成之前启动新的触发器(这是有状态工作的定义)。

您可以做的最好的事情是在SOAP调用中应用一些超时。它应该非常简单。