Java与.NET 的Web Services相互调用

从IMU数据到精准定位:手把手推导ESKF中的四元数运动学与误差状态方程 本文详细介绍了如何从IMU数据推导ESKF中的四元数运动学与误差状态方程,实现精准定位。通过分析误差状态卡尔曼滤波器的优势、四元数表示的必要性,以及IMU测量模型和运动学基础,提供了完整的数学推导和实现要点。适合机器人定位和自动驾驶领域的算法工程师参考,帮助优化导航系统性能。 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> 一:简介   本文介绍了Java与.NET开发的Web Services相互调用的技术。本文包括两个部分,第一部分介绍了如何用.NET做客户端调用Java写的Web Services,第二部分介绍了如何用Java做客户端调用.NET开发的Web Services。   二:项目需要的工具   Windows2000 Server(IIS)   Jbuilder9.0( 含有Tomcat , axis)   JDK1.4 Java Web Services Develop   VS.Net 2003   备注:如果没有JBuilder的话就需要自己下载安装Tomcat4.1 以及 Axis的开发包,并做相应配置。由于网上有很多这样的文章,这里就不一一说明了。   三:用.NET做客户端调用Java写的Web Services   1. 生成一个Java Web Services   使用JBuilder 生成一个Web Services是非常简单的,我完全是按照它的帮助做的,只要一步步做下去就可以了。具体路径是Developing Web Services -> tutorials : Web Services(Axis) -> Creating a simple Web Services   2. 发布这个Web Services并得到它的WSDL   Web Services生成好之后,F9运行这个项目。然后,单击View浏览现有的Web 服务,单击Bean1的WSDL连接,我们可以在浏览器中察看它的WSDL描述。在浏览器地址栏复制WSDL地址,为下一步使用.NET开发客户端调用程序做准备。   3. 用VS.NET生成一个.NET的客户端   新建一个项目(WinForm,ASP.net都可以),我在这里使用的是一个Asp.Net项目。在起始页面上放置一个文本输入框用来显示调用Web Services的结果,放置一个按钮,用来单击调用Web Services。然后,选择添加Web 引用,在WSDL一栏中把刚才得到的WSDL地址复制过来,Web 引用的名称输入JavaService,单击添加引用按钮就可以了。此时,我们可以在VS.net 的Solution Explore中看到这个Web 引用。   在按钮的单击事件中输入下列代码:   JavaService.Bean1 bean = new JavaService.Bean1();   TextBox1.Text = bean.getSample.ToString ();   这样,一个.NET客户端就完成了,测试一下,工作正常,OK. 四:用Java做客户端调用.NET写的 Web Services   有了上面的成功,使我以为用Java做客户端调用也是一件十分容易的事情,可实际情况却耗费了我两天时间才得以实现。   1. 用VS.NET新建一个Asp Web Services工程,添加一个web 服务,命名为SumService.asmx。新增一个web method,代码如下:   [WebMethod]   public int IntAdd(int a,int b)   {   return a b ;   }   然后运行它,并利用IE进行测试成功。   2. 打开jbuilder9.0,新建一个项目,添加一个java class ,命名为TestNetService,输入下列代码: package MyWebServiceJavaClient; import java.util.Date; import java.text.DateFormat; import java.util.Date; import java.text.DateFormat; import org.apache.axis.client.Call; import org.apache.axis.client.Service; import javax.xml.namespace.QName; import java.lang.Integer; import javax.xml.rpc.ParameterMode; /** *

Title:

*

Description:

*

Copyright: Copyright (c) 2004

*

Company:

* @author not attributable * @version 1.0 */ public class TestNetService { public TestNetService() { } public static void main(String[] args) { try { Integer i = new Integer(1); Integer j = new Integer(2); String endpoint="http://localhost/MyServices/WebServiceTest/SumService.asmx"; Service service = new Service(); Call call = (Call)service.createCall(); call.setTargetEndpointAddress(new java.net.URL(endpoint)); call.setOperationName(new QName("http://www.my.com/SU","IntAdd")); call.addParameter("a",org.apache.axis.encoding.XMLType.XSD_DATE,javax.xml.rpc.ParameterMode.IN); call.addParameter("b",org.apache.axis.encoding.XMLType.XSD_DATE,javax.xml.rpc.ParameterMode.IN); call.setReturnType(org.apache.axis.encoding.XMLType.XSD_INT); call.setUseSOAPAction(true); call.setSOAPActionURI("http://www.my.com/Rpc"); Integer k = (Integer)call.invoke(new Object[]{i,j}); System.out.println( "result is " k.toString() "."); } catch (Exception e) {System.err.println(e.toString());} } }  运行上面的java客户端程序,你会发现系统会抛出一个SoapAction异常。奇怪,怎么会错误呢?想到了我开发的asp web services没有指定SoapAction,于是在SumService.asmx中的 [web method] 的上一行添加下列代码: [SoapRpcMethod(Action="http://www.my.com/Rpc",RequestNamespace="http://www.my.com/SU",ResponseNamespace="http://www.my.com/SU")]   重新编译运行asp web services后,在执行java程序,这时会发现输出了正确的结果3。   这样,用java调用.net生成的web services也算初步完成了,好像也不是很复杂是吧。其实,在实际工作中,我一开始并没有在网上找到一个很好的代码例子,全部是依靠jbuilder 和 axis的帮助完成的, 可总是提示什么找不到相应的SoapAction。而实际上,我在运行了asp web services后是可以在IE浏览器中看到那个SoapAction的。我试验过将默认的SoapAction拷贝到java代码中,但是java客户端依然抛出同样的异常,这要我也很迷惑。   五:总结   经过两天的试验,终于从技术上明确了通过Web Services实现.net 与 java的互通是可能的。当然有几点是需要注意的:   1. 在提供Web Services的时候,尽量使用xml schema中支持的变量类型做参数。如果使用.net 中的dataset这种类型,对于java来说解析起来将是一个灾难,当然,理论上是可以解析的。但是从效率角度来说,在Web Services与客户端交换信息的过程中,始终有一个序列化和反序列化的问题。如果使用dataset这种类型,系统还需要对它进行序列化操作,这将是一个很耗费资源的过程。而使用string类型将简单很多。   2. 如果使用了soap header等扩展功能,例如使用了微软提供的WSE技术,它们之间的相互通信需要作特殊处理。
osgEarth添加线特征 部分关键代码: osgEarth::Annotation::FeatureNode* pathNode = 0; osgEarth::Symbology::Geometry* path = new osgEarth::Symbology::LineString(); Track*track = dynamic_cast<Track*>(entity->getProperty(PS_TRACK)); if (track == nullptr) { return; } st. 阅读详情

