我使用VisualStudio2010创建了一个Web服务(ASP.NET)。在这个服务中,我只有HelloWorld函数,它返回字符串“HelloWorld”。
我尝试做的是在我的controller.Application中调用此方法(在我的Web服务中)(在eclipse中使用play 2.0),以便在index.scala.html页面中显示结果。
我已经尝试过使用WS.Response,但它没有用,这是我的代码:
public static Result index() {
Promise<Response> promise = WS.url("http://localhost:59975/WebService1.asmx/HelloWorld").get();
return async(promise.map(
new Function<WS.Response, Result>() {
public Result apply(WS.Response response) {
return ok("Feed title:" + response.asXml());
}
}
));
顺便说一下,我是一个新剧!用户以及是否有人可以解释有关函数的内容&lt;&gt;这会很好。
如果您想要更多解释,请问我。感谢
您好, 今天我使用以下代码获取我的Web服务正文:
public static Result index() {
Promise<Response> promise = WS.url("http://localhost:59975/WebService1.asmx").get();
return ok(promise.get().getBody().toString());
}
但现在我会尝试获得HelloWorld的响应,所以我尝试了:
public static Result index() {
Promise<Response> promise = WS.url("http://localhost:59975/WebService1.asmx/HelloWorld").get();
return ok(promise.get().getBody().toString());
}
我在跟踪堆栈跟踪时遇到错误:
[InvalidOperationException:Leformatpromandé'estpas reconnu pour l'URL se terminant par'/ HelloWorld'。]
System.Web.Services.Protocols.WebServiceHandlerFactory.CoreGetHandler(类型 type,HttpContext context,HttpRequest request,HttpResponse 回复)+569481
System.Web.Services.Protocols.WebServiceHandlerFactory.GetHandler(HttpContext的 context,String verb,String url,String filePath)+212
System.Web.Script.Services.ScriptHandlerFactory.GetHandler(HttpContext的 context,String requestType,String url,String pathTranslated)+47
System.Web.HttpApplication.MapHttpHandler(HttpContext context,String requestType,VirtualPath path,String pathTranslated,Boolean useAppConfig)+203
System.Web.MapHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 128
System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean&amp; 已完成同步)+184
如果有人可以解释我做错了什么? THX。
答案 0 :(得分:0)
我相信WS类只是Apache的HTTPClient或类似的东西的包装。连接到SOAP Web服务的意义并不是最好的,因为您必须手动处理请求/响应xml。
您可能希望使用Apache Axis或Apache CXF来构建HelloWorld服务的存根。