当前位置: 首页 > 知识库问答 >
问题:

管理来自不同web应用程序的quartz作业

毛越
2023-03-14

我有一个核心java应用程序,它使用Quartz2.2.1和JDBC作业存储。所有的作业都安排在同一时间。

我正在使用Appfuse、maven和Quartz构建另一个基于Spring的应用程序。我想从spring应用程序中重新调度在前一个应用程序中运行的作业。在这样做的时候,我得到了class not found异常,因为我没有在类路径中添加作业类。如果我添加了它们,我就可以更新作业。

是否有任何方法可以管理来自Spring应用程序的作业而不在类路径中添加作业类。

我不想使用jdbc或Hibernate更新quartz数据库。

共有1个答案

左丘弘致
2023-03-14

是的,这是Quartz remote API的一个已知限制。如果您必须与多个Quartz scheduler版本进行远程通信或管理,这将变得非常痛苦。当管理应用程序在内部使用Quartz API(这似乎是您的情况)时,它变得更加痛苦。

如果您查看一下我创建的QuartzDesk项目,您会发现它通过公开一个JAX-WS SOAP接口非常优雅地解决了这个问题,您可以通过该接口与外部Quartz调度器实例进行通信和管理。它将所有Quartz调度器API的复杂性和Quartz差异隐藏在一个简单的类似Quartz的API后面。

这里描述了JAX-WS接口,还有相关的WSDL文件可供下载。

 类似资料:
  • 问题内容: 我们目前正在使用JPA作为我们的数据访问层来开发J2EE Web应用程序。我们目前正在采用几种不同的策略来利用我们的应用程序中的缓存。 创建每个请求 在请求范围内获取缓存,但在请求结束时丢失缓存 轻松回滚整个请求中的任何更改 创建每个Http会话 在会话范围内获取缓存 使事务变得更复杂,必须按请求创建一个新事务,然后才能按请求回滚更改 我已经在Hibernate文档中看到了这两种策略。

  • 问题内容: 我目前有一个Web服务,可使用Hibernate在mysql数据库中插入信息。其中一些信息需要由另一个“导入”应用程序处理。我不想不必从Web服务触发此应用程序。因此,Web服务不依赖于Web服务,反之亦然。 有没有一种方法可以从“导入”应用程序“监听”数据库中的更改(特别是:插入),然后开始执行操作。我已经看过触发器,但是它们似乎仅适用于应用程序的Hibernate Session中

  • Windows NT Option Pack 提供了在 Web 服务器上的 ASP 应用程序管理服务。例如,Internet 服务管理器为应用程序开发人员提供了一个使用简便的管理工具来设置应用程序的属性。另外,Active Server Pages 提供了允许用户的应用程序存储全局数据的脚本功能。本主题简要介绍部分应用程序管理功能,并提供到详细信息的链接。 启动和结束应用程序 当 Web 服务器第

  • 问题内容: 我只想一次只允许一个经过身份验证的会话进行Django应用程序中的个人登录。因此,如果用户使用给定的IP地址登录到网页,并且使用相同的用户凭据从其他IP地址登录,则我想做些事情(注销第一个用户或拒绝访问第二个用户。) 问题答案: 不知道这是否仍然需要,但想与我分享我的解决方案: 1)安装django-tracking(感谢你的贴士Van Gale Google Maps + GeoIP

  • 默认情况下,你会将应用程序放入application/中,并且可能用 CodeIgniter 只管理这一个应用程序。当然,多个应用程序共享一个 CodeIgniter, 甚至对 application 文件夹进行重命名或更换路径也是可行的。 对应用程序文件夹重命名 如果你要对 application 进行重命名, 你需要打开 index.php 文件,对变量 $application_folder

  • 默认情况下,CodeIgniter 假设你只有一个应用程序,被放置在 application/ 目录下。但是,你完全可以拥有多个程序并让 它们共享一份 CodeIgniter 。你甚至也可以对你的应用程序目录 改名,或将其移到其他的位置。 重命名应用程序目录 如果你想重命名应用程序目录,你只需在重命名之后打开 index.php 文件将 $application_folder 变量改成新的名字: