Let me guess this:
The OpenConnection() method of the QBXMLRPE.RequestProcessor class
actually exposes more interfaces in the form of properties and methods
AFTER it has been called.

If so, it is same problem that my team and I found when testing with MS
SOAP v2 when we needed a consistent SOAP layer (read: same code) that is
deployable on both CFAS v5 and CFMX. CFMX stores and does not re-check
the allowed interfaces for the COM object after it has been
instantiated. Hence, new interfaces exposed after calling a method are
not accessible. In the case of MS SOAP v2, the remote object's
interfaces are not exposed in CFMX, hence, rendering MS SOAP v2 useless
on CFMX.

For those interested in why we would explore MS SOAP on CFMX, we needed
the solution to work equally well in CFAS v5. We did not have much faith
or resources/expertise in testing Apache SOAP/Axis/et al in CFAS v5. :P
We knew back then that CFMX's webservices tier is based on Apache Axis.
:) ;)

Summary: CFMX + COM == BAD Idea.

----------------------- 
James Ang 
Sr. Software Developer 
MedSeek, Inc. 
[EMAIL PROTECTED]



-----Original Message-----
From: Matt [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, July 08, 2003 12:30 PM
To: CF-Talk
Subject: RE: Why can't COM just work in CFMX?

Ok, I tried re-applying Updater 3, and now I get this error:

        An exception occurred when executing a Com method.
        The cause of this exception was that: AutomationException:
0x80020005 -
Type mismatch..

        The error occurred in C:\Inetpub\wwwroot\engineCom\viewPO.cfm:
line 21

        19 : <CFOBJECT ACTION="CONNECT"
CLASS="QBXMLRPE.RequestProcessor"
NAME="rp">
        20 : <CFSET rp.OpenConnection("12", "eCom")>
        21 : <CFSET qbTicket = rp.BeginSession("",2)>
        22 : <CFSET rp.EndSession(qbTicket)>


However, this code in ASP works with no problems:

        Set rp = Server.CreateObject("QBXMLRPE.RequestProcessor")
        rp.OpenConnection "12", "eCom"
        ticket = rp.BeginSession( "", 2 )
        rp.EndSession ticket

Any ideas?  I tried both CONNECT and CREATE, and I get the same error.
Could CF be passing in the 2 in some other format (like 2.0)?

Matt



-----Original Message-----
From: Matt [mailto:[EMAIL PROTECTED]
Sent: Tuesday, July 08, 2003 2:59 PM
To: CF-Talk
Subject: Why can't COM just work in CFMX?


Ok, two lines that basically do the same thing, one in ASP and the other
in
CFMX:

        ASP:   Set rp = Server.CreateObject("QBXMLRPE.RequestProcessor")
        CFMX:  <CFOBJECT ACTION="CONNECT"
CLASS="QBXMLRPE.RequestProcessor"
NAME="rp">

ASP continues fine and I get the expected return.  CFMX gives me this:

        An exception occurred when instantiating a Com object.
        The cause of this exception was that:
java.lang.IllegalArgumentException:
Argument is not a COM object: null.

How could this be?  I know the object exists, because ASP uses it with
no
problems.  Is this a known issue with a work around?  I figured I'd ask
before I simply give up and go to ASP...it's a PITA, but it'll actually
work
=)

Matt




~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribe&forumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

This list and all House of Fusion resources hosted by CFHosting.com. The place for 
dependable ColdFusion Hosting.
http://www.cfhosting.com

                                Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
                                

Reply via email to