Link to home
Start Free TrialLog in
Avatar of Vinny2008
Vinny2008

asked on

PowerBuilder SOAP conection issue.

Hi, Using PB9.0.1, We have an issue with SOAP connection. While trying to Instantiated connection, we are getting a runtime Error: "Bad runtime function reference CreateInstance". We have PBSoapClient90.pbd in the application search path and can see 'soapconnection' and 'soapexception' objects in the system tree. Please let me know, what's missing?
 
Thanks for your help!
Vinny.
Avatar of sandeep_patel
sandeep_patel
Flag of United States of America image

Hi,

Can you put your code here please?
Here is the working sample code....

where px_passwordserviceport is the proxy object I am using to call webservice.
SoapConnection wbsrv_soapconnection
px_passwordserviceport lpo_proxy_obj
long ll_ret=0
TRY
 
 wbsrv_soapconnection = CREATE SoapConnection
 
 //get the proxyobject instance by connecting to webserver using soap createinstance()
 ll_ret = wbsrv_soapconnection.Createinstance(  lpo_proxy_obj, 'px_passwordserviceport','http://localhost:8080/test/test')
 choose case ll_ret
  case 100
   Messagebox("WebService Proxy Creation Error","Invalid Proxy Name")
  case 101
   Messagebox("WebService Proxy Creation Error","Failed to create Proxy")
 end choose
Catch (SoapException  SoapError)
 // An error occurred with the SoapConnection object (System Error)
 Throw SoapError
 
Catch(RunTimeError  RTError)
 // A PowerBuilder Runtime error occurred
 Throw RTError
 
Catch (Throwable  GenError)
 // An unknown error occurred
 Throw GenError
 
END TRY

Open in new window

Avatar of Vinny2008
Vinny2008

ASKER

Sandeep,
Thanks for your reply.
I'm doing the same, what you mentioned in your mail. While building the exe, I'm adding the PBSoapClient90.pbd in the application search path. This application is working fine with me, but some other client machines are getting the above error. I found that error is due to getting the proxy object instance line. Do I need to add any other pbd's while I create exe or missing something else or check some type of dll's with their machines like libeay32.dll?

Thanks for your help
Venny.
Here is the list of files from PB help for deployment when you are using SOAP. This is from PB10.5, you may be able to find similar for PB9.

ExPat105.dll
libeay32.dll
ssleay32.dll
xerces-c_2_6.dll
xerces-depdom_2_6.dll
EasySoap105.DLL
pbnetwsruntime105.dll
pbsoapclient105.pbx
pbwsclient105.pbx
Sybase.PowerBuilder.WebService.Runtime.dll
Sybase.PowerBuilder.WebService.RuntimeRemoteLoader.dll

Regards,
Sandeep
Sandeep,
I've had problems with other applications loading a different version of libeay32.dll(Like Crystal Reports). My web services run well, but users who ever has the Crystal installed, they are getting an error. If I removed Crystal Reports on his machine, he is fine and able to run the web service, but I can't go and find out for each and every user right and we don't know what other softwares are in their system.
How can we check whether the user machine's has multiple versions of above supported dll's or how do we find out to which dll is conflict the problem? Is there any way to  set the path with correct version of dll while doing the exe.

Thanks for your time and very much appreciated.
Venny.
ASKER CERTIFIED SOLUTION
Avatar of sandeep_patel
sandeep_patel
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Sandeep - Thanks for your time and appreciate your help - Venny.