【发布时间】:2012-12-22 21:21:36
【问题描述】:
我正在开发一个简单的网络服务和客户端。查看我的服务的 sn-p:
@webService
public Car carData(int id) {
try {
return carDAO.getCars(id);
} catch (NullPointerException e) {
System.out.println("Error: "+e.getLocalizedMessage());
}
return null;
}
是否可以将null返回给客户端,然后客户端应该处理null或者Web服务处理null并抛出异常更好?
更新: 如何返回 nullpointerexception 而不是返回 null?
你会推荐什么?
谢谢
【问题讨论】:
-
如果是web,为什么不返回一个有效的HTTP响应码和相应的错误信息呢?
-
现在我只是在控制台中测试:)
-
最好的方法是给出一个有效的答案。如果有任何异常,最好自己抛出服务异常(故障),让客户端来处理。更多信息:SOAP faults or results object?
-
这是UI层还是逻辑层?如果是 UI 层并且 UI 是基于 HTTP 的,那么正确的响应是带有状态代码和某种形式的内容(例如错误消息)的 HTTP 响应。但是,您正在测试它应该包括某种复制应用程序上下文的 HTTP 工具。对逻辑层进行单元测试可以跳过 HTTP 工具,因为不涉及 UI。
-
忘记网络服务和客户端吧。我只想知道在基本示例中使用哪种方法更好。我刚刚更新了问题。
标签: java exception null nullpointerexception return