Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当使用端点类发布Web服务时,WSDL是在哪里创建的?_Java_Web Services_Wsdl_Server_Endpoint - Fatal编程技术网

Java 当使用端点类发布Web服务时,WSDL是在哪里创建的?

Java 当使用端点类发布Web服务时,WSDL是在哪里创建的?,java,web-services,wsdl,server,endpoint,Java,Web Services,Wsdl,Server,Endpoint,例如:我的Web服务中有3个类 1-SEI(Web服务的接口): 2-SIB(接口的实现) 3-以及负责发布的班级 package calc; import javax.xml.ws.Endpoint; public class CalculadoraServerPublisher { public static void main(String[] args) { Endpoint.publish("http://127.0.0.1:9876/calc",

例如:我的Web服务中有3个类

1-SEI(Web服务的接口):

2-SIB(接口的实现)

3-以及负责发布的班级

package calc;

import javax.xml.ws.Endpoint;

public class CalculadoraServerPublisher {

    public static void main(String[] args)
    {
        Endpoint.publish("http://127.0.0.1:9876/calc",
        new CalculadoraServerImpl());
    }
}
如果我运行第三个类并访问此地址:

http://127.0.0.1:9876/calc?wsdl

我将看到我的Web服务的WSDL。现在有一个问题:如果我可以访问它,它实际上位于我的计算机中的某个地方,但是……在哪里?我尝试使用我所知道的每一个Windows搜索引擎(我使用的是Windows 8.1),但没有一个能够找到它。毕竟,它在哪里?

在您的示例中,当访问地址时,WSDL契约在运行时按需生成。这就是为什么在驱动器的任何位置都找不到物理WSDL文件

如果仔细查看URL,它不会指向物理的.wsdl文件:
http://127.0.0.1:9876/calc?wsdl
。它只是问号后面的一个查询字符串

如果需要更多信息,请参阅

package calc;

import javax.xml.ws.Endpoint;

public class CalculadoraServerPublisher {

    public static void main(String[] args)
    {
        Endpoint.publish("http://127.0.0.1:9876/calc",
        new CalculadoraServerImpl());
    }
}
http://127.0.0.1:9876/calc?wsdl