1

考虑在浏览器中运行的小程序中的以下代码段:

WebServiceClient s = MyWS_Service.class.getAnnotation(WebServiceClient.class);
String servicePath = pathName;
String wsdlLocation = "http//host.dns.name:80/MYWSAPP/MyWS?wsdl";
MyWS_Service service = null;
WebServiceClient s = MyWSService.class.getAnnotation(WebServiceClient.class);
try{
    wsdlURL = new URL(wsdlLocation); 
    service = new myWSService(wsdlURL, new QName(s.targetNamespace(), s.name()));
    myWS = service.getMyWSSOAP();

}catch (MalformedURLException e){
    System.out.println ("unable to create wsdlURL = "+wsdlLocation);
}

如果 myWS 的创建没有问题,我会使用它来调用 Web 服务方法(Web 服务使用 Metro 并在 Tomcat 上运行)。

一切正常,除了我注意到以下两个刺激物:

  1. 执行上面引用的代码块需要很长时间
  2. 网络跟踪显示客户端发送 HTTP GET 请求:/MYWSAPP/META-INF/services/javax.xml.ws.spi.provider 和 /MYWSAPP/META-INF/services/javax.xml.stream.XMLInputFactory。

这些 GET 请求的回复是 HTTP/1.1 404 Not Found。

关于如何防止这些不必要的 HTTP GET 请求的任何想法?上面的代码执行大约需要 3 秒,而实际的 Web 服务调用执行时间不到 100 毫秒,这是否合理?

4

1 回答 1

0

将此参数传递给小程序:

codebase_lookup = false
于 2011-11-10T14:58:01.397 回答