<cfcomponent namespace="CfxjInvoker" hint="Invokers Java objects using
the cfx_j tag. Returns a structure with all the variables set by the
tag as name-value pairs. These are the values that would otherwise be
in the VARIABLES scope if you used the tag directly on a page."
extends="com.renewtek.invoke.Invoker">
<cffunction name="execute" access="public" returntype="struct">
<cfargument name="object" type="string" required="yes" />
<cfargument name="method" type="string" required="yes" />
<cfargument name="args" type="struct" required="no" />
<!--- We need to determine all the variables in the VARIABLES
scope,
run the cfx_j tag, and determine which entries are new, as it will use
the CALLER scope to set local vars here --->
<cfset var variablesScope = Duplicate(VARIABLES) />
<cfset var keysBefore = StructKeyArray(variablesScope) />
<cfset var keysAfter = "" />
<cfset cfxjInvocation = "<cfx_j class=""#ARGUMENTS.object#""
method=""#ARGUMENTS.method#"" alias=""result"" "/>
<cfloop collection="#ARGUMENTS.args#" item="name">
<cfset cfxjInvocation = ListAppend(cfxjInvocation,
'#name#="#ARGUMENTS.args[name]#"', " ") />
</cfloop>
<cfset cfxjInvocation = cfxjInvocation&">" />
<cfset Evaluate(cfxjInvocation) />
<cfset keysAfter = StructKeyArray(VARIABLES) />
<!--- TODO: Determine which keys in the VARIABLES scope are new
--->
<cfreturn StructNew() />
</cffunction>
</cfcomponent>
Also, I don't think the argcollection thing will work, but I'll give it
a shot. Seems too easy...
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"cfaussie" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/cfaussie
-~----------~----~----~----~------~----~------~--~---