Java JAX-WS2.0-从xsd:double迁移到xsd:decimal

Java JAX-WS2.0-从xsd:double迁移到xsd:decimal,java,web-services,floating-point,jax-ws,Java,Web Services,Floating Point,Jax Ws,我已经编写了一个应用程序,它严重依赖于从web服务获得的数据,我已经为这些web服务生成了JAX-WS客户端。WSDL使用xsd:double类型来表示所有浮点类型,但由于它们有时表示货币金额,我想将它们全部更改为xsd:decimal对象。只要我使用自己的WSDL副本,将所有xsd:double事件更改为xsd:decimal,并从修改后的WSDL生成存根,我是否可能遇到任何问题 谢谢和亲切的问候 Joseph.只要您不依赖于编码任何“奇怪的值”/IEEE-754细节(取决于您的观点),如-0

我已经编写了一个应用程序,它严重依赖于从web服务获得的数据,我已经为这些web服务生成了JAX-WS客户端。WSDL使用xsd:double类型来表示所有浮点类型,但由于它们有时表示货币金额,我想将它们全部更改为xsd:decimal对象。只要我使用自己的WSDL副本,将所有xsd:double事件更改为xsd:decimal,并从修改后的WSDL生成存根,我是否可能遇到任何问题

谢谢和亲切的问候


Joseph.

只要您不依赖于编码任何“奇怪的值”/IEEE-754细节(取决于您的观点),如-0.0、infinity或NaN,并且小心避免web服务提供的内容与应用程序期望的内容之间的阻抗不匹配,我认为您不应该遇到任何问题


我假设这些值将在应用程序中作为
BigDecimal
s处理?

BigDecimal
s将处理xsd:decimal对象。我不希望任何
NaN
s或
Infinity
s回来,但如果他们回来了,那可能是个问题。@Joseph:那你应该没事。我相信如果服务使用科学记数法对双值进行编码,你可能会有问题。十进制特别禁止科学记数法,而xsd:double允许它作为一个选项。是的,我考虑过。。。希望它不会发生,因为货币价值很小。时间会证明一切的!