Как вызвать функцию позже в назначенное время в ColdFusion? - PullRequest
4 голосов
/ 21 августа 2009

<cfschedule> может вызывать только URL.

Что я могу использовать для вызова функции с некоторыми динамическими параметрами позже?

единственный способ, которым я могу придумать, это назвать его методом GET и заполнить параметры в области видимости URL:

./someAction.cfm?param1=xx&param2=yy

Однако это не работает для меня, потому что я, вероятно, достигну предела GET для больших и сложных данных.

Нужно ли мне реализовывать свой собственный планировщик для вызова функции?

или ... есть ли более простое решение в CFML? если нет, может быть, что-то в J2EE?

Спасибо.

Ответы [ 3 ]

8 голосов
/ 21 августа 2009

Вы можете настроить что-то для записи своих параметров в локальный файл или даже в базу данных, тогда запланированное задание может прочитать информацию оттуда, выполнить свою задачу, а затем удалить параметры.

1 голос
/ 14 сентября 2009

Вы можете запустить cfthread, чтобы выполнить обработку, однако, если задание будет далеко в будущем, это не сработает.

0 голосов
/ 22 августа 2009

Может быть, вы могли бы настроить свою функцию в качестве веб-службы, а затем вызвать ее через cfschedule?

<cffunction name="something" access="remote">
   etc
</cffunction>
...