不需要任何主要屬性,并且都具有“合理的”默認值。當通過RMI使用Quartz時,您需要啟動Quartz實例,并將其配置為通過RMI“導出”其服務。然后,您可以通過配置Quartz調(diào)度程序?qū)⑵涔ぷ鳌按怼钡椒掌鱽韯?chuàng)建客戶端到服務器。
某些用戶在客戶端和服務器之間遇到class可用性(即Job類)的問題。要解決這些問題,您需要了解RMI的“代碼庫”和RMI安全管理器。您可能會發(fā)現(xiàn)這些資源有用:
對RMI和代碼庫的一個很好的描述:http : //www.kedwards.com/jini/codebase.html。重要的一點就是要意識到“代碼庫”是由客戶使用的!
有關(guān)安全管理員的快速信息:http : //gethelp.devx.com/techtips/java_pro/10MinuteSolutions/10min0500.asp
最后從Java API文檔中閱讀RMISecurityManager的文檔。
Property Name | Required | Default Value |
---|---|---|
org.quartz.scheduler.rmi.export | 沒有 | false |
falsefalseorg.quartz.scheduler.rmi.registryHost | 沒有 | 'localhost' |
org.quartz.scheduler.rmi.registryPort | 沒有 | 1099 |
org.quartz.scheduler.rmi.createRegistry | 沒有 | 'never' |
org.quartz.scheduler.rmi.serverPort | 沒有 | 隨機 |
org.quartz.scheduler.rmi.proxy | 沒有 | false |
org.quartz.scheduler.rmi.export
如果您希望Quartz Scheduler通過RMI作為服務器導出本身,則將“rmi.export”標志設置為true。
org.quartz.scheduler.rmi.registryHost
可以找到RMI注冊表的主機(通常是“l(fā)ocalhost”)。
org.quartz.scheduler.rmi.registryPort
RMI注冊表正在偵聽的端口(通常為1099)。
org.quartz.scheduler.rmi.createRegistry
根據(jù)您希望Quartz如何創(chuàng)建RMI注冊表,設置'rmi.createRegistry'標志。如果您不希望Quartz創(chuàng)建注冊表(例如,如果您已經(jīng)有一個外部注冊表運行),請使用“false”或“never”。如果您希望Quartz首先嘗試使用現(xiàn)有的注冊表,然后回到創(chuàng)建一個注冊表,請使用“true”或“as_needed”。如果您希望Quartz嘗試創(chuàng)建一個注冊表,然后回到使用現(xiàn)有的注冊表,請使用“always”。如果創(chuàng)建注冊表,它將綁定到給定的“org.quartz.scheduler.rmi.registryPort”屬性中的端口號,而“org.quartz.rmi.registryHost”應為“l(fā)ocalhost”。
org.quartz.scheduler.rmi.serverPort
Quartz Scheduler服務將綁定并偵聽連接的端口。默認情況下,RMI服務將“隨機”選擇端口,因為調(diào)度程序與RMI注冊表綁定。
org.quartz.scheduler.rmi.proxy
如果要連接(使用)遠程服務的調(diào)度程序,則將“org.quartz.scheduler.rmi.proxy”標志設置為true。您還必須指定RMI注冊表進程的主機和端口 - 通常是“l(fā)ocalhost”端口1099。
在同一個配置文件中為'org.quartz.scheduler.rmi.export'和'org.quartz.scheduler.rmi.proxy'指定一個'true'值是沒有意義的 - 如果你這樣做,'export '選項將被忽略。如果您沒有通過RMI使用Quartz,則“export”和“proxy”屬性的值“false”當然是有效的。
更多建議: