有没有人有信息或指向工作教程的链接在java中创建异步Web服务?它需要由Windows Phone应用程序调用。
两个朋友和我正在研究一个项目。上周我们决定将客户端的操作系统更改为Windows手机。
旧的网络服务是同步:
package de.morpheus.chatbot.service;
import javax.jws.*;
import de.morpheus.chatbot.brain.io.datasource.DataSourceDB;
import de.morpheus.chatbot.model.BotInit;
@WebService
public class ChatbotService {
private BotInit chatbot = new BotInit(new DataSourceDB(),BotInit.DEFAULT_AIML_EXTENSIONS);
@WebMethod
public String communicate(String input) {
return this.chatbot.processInput(input);
}
}
但我们没有设法通过Windows手机应用程序调用该Web服务,因为它只接受异步Web服务。
在客户端,我们使用了本教程: https://msdn.microsoft.com/en-us/library/cc197937(v=vs.95).aspx 连接到Web服务。
我们需要在Web服务中更改什么?我想我们需要重写漏洞Web服务,但我不知道如何使它异步。
任何帮助将不胜感激。 问候 SteveM
编辑: 当我尝试在Windows手机上运行应用程序时,我在Visual Studio中得到一个例外(甚至在自动生成的Service Class调用Java服务之前),说: "合同' ChatbotService'包含Silverlight不支持的同步操作。 将操作拆分为"开始"和"结束" part并将OperationContractAttribute上的AsyncPattern属性设置为' true'。请注意,您不必在服务器上进行相同的更改。"
最后一句话对我来说最让人困惑。看起来我需要在客户端进行更改,但我的实际信念是我需要更改服务器端的ws。