다른 개체를 참조하는 개체로 전달 된 문자열에서 메서드 호출을 작성하려고합니다. 객체를 호출 할 때coldfusion 9 동적 메서드 호출
는 일반적으로 우리는 다음과 같이 코드를 작성 :
application.stObj.oNewsBusiness.getNews(argumentCollection=local.stArgs);
그러나 내가이 개체 이름, 메소드 이름과 인수 컬렉션을 포함하는 배열을 작성 했어요.
<cfscript>
local.stArgs = {};
local.stArgs.nNewsID = 19;
local.stArgs.sAuthor = "John";
local.aData = [];
local.aData[1] = local.stArgs;
local.aData[2] = "stObj.oNewsBusiness";
local.aData[3] = "getNews";
</cfscript>
그러나이 모든 것을 메서드 호출로 재결합하려고 애 쓰고 있습니다. 제안하지만를 사용
UPDATE 여전히 문제에
된 cfinvoke가 작동하는 것 같다 동안 :
<cfscript>
local.stArgs = local.aData[1];
local.sObject = local.aData[2];
local.sMethod = local.aData[3];
</cfscript>
<cfinvoke component="application.#local.sObject#" method="#local.sMethod#" argumentCollection="#local.stArgs#" returnvariable="local.qData"></cfinvoke>
그것이 생성 뭔가를 할 때
<cfinvoke component="#application.stObj.oNewsBusiness#" method="#local.sMethod#" argumentcollection="#local.stArgs#" returnvariable="local.qData"></cfinvoke>
가 작동하지 않습니다 오류 :
Could not find the ColdFusion component or interface application.stObj.oNewsBusiness
올바른 방법으로 구성 요소를 호출해야합니다. 아래의 Dan의 설명을 확인하십시오. – nykash
'응용 프로그램'제거 : –