有人可以告诉我我做错了什么吗?
我正在尝试组织一个快速的Web服务测试,看看我现在是否可以让它工作。
我遇到的问题是,如下所示,它不起作用,但如果我更改网址并将“myWebsite.com
”替换为“localhost
”则可行。所以,我知道服务器端正在工作(我仍然检查并仔细检查它)。但我需要通过远程客户端来工作,而我却无法让它工作。
任何帮助将不胜感激。
package stickman.Server;
import java.net.*;
import javax.xml.namespace.*;
import javax.xml.ws.*;
import stickman.Combined.*;
public class TestApp {
public static void main(String[] args) throws Exception {
// --------------------------------------------
// changing "myWebite.com" to "localhost" works
URL url = new URL(
"http://myWebsite.com:32768/home/rhyan/workspace/Stickman/bin/stickman/Server");
// --------------------------------------------
QName qname = new QName("http://Server.stickman/","StickmanServerService");
Service service = Service.create(url, qname);
StickmanServerInterface ssi = service.getPort(StickmanServerInterface.class);
Account a = ssi.getAccount("This is a test");
System.out.println(a.getUserId());
}
}
编辑:这是错误跟踪...
Exception in thread "main" com.sun.xml.internal.ws.wsdl.parser.InaccessibleWSDLException: 2 counts of InaccessibleWSDLException.
java.net.ConnectException: Connection refused
java.net.ConnectException: Connection refused
at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.tryWithMex(RuntimeWSDLParser.java:161)
at com.sun.xml.internal.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:133)
at com.sun.xml.internal.ws.client.WSServiceDelegate.parseWSDL(WSServiceDelegate.java:254)
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:217)
at com.sun.xml.internal.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:165)
at com.sun.xml.internal.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:93)
at javax.xml.ws.Service.<init>(Service.java:76)
at javax.xml.ws.Service.create(Service.java:700)
at stickman.Server.ServerTestApp.main(ServerTestApp.java:17)
答案 0 :(得分:1)
可能是DNS问题?您将myWebsite.com解析为什么IP地址?
答案 1 :(得分:1)
您的异常表示无法访问服务的wsdl - 而不是服务本身。您是否可以确认此位置的服务的wsdl是否可用 - http://myWebsite.com:32768/home/rhyan/workspace/Stickman/bin/stickman/Server,并且wsdl中的url指向正确的工作端点。
答案 2 :(得分:1)
我花了8天的时间在网上阅读了大量的内容,然后我通过随机的Google搜索找到了问题的答案:Publishing a WS with Jax-WS Endpoint
“localhost”应该是0.0.0.0,我完全应该知道这一点。 感谢那些试图提供帮助的人。