相关推荐

数据助力行业发展:BJTU-RAO转向架数据集介绍

BJTU-RAO转向架数据集是完全公开的,何研究人员皆可以通过后文的下载链接免费下载数据,且在标注数据来源的前提下,研究人员可以自由使用BJTU-RAO转向架数据集。因此,聚焦各类列车转向架传动系统在途安全保障新技术研究和新算法开发,实现牵引电机、驱动齿轮箱和轴箱等关键部件的实时状态监测与智能故障诊断,对保障列车安全可靠运行具有重要的现实意义。BJTU-RAO转向架数据集包含51种健康状态的样本,涵盖正常状态、部件级单一故障、部件级复合故障以及系统级关联复合故障,数据量达116GB。

2401_88870554的博客 3502

org.apache.axis.client.Call 调用服务端

webService 调用服务端 // 需要导入的axis.jar包, org.apache.axis.client.Service service = new Service(); //生成客户端 org.apache.axis.client.Call call = (Call)service.createCall(); //设置服务地址,指明远程调用的类, 设置url call.setTargetEndpointAddress(new URL(url字符串)); //设置是否使用SoapAc

永无止境 1万+

Codex登录要手机验证码?Cockpit Tools跳过验证保姆级教程

摘要:OpenAI升级风控后,Codex登录需手机验证,增加批量账号使用成本。CockpitTools(GitHub 8.3k star)可绕过验证,支持多AI编程平台账号管理。操作步骤:1) 获取ChatGPT网页Session数据;2) 通过转换工具生成CPA格式JSON;3) 导入工具启动Codex。注意:仅适用于未绑定手机号的账号,Session会过期,且需防范数据泄露风险。商业账号通常直接提供认证文件。(150字)

5876

AXIS全攻略(二)[原]

