Re: Error calling a .net object
Still no dice. Im banging my head against the wall on this one. I know Ive got the right path I opened it up with cffile and dump it to the screen and its there. I dont have an asp application using it, going to try that next. If I can get it to work there, at least it will give me some indication of where the issue might be. On Mar 25, 2015, at 10:15 AM, Bobby bo...@acoderslife.com wrote: opendesign(javacast('string',thisfile), javacast('short',0) ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:360294 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: Error calling a .net object
Its not necessarily saying the method doesn't exist, it is saying it doesn't exist with the arguments and/or argument TYPEs you are giving it. Look at the types in the dump of the method you mentioned and try to javacast() your values to match those types when passing them in. example: opendesign(javacast('string',thisfile), javacast('int',0)) ...assuming that it is actually expecting a simple string and int. If that doesn't work, try posting the method dump or (if you have it) a working.NET example of how it is used. On 3/25/15, 8:28 AM, Charles Sheehan-Miles char...@sheehanmiles.net wrote: I have a problem I wanted to run by the list. Iâm recently back in the coldfusion world after a several year hiatus. Iâm in the process of trying to access the methods of a .net component, at this point as a proof of concept. Once I can do something with it Iâll actually start building the app. I set up the object like this: cfset dll = ExpandPath('./com/Interop.CADXLib.dll') cfobject class=CADXLib.CadX type=.NET name=cadx assembly=#dll#â Thatâs in my application.cfc, in the onRequestStart() method. Then in my index.cfm I call: cfdump var=#cadx#â The object dumps just fine. I can see all the internal methods, including the one I need to get things going, the OpenDesign() method, which (in theory) opens a local file and reads the contents. So next I set the actual filename I want to access: cfset thisfile=1571269P01R01_ARTIOS.ARD cfset thispath=getDirectoryfromPath(getCurrentTemplatePath()) cfset thisfile=thispath thisfile This works, and outputting âthistfileâ gives me the correct path location. So now I call the actual method: cfset result=cadx.OpenDesign(thisfile,0) Thatâs where I get stuck. I get this error: Either there are no methods with the specified method name and argument types or the OpenDesign method is overloaded with argument types that ColdFusion cannot decipher reliably. ColdFusion found 0 methods that match the provided arguments. If this is a Java object and you verified that the method exists, use the javacast function to reduce ambiguity. I javacast the arguments and get the same error. Method not found. But based on the dump, the method is clearly there. Has anyone encountered this or something similar? ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:360289 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: Error calling a .net object
I gave the benefit of the doubt but that is also my primary suspicion (file object vs path). On 3/25/15, 9:17 AM, Byron Mann byronos...@gmail.com wrote: I know I've done things like pass a file path (string) instead of file object, so make sure the type the method wants is string or otherwise. So might look if the function is this: OpenDesign(File, Int) as opposed to: OpenDesign(String, Int) ~Byron On Wed, Mar 25, 2015 at 9:08 AM, Bobby bo...@acoderslife.com wrote: example: opendesign(javacast('string',thisfile), javacast('int',0)) ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:360291 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: Error calling a .net object
I know I've done things like pass a file path (string) instead of file object, so make sure the type the method wants is string or otherwise. So might look if the function is this: OpenDesign(File, Int) as opposed to: OpenDesign(String, Int) ~Byron On Wed, Mar 25, 2015 at 9:08 AM, Bobby bo...@acoderslife.com wrote: example: opendesign(javacast('string',thisfile), javacast('int',0)) ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:360290 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: Error calling a .net object
Javacast the 0 as short and the path as a string and see how that goes. example: opendesign(javacast('string',thisfile), javacast('short',0)) On 3/25/15, 9:45 AM, Charles Sheehan-Miles char...@sheehanmiles.net wrote: That was my first thought too. But the documentation is pretty clear that it?s looking for the file path, and the dump shows this: OpenDesign(java.lang.String, short) On Mar 25, 2015, at 9:23 AM, Bobby bo...@acoderslife.com wrote: I gave the benefit of the doubt but that is also my primary suspicion (file object vs path). On 3/25/15, 9:17 AM, Byron Mann byronos...@gmail.com wrote: I know I've done things like pass a file path (string) instead of file object, so make sure the type the method wants is string or otherwise. So might look if the function is this: OpenDesign(File, Int) as opposed to: OpenDesign(String, Int) ~Byron On Wed, Mar 25, 2015 at 9:08 AM, Bobby bo...@acoderslife.com wrote: example: opendesign(javacast('string',thisfile), javacast('int',0)) ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:360293 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: Error calling a .net object
That was my first thought too. But the documentation is pretty clear that its looking for the file path, and the dump shows this: OpenDesign(java.lang.String, short) On Mar 25, 2015, at 9:23 AM, Bobby bo...@acoderslife.com wrote: I gave the benefit of the doubt but that is also my primary suspicion (file object vs path). On 3/25/15, 9:17 AM, Byron Mann byronos...@gmail.com wrote: I know I've done things like pass a file path (string) instead of file object, so make sure the type the method wants is string or otherwise. So might look if the function is this: OpenDesign(File, Int) as opposed to: OpenDesign(String, Int) ~Byron On Wed, Mar 25, 2015 at 9:08 AM, Bobby bo...@acoderslife.com wrote: example: opendesign(javacast('string',thisfile), javacast('int',0)) ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:360292 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: Error calling a .net object
Anyone have any ideas if the introspection into .NET objects shows private methods? May be the case that the method is private being shown in the CFDump? I seem to remember this might be the case. May be able to use this to decompile the dll and see what is what. http://www.red-gate.com/products/dotnet-development/reflector/ On Wed, Mar 25, 2015 at 10:33 AM, Charles Sheehan-Miles char...@sheehanmiles.net wrote: Still no dice. Iâm banging my head against the wall on this one. I know Iâve got the right path⦠I opened it up with cffile and dump it to the screen and itâs there. I donât have an asp application using it, going to try that next. If I can get it to work there, at least it will give me some indication of where the issue might be. On Mar 25, 2015, at 10:15 AM, Bobby bo...@acoderslife.com wrote: opendesign(javacast('string',thisfile), javacast('short',0) ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:360295 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: Error calling a .net object
Iâll take a look at that. This âinherited an application with no documentationâ is exactly my situation. This DLL is a black box. Thank you! On Mar 25, 2015, at 11:06 AM, Byron Mann byronos...@gmail.com wrote: Anyone have any ideas if the introspection into .NET objects shows private methods? May be the case that the method is private being shown in the CFDump? I seem to remember this might be the case. May be able to use this to decompile the dll and see what is what. http://www.red-gate.com/products/dotnet-development/reflector/ On Wed, Mar 25, 2015 at 10:33 AM, Charles Sheehan-Miles char...@sheehanmiles.net wrote: Still no dice. IâÂÂm banging my head against the wall on this one. I know IâÂÂve got the right path⦠I opened it up with cffile and dump it to the screen and itâÂÂs there. I donâÂÂt have an asp application using it, going to try that next. If I can get it to work there, at least it will give me some indication of where the issue might be. On Mar 25, 2015, at 10:15 AM, Bobby bo...@acoderslife.com wrote: opendesign(javacast('string',thisfile), javacast('short',0) ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:360296 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm