Почему Railo не читает путь «настраиваемого тега», как это делает CFMX 6.1?

Я пытаюсь перейти с CFMX 6.1 на Railo 3.1.

У меня есть пользовательские теги в этом каталоге для CFMX 6.1.

C:\cfusionmx\customtags\myapp

Я скопировал каталог в

{railo-web}/customtags/

и добавил это сопоставление через администратора Railo, а также включил настройку «Поиск в подкаталогах».

Я получаю эту ошибку в тот момент, когда пытаюсь получить доступ к странице, которая вызывает что-либо из этого каталога:

неверное определение компонента, не удается найти mycfc

Моя установка Railo развернута через GlassFish v3.

Я вижу ошибку в момент загрузки этого скрипта:

<cfscript>
    mycfcinstance = createobject("component","mycfc");
</cfscript>

В устаревшем приложении, которое я пытаюсь перенести, многие CFC хранятся в пути customtag CFMX 6.1.


person mrt181    schedule 26.01.2010    source источник
comment
Ошибка говорит об инициализации компонента, не так ли? Но вы говорите о пути к пользовательским тегам. Не могли бы вы показать несколько примеров кода, где вы пытаетесь получить доступ к странице.   -  person Sergey Galashyn    schedule 26.01.2010
comment
Нам нужно 3 вещи, чтобы помочь вам понять это. 1) как называется ваш маппинг в админке Railo? 2) каков путь к каталогу пользовательских тегов, к которому вы пытаетесь получить доступ? 3) как называется cfc, к которому вы пытаетесь получить доступ?   -  person Eric Cobb    schedule 27.01.2010
comment
1. {railo-web}/customtags/ 2. C:\glassfishv3\glassfish\domains\domain1\applications\railo\WEB-INF\railo\customtags\myapp\ 3. mycfc   -  person mrt181    schedule 28.01.2010


Ответы (1)


Во-первых, Railo просто не поддерживает поиск CFC внутри каталога пользовательских тегов. Кажется, однажды это произойдет.

Во-вторых, это выглядит как небольшое недопонимание значения пользовательских тегов на основе Railo CFC, которыми вы можете управлять с помощью страницы «Архивы и ресурсы > Пользовательские теги» в Admin. Вы можете найти больше об этом в блоге Райло, например, в этих сообщениях: часть one и два.

Что касается обходного пути Railo для этого устаревшего приложения, я не смог найти способ имитировать желаемое поведение.

Это может быть нецелесообразно, но, возможно, вы закончите пакетной заменой

createobject("component","components.

с участием

createobject("component","

и создание сопоставления в Application.cfc или Admin.

Итак, если вы хотите поместить cfc куда-нибудь в корень приложения.

this.mappings["/components"] = getDirectoryFromPath(getCurrentTemplatePath()) & "components";

Да, это не совсем соответствует вашей проблеме, просто пример.

person Sergey Galashyn    schedule 26.01.2010