In some hedge funds, people actually use c# front-end with c++ backend. What communication protocol? TCP/IP.
I think there’s no need for java in front or backend. C# developers are often more familiar with c++ than java.
In another c++ backend, tibrv was the access protocol. I’d guess any client can access it via tibrv.