用C#.NET调用Java开发的WebService时,先在客户端封装的带有int属性的对象,当将该对象传到服务器端时,服务器端可以得到string类型的属性值,却不能得到int类型、double和DateTime类型的值(在服务端得到的均为null)

解决办法:

VS2005封装WebService引用时,如果WebService发布的是一个基本数据类型组成的对象,则会对该对象的非string属性同时生成两个属性,一般是这样的"属性××"、"属性××Specified"。而"属性名Specified"是一个bool类型,只有这个属性被设置成true时,"属性××"的值才会被序列化成xml传递。

同样的道理,用.NET提供WebService给JAVA调用时,如果是一个基本数据类型组成的对象,则会对该对象的非string属性同时生成两个属性,一般是这样的"属性××"、"属性××Specified"。如果不将“属性××Specified”设置为true的话,服务端得到的数据将是null。解决办法就是把“属性××Specified”设置为true或者把“属性××Specified”删掉。

资料:http://msdn.microsoft.com/zh-cn/library/system.xml.xmlattribute.specified(VS.80).aspx

.NET Framework 类库
XmlAttribute.Specified 属性

获取一个值,该值指示是否显式设置了属性值。

命名空间:System.Xml
程序集:System.Xml(在 system.xml.dll 中)

属性值

如果在原始实例文档中显式地为该属性给定一个值,则为 true;否则为 falsefalse 值指示该属性的值来自 DTD。

 备注

该属性是由实现负责的,而不是用户。如果用户更改该属性的值(即使它最后与默认/固定值具有相同的值),Specified 标志就会自动转为 true。若要重新将该属性指定为 DTD 中的默认/固定值,则用户必须删除该属性。然后,实现提供一个新属性,其 Specified 设置为 false,并具有默认/固定值(如果存在的话)。

摘要:

  1. 如果属性具有文档中的分配值,则 Specified 为 true,并且该值是分配值。

  2. 如果属性没有文档中的分配值,而具有 DTD 中的默认/固定值,则 Specified 为 false,该值是 DTD 中的默认/固定值。

  3. 否则,该属性不出现在文档的结构模型中。

使用.NET向webService传double、int、DateTime 服务器得到的数据时null的问题(转http://blog.csdn.net/slimboy123/article/details/4366701)的更多相关文章

  1. https webservice通讯 参考网址 http://blog.csdn.net/small____fish/article/details/8214938

    一.生成密钥库和证书可参考以下密钥生成脚本,根据实际情况做必要的修改,其中需要注意的是:服务端的密钥库参数“CN”必须与服务端的IP地址相同,否则会报错,客户端的任意. 1.生成服务器证书库keyto ...

  2. 使用springmvc从页面中获取数据,然后根据获得的参数信息进行修改,如果修改的数据中含有不是基本数据类型的参数。比如传的参数中有Date类型的数据时,需要我们进行参数类型转换。

    1.1 需求 在商品修改页面可以修改商品的生产日期,并且根据业务需求自定义日期格式. 1.2 需求分析 由于日期数据有很多格式,所以springmvc没办法把字符串转换成日期类型.所以需要自定义参数绑 ...

  3. C# Webservice 解决在运行配置文件中指定的扩展时出现异常。 ---> System.Web.HttpException: 超过了最大请求长度问

    摘自: http://blog.csdn.net/gulijiang2008/article/details/4482993 请在服务器端配置 方法一: 在通过WebService处理大数据量数据时出 ...

  4. JavaScript进阶(九)JS实现本地文件上传至阿里云服务器

    JS实现本地文件上传至阿里云服务器 前言 在前面的博客< JavaScript进阶(八)JS实现图片预览并导入服务器功能>(点击查看详情)中,实现了JS将本地图片文件预览并上传至阿里云服务 ...

  5. 混用Int与IntPtr导致GetProcAddress始终返回null

      注意NET某些类型在不同平台上的长度 NET中用句柄用得最多的是在DLLIMPORT中,混用int与intptr可能会导致某些API声明在X64平台中表现不正常,如 [DllImport(&quo ...

  6. Linux系统下定时上传文件至FTP服务器脚本

    环境:Red Hat Enterprise Linux Server release 6.4 需求:需要将Oracle数据库的定时备份上传至FTP服务器 1.干货,用户名:oracle,数据库名称:X ...

  7. pycharm上传代码到远程服务器

    本来不打算写了,可是,还是记不住 源自https://blog.csdn.net/zhangyu4863/article/details/80188207 我的是pycharm2018.1.4专业版: ...

  8. axis客户端循环访问webservice的时候只发送了几条数据就断开了的问题

    原因 axis客户端访问webservice默认是使用http1.0版本的,这个版本的http不能保持长连接,应该换成http1.1版本 具体修改步骤: <?xml version=" ...

  9. root账号无法上传文件到Linux服务器

    普通权限的账号,通过ftp工具,可以正常连上Linux服务器,可以正常上传文件.但是root账号却无法上传文件. 网上搜了半天才知道,默认情况下vsftp是不允许root用户登录的,可以通过修改限制来 ...

随机推荐

  1. [skill][makefile] makefile 常用内容记录

    其实,makefile有点复杂. 文档看了又看,还是要经常翻,做个记录备忘 :) 1.  隐含命令 implicit rules 与 implicit rule 相对应的有 pattern rules ...

  2. 自己写的JdbcUtils小工具-----得到Connection对象

    Properties文件中存放键值对------(可看对Properties文件的解析) static代码块是在构造函数之前执行的,而且只执行一次,即类首次加载时. 也就是只加载一次配置文件和加载数据 ...

  3. webpack浅析~

    1.webpack打包原理: 把所有依赖打包成一个 bundle.js 文件,通过代码分割成单元片段并按需加载. 2.webpack的优势: ①.webpack 是以 commonJS 的形式来书写脚 ...

  4. SpringBoot-整合@transactional注解

    springboot默认集成事务,只主要在方法上加上@Transactional即可

  5. 报错解决——OSError: libdarknet.so: cannot open shared object file: No such file or directory

    在python目录下打开终端,输入 python darknet.py 结果报错 Traceback (most recent call last): File “darknet.py”, line ...

  6. MACD:黄白线、红绿柱与0轴关系

    一.MACD的基本问题: (1)参数:统一用12,26,9 (2)MACD   位正.位不正原则 以下四种情况是黄白线.红绿柱与0轴关系的完全分类,行情出不了这四种情况, 即便黄白线在0轴单边反复缠绕 ...

  7. pycharm如何设置注释的字体颜色

    一.pycharm如何设置注释的字体颜色 1.打开pycharm编辑器,file > settings > Editor > Color Scheme > python > ...

  8. mybatis {arg0} 与 {0}

    解决方案: MyBatis的XML的配置文件中声明设置属性的useActualParamName参数值为假 <setting name="useActualParamName" ...

  9. (转)以太坊(Ethereum)创世揭秘 以太坊(Ethereum)创世揭秘

    什么是以太坊(Ethereum) 以太坊(Ethereum)是一个基于区块链技术,允许任何人构建和使用去中心化应用的区块链平台.像比特币一样,以太坊是开源的,并由来自全世界的支持者们共同维护.与比特币 ...

  10. get请求乱码解决

    1.修改tomcat的配置文件 <ConnectorURIEncoding="utf-8" connectionTimeout="20000" port= ...