CORBA: Its used primarily if you have legacy apps and u want to connect with your app. So a
Java (CORBA)client can call C++/COBOL/JAVA/... CORBA Server.
EJB: provide you much more than CORBA with all services like Security,Transactions,Concurrency etc......
Theres no such advantage of using CORBA and EJBs together, if possible one shud use only one of them as there are some disdvantages to using CORBA with EJBs i.e. u cannot propogate your security context, transacation context from CORBA. Plus the disadvantage of using CORBA is lack of **good***polymorphic remote object support...remember the narrow and then cast the requirement of RMI-IIOP......