如何将 Web 服务中的“null”值表示为真正的 null 或空字符串,而不是“null”字符串

Mr.*_*mes 5 java string null web-services jsf-2

在我的应用程序中,我使用 JSF 和 Java Web 服务。当我的任何 Web 服务函数返回一个null值时,它始终表示为“null”字符串。因此,我无法使用 EL 表达式来#{empty object}测试null值或空字符串。

我想问是否有一种方法可以进行配置,使 Java Web Services 将返回null值作为空字符串,或者 JSF/EL 可以将“null”字符串理解为null值。

小智 0

如果你,

  • 使用 SOAP,您必须记住 SOAP 消息是 XML,因此您可以返回一个空字符串nullempty object

  • 使用 HTTP 或 REST,您必须记住 HTTP 使用类型String来序列化对象和信息

所以你有选择:

  • 返回对象的正确序列化。如果您使用 SOAP,请记住 Base64 编码。

  • 错误的正确输出值。您可以直接序列化异常或自定义消息代码。

我希望能帮助你。