我已经通过RAD(eclipse)创建了一个JaX Webservice,我能够将@WebParam注释与我的函数参数一起使用,但我也想使用@webresult等但不知道我应该在哪里指定它们,在谷歌我有接口,但在这里我只有类和委托类。
我的班级是
public class GetFPDDataClass {
public String GetFPDDataInput(String PolicyNumber)
{
return PolicyNumber;
}
}
这是我的委托类
@WebService (targetNamespace="fpd", serviceName="GetFPDDataClassService", portName="GetFPDDataClassPort")
public class GetFPDDataClassDelegate{
fpd.GetFPDDataClass _getFPDDataClass = null;
public String GetFPDDataInput (@WebParam(name="PolicyNumber") String PolicyNumber) {
return _getFPDDataClass.GetFPDDataInput(PolicyNumber);
}
public GetFPDDataClassDelegate() {
_getFPDDataClass = new fpd.GetFPDDataClass(); }
}
答案 0 :(得分:5)
@WebResult
和@WebMethod
都在方法级别设置。
@WebResult
用于自定义表示返回值的XML元素的名称。
@WebMethod
用于标记向Web服务客户端公开的业务方法。默认情况下,如果未实现Web服务接口,则会公开类中的所有公共方法。
示例:
@WebMethod
@WebResult(name="hellomessage")
public String getHello() {
....
}
更新:
如果我没有@WebResult
,我会看到以下xml:
<ns2:getHelloResponse>
<return>hello fff</return>
</ns2:getHelloResponse>
@WebResult
:
<ns2:getHelloResponse>
<hellomessage>hello fff</hellomessage>
</ns2:getHelloResponse>