2

我有一个用 VB.NET 编写的 WebService,在其中,我有一个 Long 定义如下:

<s:element minOccurs="0" maxOccurs="1" name="clientId" type="s:long"/>

现在,每当我从另一个 VB.NET 应用程序中调用此 WS 以及设置clientIdvar 时,我还必须设置clientIdSpecifiedTrue- 这就是 .NET 的怪癖。但是,我的客户使用 Java,问题是 - 他们是否必须这样做并设置clientIdSpecifiedTrue

这个布尔值不是规范的一部分,所以如果他们确实需要设置它,我必须警告他们。

4

2 回答 2

2

如果您的客户端使用的是 java,只需给他们 xsd 文件就足够了,因为它可以编译成 java 类,在编组为 xml 之前提供验证。

需要注意的是,minOccurs=0 意味着它是可选的设置。

于 2012-10-22T17:07:09.773 回答
1

在 Java 方面,这种构造通常会被编译为类型java.lang.Long(包装类)而不是long(原始类型)的属性,使用null值来表示元素不存在的情况。

于 2012-10-22T17:10:24.670 回答