为什么C#动态调用Java的cxf多了bool型参数
最近的一个项目需要C#调用Java的cxf发布的接口,接口参数文档只给我的是两个long型,但是通过我动态加载发现,参数是四个。
比如接口文档给的接口是
TestFunc(long, long);
而我通过动态加载,反射后发现接口为
TestFunc(long, bool, long, bool);
之前一直怀疑是否接口文档没有及时更新,造成的错误。不过后面空闲后仔细跟踪了代码,并用reflector反射了动态编译的dll。
发现dll中多出的bool参数的名称很有规律。
比如上面接口反射出来的具体参数名为
TestFunc(long userid, bool useridSpecified, long sno, bool snoSpecified);
看见没,bool的参数名就是前面long型的参数名加上Specified。
在网上搜索了很久,搜索【c#动态调用cxf 多参数】,一直搜索不到结果,最后用【c# Specified属性】好不容易才搜到一篇文章
http://blog.csdn.net/xiaogui340/article/details/8548847
才明白原来这个多出来的属性表示是否序列化其对应参数,并且string型参数是不需要这个属性的。
因为java接口不是我写的,我第一次调用,也不能清楚知道是否如文中所述,如果没有此属性,则int,datetime之类的类型不能传到服务端。
不过我这次参数个数增多,那肯定是由于这个原因而增加的属性。
为什么C#动态调用Java的cxf多了bool型参数的更多相关文章
- Delphi动态调用Java的WebService 转
Delphi动态调用Java的WebService —— 基于“Axis2发布WebService例子(HelloWorld)” uses ComObj; var WsObject: Variant; ...
- .net WebServer示例及调用(接口WSDL动态调用 JAVA)
新建.asmx页面 using System; using System.Collections.Generic; using System.Linq; using System.Web; using ...
- Delphi DLL的创建、静态及动态调用
转载:http://blog.csdn.net/welcome000yy/article/details/7905463 结合这篇博客:http://www.cnblogs.com/xumenger/ ...
- 六、Android学习笔记_JNI_c调用java代码
1.编写native方法(java2c)和非native方法(c2java): package com.example.provider; public class CallbackJava { // ...
- cocos2d-x笔记5: 通过jni实现C++调用Java
Cocos2d-x的跨平台性很强大,但是偶尔也需要平台的原生API结合. C++在Win32平台下简单的很,C++可以直接用MFC或者调用Win32API. Ios在XCode下直接就能C++和OC混 ...
- Ruby学习之动态调用
作为一个动态语言,对象中的方法不会像静态语言一样需要验证确实存在,动态语言的对象之间一直保持着交谈,如果你调用一个不曾定义过的方法,程序也不会马上就报错而无法运行,只有当运行到你调用这个方法时,解释器 ...
- 03_Android NDK中C语言调用Java代码,javah的使用,javap的使用以及生成签名,Android.mk的编写,C代码的编写
1 案例场景,通过C语言回调Java的代码,案例的最终界面: 2 案例的代码结构如下: 3 编写DataProvider的代码: package com.example.ndkcallbac ...
- JNI C反射调用java方法
前面记录了调用C的学习笔记,现在来记录一下C反射调用Java的笔记.JNI开发学习之调用C方法 Android开发中调用一个类中没有公开的方法,可以进行反射调用,而JNI开发中C调用java的方法也是 ...
- .bat文件调用java类的main方法
此处记录一个小例子,备用,说不定哪天写小工具时会用到. @echo on set JAVA_HOME=C:\Program Files\Java\jdk1.6.0_43 set classpath=. ...
随机推荐
- N沟道增强型MOS管双向低频开关电路
MOS-N 场效应管 双向电平转换电路 -- 适用于低频信号电平转换的简单应用 如上图所示,是 MOS-N 场效应管 双向电平转换电路.双向传输原理: 为了方便讲述,定义 3.3V 为 A 端,5.0 ...
- android中获取root权限的方法以及原理(转)
一. 概述 本文介绍了android中获取root权限的方法以及原理,让大家对android 玩家中常说的“越狱”有一个更深层次的认识. 二. Root 的介绍 1. Root 的目的 可以让我们拥有 ...
- C语言入门(10)——if分支语句
在我们写的函数中可以有多条语句,但这些语句总是从前到后顺序执行的.除了从前到后顺序执行之外,有时候我们需要检查一个条件,然后根据检查的结果执行不同的后续代码,在C语言中可以用分支语句实现,比如: if ...
- NOI2011 Day1
NOI2011 Day1 兔农 题目描述:\(fib[1]=fib[2]=1, fib[i]=fib[i-2]+fib[i-1] (i\geq 3)\),若\(fib[i] \equiv 1(mod ...
- 备机大地院系项目dataguard archived_log及standby_log
主库archivelog及standbylog 仅仅是测试4天的数据,项目并未正式上线/data/dddb/DBSoftware/app/oracle/product/11.2.0/dbhome_1/ ...
- KJFrameForAndroid框架学习----高效设置网络图片
KJFrameForAndroid框架项目地址:https://github.com/kymjs/KJFrameForAndroid 或备用地址http://git.oschina.net/kymjs ...
- 【DateStructure】 Charnming usages of Map collection in Java
When learning the usage of map collection in java, I found serveral beneficial methods that was enco ...
- curl返回值写入内存的场景
直接上代码: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <cur ...
- 获取 web容器中的bean
public class WebContextBeanFinder { public static Object getBean(String beanId) { ServletContext ser ...
- 为什么IIS中找不到.net framework 4.5(转)
.net 4.5是4.0的update,所以直接用4.0部署就可以了 .NET 4.5 is an in-place replacement for .NET 4.0, When .NET 4.5 i ...