By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
444,089 Members | 2,359 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 444,089 IT Pros & Developers. It's quick & easy.

CORBA Python Query

P: n/a
Sorry for reposting, but please help me... I desperately need help.

I wrote a small CORBA program and am using ORBit-python.
The IDL file was as below:
---------------------------
module MESSAGING
{
typedef sequence<string> msgLines;
struct msg
{
string fr;
string to;
msgLines body;
};
interface mail
{
void submit (in msg message);
};
};
---------------------------------

The server program is as below:
---------------------------------
#!/usr/bin/python
import CORBA
class mail:
msg = 0
def submit(self, msg):
print "Message Recieved from:", msg.fr
print "Message for:", msg.to
for line in msg.body:
print line
self.msgs = self.msgs + 1;
print "Message Served: ", self.msgs

CORBA.load_idl("msg.idl")
CORBA.load_idl("/usr/share/idl/name-service.idl")

orb = CORBA.ORB_init((), CORBA.ORB_ID)
poa = orb.resolve_initial_references("RootPOA")

servant = POA.MESSAGING.mail(mail())
poa.activate_object(servant)
ref = poa.servant_to_reference(servant)
open("./msg-server.ior","w").write(orb.object_to_string(ref))
print "Wrote IOR to file", orb.object_to_string(ref)
poa.the_POAManager.activate()
orb.run()
---------------------------------

After running the program, it gives the following errors:
---------------------------------
Traceback (innermost last):
File "./msg-server.py", line 14, in ?
CORBA.load_idl("msg.idl")
AttributeError: load_idl
---------------------------------

If I change the CORBA.load_idl to CORBA._load_idl then the error comes
at some other place... Namely below:

---------------------------------
Traceback (innermost last):
File "./msg-server.py", line 20, in ?
servant = POA.MESSAGING.mail(mail())
NameError: POA
---------------------------------

The CORBA module is dynamically loaded from the following file:
/usr/lib/python1.5/site-packages/CORBAmodule.so

I have installed orbit-python-0.3.0-1 on my machine.

Please help me out.. I need help desperately to run the server :((
Thanx in advance :)
Jul 18 '05 #1
Share this Question
Share on Google+
1 Reply


P: n/a
Akhilesh S. Shirbhate wrote:
---------------------------------
Traceback (innermost last):
File "./msg-server.py", line 20, in ?
servant = POA.MESSAGING.mail(mail())
NameError: POA
---------------------------------


No wonder, as you don't import a module named POA. As you seem to look for
the generated class of your dynamically loaded idl, you might try to use
the rootpoa, thus writing

servant = poa.MESSAGING.mail(mail())

notice the lower case.

If thats no help, look into the examples from orbit python, I bet you can
find something working there.
--
Regards,

Diez B. Roggisch
Jul 18 '05 #2

This discussion thread is closed

Replies have been disabled for this discussion.