六、服务的访问  GET方式的服务访问  一般的SOAP消息都是采用POST方式实现传递,但也可以通过GET方式来访问。比如以下给出的一个服务——“HelloWorld”,其源码如下: 文件HelloWorld.jwspublic class HelloWorld{    public String helloWorld()    {          System.out.print

猴子腿儿的Blog 3141

Python实战:5分钟搞定N-CMAPSS航空发动机数据集解析(附完整代码)

本文提供了一份针对N-CMAPSS航空发动机数据集的快速解析实战指南。通过Python的h5py库,详细演示了如何读取HDF5文件结构、理解数据分类(如传感器、健康参数、场景描述符)并加载为Pandas DataFrame。文章还澄清了数据集中常见的变量数量疑惑,并给出了从数据加载到构建剩余使用寿命预测模型预处理流水线的完整代码,帮助工程师和研究人员高效入门航空发动机预测性维护分析。

weixin_29057065的博客 422

用LangFuse+LangChain打造可观测的AI应用:从埋点到成本监控实战

本文详细介绍了如何将开源可观测性平台LangFuse深度集成到基于LangChain构建的AI应用中,特别是电商客服机器人场景。通过从基础SDK集成、提示词管理到成本监控的完整实战,帮助开发者实现对LLM应用内部工作流的清晰追踪、问题排查与费用分析,从而打造稳定、可控的生产级AI应用。

dapp9builder的博客 711

客户端使用AXIS的CALL调用

一、客户端使用AXIS的CALL调用 Java代码  package com.common;    import java.net.URL;  import java.util.ArrayList;  import java.util.List;    import javax.xml.namespace.QName;  import javax.xml.rpc.ParameterMode;   

萌萌的It人 www.itmmd.com 4万+

INMP441麦克风避坑指南:为什么你的I2S录音总有杂音?(附示波器调试技巧)

本文针对INMP441麦克风与ESP32等MCU通过I2S接口连接时常见的录音杂音问题,提供了一套系统的硬件调试指南。文章深入剖析了电源纹波、信号完整性、接地环路及时钟抖动四大噪声根源,并详细讲解了如何使用示波器进行逐层排查,给出了增加LC滤波、串联阻尼电阻、优化布局布线等切实可行的解决方案,帮助开发者从根本上提升音频质量。

k0l1m2n3o的博客 1023

C# ASP.NET MVC WebService 实现不同服务器之间的数据同步案例代码,完整代码5步骤。

在网上找了很多方案都是不完全的,出现各种各样的问题,于是自己就总结了一个完整的代码,代码如下: 1.request JS代码 $.ajax({ type: "POST", //访问WebService使用Post方式请求 contentType: "application/json", //WebService 会返回Json类型 ...

慢谈人生 2456

基于STM32L4XX 、HAL库的ATD5984步进电机驱动器驱动程序应用设计

一、简介: ATD5984是一款内部集成了译码器的微特步进电机 驱动器,能使双极步进电机以全、半、1/4、/1/8、1/16 和1/32步进模式工作。步进模式由逻辑输入管脚MSx选 择。其输出驱动能力达到28V±1.6A。 译码器是ATD5984易于使用的关键,通过STEP管脚 输入一个脉冲就可以使电机完成一次步进,省去了相序 表,高频控制线及复杂的编程接口,使其更适于没有复 杂的微处理器或微处理器负担过重的场合。 在步进操作期间,ATD5984的内部电路可以自动

PP_Cottage的博客 409

S7-200SMART PLC中进行MODBUS RTU通信的3种方法(1)

S7-200SMART PLC中进行MODBUS RTU通信的3种方法(1)

Robot_PLC_HMI_Automation 4241

.NET与Java的Web Services相互调用(转)

  一:简介       本文介绍了Java与.NET开发的Web   Services相互调用的技术。本文包括两个部分,第一部分介绍了如何用.NET做客户端调用Java写的Web   Services,第二部分介绍了如何用Java做客户端调用.NET开发的Web   Services。         二:项目需要的工具       Windows2000   Server(IIS)     ...

weixin_34302798的博客 81

华为数通方向HCIP-DataCom H12-831题库(多选题:121-140)

华为数通HCIP H12-831多选题

didiplus 1291

java与webservice相互调用,Java与.NET 的Web Services相互调用

Java与.NET 的Web Services相互调用作者:网络 来源:佚名 更新时间:2008-02-06 14:53:53点击:0一:简介本文介绍了java与.net开发的web services相互调用的技术。本文包括两个部分,第一部分介绍了如何用.net做客户端调用java写的web services,第二部分介绍了如何用java做客户端调用.net开发的web services。二:项目...

weixin_39791653的博客 384

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Java与.NET 的Web Services相互调用

         一:简介       本文介绍了Java与.NET开发的Web   Services相互调用的技术。本文包括两个部分,第一部分介绍了如何用.NET做客户端调用Java写的Web   Services,第二部分介绍了如何用Java做客户端调用.NET开发的Web   Services。         二:项目需要的工具       Windows2000   Server(IIS

生如夏花之灿烂! 731

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

[zz]Java与.NET 的Web Services相互调用

一:简介        本文介绍了Java与.NET开发的Web Services相互调用的技术。本文包括两个部分,第一部分介绍了如何用.NET做客户端调用Java写的Web Services,第二部分介绍了如何用Java做客户端调用.NET开发的Web Services。 二:项目需要的工具                Windows2000 Server(IIS)Jbui

zluoj的专栏 408

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

上一篇: 如何才算掌握Java
下一篇: JAR文件包及jar命令详解
java169
博客等级 码龄19年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值