私自身の理解のために、自分のWebサービスをJavaで作成する方法を学びたいと思います。Java WebサービスWSDLがロードされていてもWebサービスではありません
私はlocalhostに行きました:9998/calculate?wsdl私のwsdlファイルを見ることができますが、私がlocalhostに行ったときに:9998/calculate Webサービスが見えません。私はちょうどERR_EMPTY_RESPONSE localhostがデータを送信しなかったと言うクロムのエラーを取得します。ここで
は私のインターフェイスである:ここでは
package Webservice;
import javax.jws.WebMethod;
import javax.jws.WebService;
//Service Endpoint Interface
@WebService
public interface Calculate{
@WebMethod
public int add(int x, int y);
@WebMethod
public int sub(int x, int y);
@WebMethod
public int mul(int x, int y);
}
は、インターフェイスの私の実装です:
package Webservice;
import javax.jws.WebService;
//Service Implementation
@WebService(endpointInterface = "Webservice.Calculate")
public class CalculateImpl implements Calculate {
public CalculateImpl() {
}
@Override
public int add(int x, int y) {
return (x+y);
}
@Override
public int sub(int x, int y) {
return (x-y);
}
@Override
public int mul(int x, int y) {
return (x*y);
}
}
、ここでは私の出版社です:
package Webservice;
import javax.xml.ws.Endpoint;
public class CalculatePublisher {
public static void main(String[] args) {
Endpoint ep = Endpoint.create(new CalculateImpl());
ep.publish("http://localhost:9998/calculate");
}
}
任意の助けをいただければ幸いです。
WSDLはSOAPサービスを表します。各サービス操作では、HTTP要求がSOAP呼び出しである必要があります。これは、ブラウザにURLを入力することによって行われた単純なHTTP GET要求とは異なります。 https://www.w3.org/TR/2000/NOTE-SOAP-20000508/#_Toc478383526およびhttps://www.w3.org/TR/2000/NOTE-SOAP-20000508/#_Toc478383539を参照してください。 – VGR