2013-08-05 3 views
1

Application.cfc의 영향을받는 구성 요소에 원격 기능이 있습니다. onRequestStart는 사용자가 로그인해야합니다. .cfc를 다른 하위 폴더로 옮기고 싶지 않습니다. 가능한 한 .cfm에 가깝게 유지하여 .cfm을 편집하는 동안 cfc를 검색 할 필요가 없습니다.onCFCRequest가 반환 값을 먹고있는 것 같습니다.

나는 해결책이 onRequestStart 대신 onRequest와 onCFCRequest를 사용하는 것이라고 생각하지만 onCFCRequest를 실험 할 때 반환 값이 부울이어야한다고 생각합니다. 이제는 원격 함수가 이전에 사용한 쿼리 대신 부울 값을 반환합니다.

Rays' example 결과를 표시하지만 은 결과로을 반환합니까? 여기

내가 뭘하려하지만 ColdFusion에서는 부울없는 반환 값에 주저 :

public boolean function onCFCRequest(string cfc, string method, struct args) { 
    local.comp = createObject("component", arguments.cfc); 
    local.result = evaluate("local.comp.#arguments.method#(argumentCollection=arguments.args)"); 
    return local.result; 
} 
+0

문제는 다음과 같습니다. 동일한 원격 기능을 사용하는 다른 응용 프로그램이 있습니다. 따라서 사용자는 원격 기능이있는 원래 응용 프로그램에 로그인하지 않습니다. 세 번째 하위 폴더로 옮겨야 할 것 같습니다. –

답변

2

귀하의 문제가이 주장입니다 :

onCFCRequest 실험에서, 그것은 반환 값과 같다 이 부울이어야합니다.

사실이 아닙니다.

"any"가 될 수 있고 ("해야 함"),이 경우 호출 된 메소드가 반환하는 모든 데이터 유형 (직렬화되어 HTTP 응답 인 natch에서 전송 될 수 있음)을 반환합니다.

+0

아, 공개 부울이 있기 때문입니다! 감사합니다 아담! –

+0

내 비통에 대한 해결책은 다른 하위 폴더에있는 구성 요소를 확장하면 두 개의 다른 Application.cfcs와 두 가지 다른 데이터 소스에서 실행되는 소스 코드 복사본을 가질 수 있다는 것입니다. 나는 결국 CFCRequest를 망칠 필요가 없었습니다. –

관련 문제