有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

当客户端输入为无效字符串时,java从JAXWS接收空的BigDecimal

我正在使用WSDL(契约优先)开发一个Web服务,该WSDL将其中一个字段定义为十进制类型,JAXB在生成客户机代码时将其转换为BigDecimal

到目前为止还不错。但当我使用SoapUI进行测试时,如果我发送一个无效的字符串给这个字段(比如“xxxx”),我会在服务器端收到一个空的BigDecimal。如果我发送了一个有效的数值,就可以了

我不能说这种行为对我来说毫无意义。API可能从BigDecimal的构造函数中获取NumberFormatException,并且只发送一个空值,以避免在到达服务器端之前抛出异常

但在我结束这个问题之前,我想确认一下这种行为,或者学习一些“修复”,让我自己处理可能的转换错误。到目前为止,我还没有找到任何关于这个场景的文档。另外,我在调试API时也没有发现任何可疑的东西

你能帮我指路吗?来改变这种行为或证明它

先谢谢你


共 (1) 个答案

  1. # 1 楼答案

    这是一个与国际化有关的问题

    我们还有一个web服务,它需要一个大的十进制数,例如:2.56

    我们在意大利的一个客户正在发送2,56。这将导致接收空参数。这是因为该客户端使用意大利语言环境