Yes, you can achieve this. With CORBA, you can have a Java front-end and a C++ server-side implementation, or vice versa (although I'm not sure why you'd want to have a Java server-side implementation and use C++ for your client-side code, but I guess anything's possible.) My company's app uses Java for the client because it is convenient for our web-based environment (we use applets for the GUI interface). We have a CORBA middle tier and then C++ classes that interact with the database. The CORBA middle tier accepts requests from the client side for data, passes the requests to the C++ code, then returns the results back to the client.
As for recommendations for ORB vendors, I'm afraid I have limited experience with specific vendors so I can't really make any recommendations. Good luck.