use*_*035 7 java wsdl axis2 jax-ws
我想在Java Web服务类中实现方法重载,如下所示:
public String myMethod(User user)
{
// My code
}
public String myMethod(User[] user)
{
for(int i=0; i<user.length; i++)
{
myMethod(user[i]);
}
}
Run Code Online (Sandbox Code Playgroud)
如果我转发一个User对象myMethod(),它应该触发第一个方法,如果我发送一个Users 数组,它应该触发第二个方法.
在WSDL文件中,它只显示一个方法.但是,如果我尝试调用@WebMethod(operationName="")这两个调用,我将无法生成WSDL文件.
重载Web服务方法并不困难.至少使用Axis 1.4非常简单.如果服务中有两个重载方法,如下所示:
public String myMethod(String firstName, String lastName) throws RemoteException
public String myMethod(String name) throws RemoteException
Run Code Online (Sandbox Code Playgroud)
那么请求是这样的:
http://localhost:8080/services/testService?method=myMethod&name=<name>
Run Code Online (Sandbox Code Playgroud)
将调用第二种方法.
和这样的请求:
http://localhost:8080//services/testService?method=myMethod&firstName=<first_name>&lastName=<last_name>
Run Code Online (Sandbox Code Playgroud)
将调用第一个方法.
决议由Axis完成.
| 归档时间: |
|
| 查看次数: |
5451 次 |
| 最近记录: |