[英]have a java web service return a Null Web Result
我有一个Java Web服务,当找不到任何项目时,我希望返回一个空对象。 取而代之的是,我找回一个实例,将所有属性设置为null。 我可以检查具有null属性的项目,但希望返回自身的项目为Null。
@WebMethod
@WebResult(name="item")
public item findItem(
@WebParam(name="Id") int Id){
//...
if(ItemNotFound(Id)){
return null;
}
}
在客户端,wsItem不为null
item wsItem=ws.findItem(1);
if(wsItem==null){
// this will not be hit
}
检查item属性将在客户端运行
item wsItem=ws.findItem(1);
if(wsItem.Property1==null){
// this will
}
根据您提供的信息,我不明白为什么您不能简单地做
if(item.getProperties() == null)
return null;
编辑:
好的,既然您已经更新了更多代码,那么我对发生的事情有了更好的了解。 您可以设置一些断点吗? 您确定ItemNotFound
返回的是true
,并且您实际上是在服务代码中到达return null
行吗? 因为我看不到其中的new
关键字,所以必须执行一些额外的操作才能使客户端代码负责。
编辑2:
我最初将其作为纯Java问题解决,但是基于您的最新评论,事实并非如此。 聊天中指出,这可能与您的注释或其他某种更广泛的设置有关。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.