?
Solved

Interface Repository

Posted on 2000-03-16
11
Medium Priority
?
166 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
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

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

A lot of questions regard threads in Delphi.   One of the more specific questions is how to show progress of the thread.   Updating a progressbar from inside a thread is a mistake. A solution to this would be to send a synchronized message to the…
The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
If you’ve ever visited a web page and noticed a cool font that you really liked the look of, but couldn’t figure out which font it was so that you could use it for your own work, then this video is for you! In this Micro Tutorial, you'll learn yo…
In this video, Percona Director of Solution Engineering Jon Tobin discusses the function and features of Percona Server for MongoDB. How Percona can help Percona can help you determine if Percona Server for MongoDB is the right solution for …
Suggested Courses
Course of the Month10 days, 12 hours left to enroll

765 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