如何使用带有两个参数的方法创建Web服务

时间:2015-03-10 07:25:58

标签: java web-services jax-ws

例如,我必须使用以下详细信息创建一个Web服务:

Webservice名称是WS1 方法名称为initiateBatchProcess(String Status,int BatchID)

我已尝试使用一个参数进行以下操作,但如何使用两个参数执行此操作并将其返回到webservice / soap

的响应中
public class WS1 
{
    int status;

    @WebMethod(operationName="status")
    public int status(int status) {
        return status;
    }
}

1 个答案:

答案 0 :(得分:3)

您只需添加其他参数即可。 @WebParam的使用是可选的,如果你想要或放弃它,请保留它。

@WebMethod(operationName="initBatch")
public void initiateBatchProcess(@WebParam(name = "Status") String Status, 
                   @WebParam(name = "Batch") int BatchID) {
      //do stuff
}

LE:

所以,如果你想发送回不止一件事,我能想到的最好的解决方案是将这些东西封装到一个对象中。

@WebMethod(operationName="initBatch")
public RezultSet initiateBatchProcess(String status, int batchID) {

      //do stuff

    ResultSet result = new ResultSet();
    result.setStatus(status);
    result.setBatchId(batchID);
    return result;
    /*
    *Or you can do something like 
    *return new ResultSet(status, batchID);
    */

}

ResultSet只是一个有2个成员的简单bean。

public class ResultSet {

    private String status;
    private int batchID;

    // getters, setters, constructors

}