带有Java Socket服务器的WCF TCP客户端,用于自定义XML消息

我正在尝试为Java Socket服务器构建一个WCF客户端,该服务器讨论自定义XML消息。 我用MessageEncoder和netTCP传输创建了自己的自定义绑定。

现在我所看到的是第一次调用服务器,服务器接受连接。 但是,服务器然后等待特定的XML数据包。 这是内置于客户端的方法接口。 WCF不发送XML数据包。 稍后WCF报告超时exception,并且通道出现故障。

WCF netTCP传输是否仅适用于WCF TCP服务器?

码:

[System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] [System.ServiceModel.ServiceContractAttribute(ConfigurationName = "IUserManager", SessionMode=System.ServiceModel.SessionMode.Required)] public interface IUserManager { [System.ServiceModel.OperationContract] bool SendMessage(string strMessage); [System.ServiceModel.OperationContract(IsInitiating = true, IsOneWay=true)] void SendMessageOneWay(string strMessage); } 

我创建了一个SendMessageOneWay来启动Socket连接。 这不起作用。 因为我需要重用套接字,所以我设置了Session.Required。

请帮忙

WCF netTCP传输使用基于TCP的自定义协议; 它不是通用的原始TCP套接字适配器。

听起来你需要创建自己的自定义传输通道。 我刚刚创建了一个关于编写WCF通道的资源列表 (可能有点过时了,但它对于入门仍然有用)

是wcf使用不可互操作的.net成帧协议。 http://blogs.msdn.com/b/drnick/archive/2009/01/19/message-framing-part-1.aspx