Не удается найти компонент из оператора cfinvoke

Мне был передан код ColdFusion из-за того, что кто-то покинул компанию, и мне было поручено вести эту работу Проблема в том, что в последний раз, когда я смотрел код ColdFusion, около 10 лет назад, я полностью потерян и начинаю с нуля.

Моя проблема в том, что я пытаюсь найти компонент или код и все, что вызывается в коде, показанном ниже.

<cfinvoke component="_admin_tools_kms" method="listKMSUsers" returnVariable="getKMSUsers">
    <cfinvokeargument name="argFullAccount" value="1" />
</cfinvoke>

Я знаю, что это возвращает список пользователей системы, но я не могу найти точный код, выполняющий этот вызов. Должно ли это имя компонента "_admin_tools_kms" быть именем файла cfm где-нибудь или это может быть просто ссылочное имя, созданное каким-либо образом?

1 ответ

Давайте разберем это:

<cfinvoke 
    component="someComponent" 
    method="someFunction" 
    returnVariable="someVariable">
    <cfinvokeargument name="someArgument" value="foo" />
</cfinvoke>

Атрибут component это либо имя файла с .cfc расширение или переменная, содержащая экземпляр этого компонента. Если бы это была переменная, на нее ссылались бы как #someComponent#,

Если там просто простое значение, есть вероятность, что есть файл с именем someComponent.cfc в той же папке.

Если там есть значение, разделенное точкой, например cfc.services.someComponent,

  • поищите папку в корне сети с именем /cfc/ которая содержит другую папку /services/ в котором вы найдете файл someComponent.cfc,
  • Если вы не видите эту папку, поищите отображение ColdFusion в корне Application.cfc файл, который создает псевдоним cfc и сопоставляет его с нужными папками.
  • и если ЭТОГО там нет, то проверьте на своем веб-сервере псевдонимы папок или сопоставления, чтобы увидеть, что, черт возьми, сделал какой-то психопат, чтобы скрыть, где существует этот код.

НО, я предпочитаю делать простой текстовый поиск для метода, на который есть ссылка, а не для компонента. Эта функция может существовать в другом компоненте или файле, чем тот, на который ссылается.

Поскольку ХФУ может продлить другой ХФУ, может быть parentComponent.cfc это someComponent extends, который на самом деле содержит рассматриваемый метод. Хуже, файл someComponent.cfc Могут быть включены другие файлы, где один содержит метод. Единственным недостатком является то, что функция называется что-то общее, как create,

Другие вопросы по тегам