Я довольно широко использую компоненты в своем приложении ColdFusion и часто сталкиваюсь с ошибкой, что мои компоненты не определены, хотя они определенно определены.
Я определяю компоненты в моем файле Application.cfc.
<cfset cfcList = "component1,component2,component3">
<cfloop list="#cfcList#" index="local.thisCfcName">
<cfset application.cfc[local.thisCfcName] = createObject(
"component",
"#application.cfcPath##local.thisCfcName#"
)>
</cfloop>
Что я смог определить: в моей функции onRequestStart я перезапускаю приложение при обнаружении переменной url 'init':
<cfif structKeyExists(url, "init")>
<cfset onApplicationStart()>
</cfif>
Кажется, что пока приложениеповторная инициализация, любой другой пользователь, пытающийся получить доступ к компоненту в этот момент, получит следующую ошибку (сбой компонента может отличаться).
[diag] = Элемент CFC.COMPONENT1 не определен в Javaобъект типа class [Ljava.lang.String;упоминается как ''
Есть ли что-то, что я делаю здесь неправильно, что может решить эту проблему?Я получаю эти ошибки несколько раз в день, и должно быть решение, но я не смог найти никакой информации об этой конкретной проблеме.