The https://wsit.dev.java.net/ project from Sun is an initiative to allow WCF and Java Web Services to work together nicely. Microsoft and Sun worked together on the project to try and ensure that as much as possible, WCF and Java webservices would work together.
Based on the JAX-WS standard, the definition (and consumption) or webservices are seperate concerns. For example, the WSIT tutorial defines the following web service:
@WebService() public class Calculator {
@WebMethod(action="sample_operation")
public String operation(@WebParam(name="param_name")
String param) {
// implement the web service operation here
return param; }
@WebMethod(action="add") public int add(@WebParam(name = "i") int i,
@WebParam(name = "j") int j) {
int k = i + j;
return k; } }
Which makes no reference to the transport defintion - This is define separately at deploy time (or programatically if you wish).
Other transports can be used in place of HTTP, for example, the jms-ws-transport project can be used to invoke web services over a JMS transport.
At JavaOne 2008, Microsoft and Sun co hosted a session on web service interop. I asked if there were any plans to support the NetTCPBinding for Interop. The Microsoft representative said that there had been no client demand for this, but if there was, he could see no reason not to support this.