gpt4 book ai didi

java - 如何忽略Web服务中的空参数?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:09:32 24 4
gpt4 key购买 nike

我有以下问题。我想制作网络服务,其中有很多输入参数。其中一些是 Double 类型。问题是有些 double 不是必需的,可以作为空标签传递给我的服务,比如

<param xsi:type="xsd:double"></param>

因此,WebLogic 在转向我的代码之前尝试解析那个 double,我得到了

<faultstring>empty String</faultstring>

异常响应

<bea_fault:stacktrace xmlns:bea_fault="http://www.bea.com/servers/wls70/webservice/fault/1.0.0">java.lang.NumberFormatException: empty String
at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1011)
at java.lang.Double.parseDouble(Double.java:540)

所以我的主要问题是,如何将 null 这样的空标签放入 Double 变量中?或者我如何在 WebLogic 尝试解析它之前指定该空值?提前致谢!

最佳答案

请查看定义消息结构的 XSD。关注两个不同但特殊的属性,它们可以为消息格式的 XSD 中的任何元素设置。它们是:minOccurs 和 nillable。您的问题的答案在于将 nillable 属性设置为“true”(默认情况下为 false。)

让我们看看 nillable 是什么意思,nillable value T/F 表示一个元素是否可以有一个空值(空字符串)。

因此,如果将 nillable 设置为 true 为

<元素名称="anyElement"nillable="true"/>然后在你的 XSD 中该元素可以像这些 在您的 SOAP 请求/响应中。

但是如果 nillable 被设置为 false(这是默认设置)那么您可以预料到您现在遇到的错误。

希望对你有所帮助。谢谢。

关于java - 如何忽略Web服务中的空参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15882231/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com