?
Solved

Interface Repository

Posted on 2000-03-16
11
Medium Priority
?
168 Views
Last Modified: 2010-04-04
When I try to connect dynamically to a CORBA server I get the following error:

'Could not perform CORBA Dispatch, no interface respository found.'

I figure I havent set up the Interface Respository properly...could someone please walk me through this.
0
Comment
Question by:fiinfo
  • 7
  • 3
11 Comments
 
LVL 15

Expert Comment

by:simonet
ID: 2626046
Is at least one agent started on your network? Remember that you need the VisiBroker agents in order to work with Corba.

Alex
0
 

Author Comment

by:fiinfo
ID: 2626063
Yes the Visibroker SmartAgent is running
0
 

Author Comment

by:fiinfo
ID: 2626098
In my client I have 2 procedures attached to buttons: 1 to demonstrate static binding, the other to demonstrate
dynamic binding. The static binding works, the dynamic does not.


procedure TForm1.btDynamicClick(Sender: TObject);
var
   DynamicFactory: TAny;
   DynamicObject: TAny;
begin
  DynamicFactory := Orb.Bind('IDL:DynamicCorba/dynamicCorbaFactory:1.0');
  DynamicObject := DynamicFactory.CreateInstance('DynamicObject');
  Showmessage(DynamicObject.GetDescription);
end;

procedure TForm1.btStaticClick(Sender: TObject);
var
  FInstance: IdynamicCorba;
begin
  FInstance := TdynamicCorbaCorbaFactory.CreateInstance('Random String');
  showmessage(FInstance.GetDescription);
end;
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
LVL 13

Expert Comment

by:Epsylon
ID: 2626149
You have to register Corba objects before you can use them.

Run the Object Activation Daemon and Smart Agent.
Use 'irep' to register the inteface repository (.IDL) of the object
and use 'oadutil' to register the object.

Read the Delphi help on these commands. It's too much too explain it all in detail here.
0
 

Author Comment

by:fiinfo
ID: 2626296
I ran the OAD, and Smart Agent, registered the .idl with 'irep', used 'oadutil' to register the object
(oadutil reg -r IDL:DynamicCorba/dynamicCorbaFactory:1.0 -o TdynamicCorbaFactory -cpp c:delphiprojects/dynamicbinding/DynamicCorba.exe) and still get the same error. If a server is not running, one is created and i get the same error.

This is the .idl generated by Type Library:

module DynamicCorba {
  interface IdynamicCorba {
    wstring GetDescription();
    wstring GetName();
  };

  interface DynamicCorba_Factory {
    ::DynamicCorba::IdynamicCorba    CreateInstance(in string InstanceName);
  };
};

0
 
LVL 13

Expert Comment

by:Epsylon
ID: 2629607
Does Smart Finder find any objects?
0
 

Author Comment

by:fiinfo
ID: 2633884
Yes, it finds my object 'dynamicCorba' and my Respository
0
 
LVL 13

Accepted Solution

by:
Epsylon earned 100 total points
ID: 2634125
What happens when you use the CorbaBind function instead of Orb.Bind:

  DynamicFactory:= CorbaBind('IDL:DynamicCorba/dynamicCorbaFactory:1.0');
0
 

Author Comment

by:fiinfo
ID: 2634138
Yes, it finds my object 'dynamicCorba' and my Respository
0
 

Author Comment

by:fiinfo
ID: 2634142
Same error.

I think I will try starting over again.
0
 

Author Comment

by:fiinfo
ID: 2634212
OK...I redid an example and lo and behold, it works...who knows what was wrong, thanks for your help Epsylon
0

Featured Post

[Webinar] Cloud and Mobile-First Strategy

Maybe you’ve fully adopted the cloud since the beginning. Or maybe you started with on-prem resources but are pursuing a “cloud and mobile first” strategy. Getting to that end state has its challenges. Discover how to build out a 100% cloud and mobile IT strategy in this webinar.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this tutorial I will show you how to use the Windows Speech API in Delphi. I will only cover basic functions such as text to speech and controlling the speed of the speech. SAPI Installation First you need to install the SAPI type library, th…
Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
Is your data getting by on basic protection measures? In today’s climate of debilitating malware and ransomware—like WannaCry—that may not be enough. You need to establish more than basics, like a recovery plan that protects both data and endpoints.…
As many of you are aware about Scanpst.exe utility which is owned by Microsoft itself to repair inaccessible or damaged PST files, but the question is do you really think Scanpst.exe is capable to repair all sorts of PST related corruption issues?
Suggested Courses

862 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question