VS创建wsdl服务提供给java调用
文章目录
- 前言
- 1.c#创建asp.net web服务
- 1.1 创建ASP.NET Web应用程序
- 1.2 添加服务类
- 1.3 定义服务方法
- 1.3 浏览服务
- 1.4 发布服务
- 1.5 IIS部署服务
- 2.Java中调用服务
- 2.1 用动态客户端工厂类调用
- 2.1.1 引入依赖
- 2.1.2 调用测试代码
- 2.1.3 测试结果
- 2.2 创建代理类进行调用
- 2.2.1 使用wsdl2java指定 WSDL URL 并生成 Java 代码
- 2.2.2 由于版本不兼容生成报错
- 3. c#中winform程序调用
- 3.1 创建一个winform程序
- 3.1.1 直接添加服务引用
- 3.1.2 在窗体添加标签和txtbox和按钮
- 3.1.3 添加按钮点击事件
- 3.1.4 测试调用
前言
平时开发中经常遇到不通厂家对于不同语言进行开发,通常都是提供服务进行数据交互,本文将讲解VS开发wsdl服务给java调用,创建服务通过IIS发布soap协议的服务,java中进行调用。
1.c#创建asp.net web服务
1.1 创建ASP.NET Web应用程序

1.2 添加服务类
然后右键添加类,添加web服务,如下截图:

1.3 定义服务方法
namespace MyService
{/// <summary>/// WebService1 的摘要说明/// </summary>[WebService(Namespace = "http://tempuri.org/")][WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)][System.ComponentModel.ToolboxItem(false)]// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。 // [System.Web.Script.Services.ScriptService]public class WebService1 : System.Web.Services.WebService{[WebMethod]public string HelloWorld(){return "Hello World";}[WebMethod]public int add(int x,int y){return x + y;}}
}
1.3 浏览服务

1.4 发布服务
选中项目右键发布
发
发布服务到文件夹

之后随便选中一个文件夹即可。
1.5 IIS部署服务
添加网站,网站名字,选中发布的物理路径,可以不指定ip默认是本机,修改端口。

此时浏览网站不好使,还需要选中目录浏览->打开功能


浏览网站

打开服务


此处web服务发布成功,接下来就是调用。
2.Java中调用服务
2.1 用动态客户端工厂类调用
2.1.1 引入依赖
<dependency><groupId>org.apache.cxf</groupId><artifactId>cxf-rt-frontend-jaxws</artifactId><version>3.5.2</version></dependency><dependency><groupId>org.apache.cxf</groupId><artifactId>cxf-rt-transports-http</artifactId><version>3.0.4</version></dependency>
2.1.2 调用测试代码
public static void main(String[] args) {JaxWsDynamicClientFactory factory = JaxWsDynamicClientFactory.newInstance();//调用服务的地址String url ="http://localhost:8083/WebService1.asmx?wsdl";// 创建客户端连接Client client = factory.createClient(url);//调用方法String methodName = "add";//调用参数Object[] parameters= new Object[] {1,2};;//返回的结果Object[] res = null;try {res = client.invoke(methodName, parameters[0],parameters[1]);System.out.println(res[0]);}catch(Exception e) {e.printStackTrace();}}
2.1.3 测试结果

2.2 创建代理类进行调用
2.2.1 使用wsdl2java指定 WSDL URL 并生成 Java 代码
wsdl2java 工具其实是 Apache CXF 的一部分。下载最新的稳定版本apache-cxf-4.0.2.zip。
wsdl2java -client -d src/main/java -p com.elite.java.wsdl.cxf.client http://localhost:8083/WebService1.asmx?wsdl
2.2.2 由于版本不兼容生成报错
此处不在演示!
3. c#中winform程序调用
3.1 创建一个winform程序
3.1.1 直接添加服务引用

3.1.2 在窗体添加标签和txtbox和按钮

3.1.3 添加按钮点击事件
private void button1_Click(object sender, EventArgs e){//获取值int a = int.Parse(textBox1.Text);int b = int.Parse(textBox2.Text);ServiceReference1.WebService1SoapClient client = new ServiceReference1.WebService1SoapClient();int res = client.add(a,b);textBox3.Text = res.ToString();}
3.1.4 测试调用

相关文章:
VS创建wsdl服务提供给java调用
文章目录 前言1.c#创建asp.net web服务1.1 创建ASP.NET Web应用程序1.2 添加服务类1.3 定义服务方法1.3 浏览服务1.4 发布服务1.5 IIS部署服务 2.Java中调用服务2.1 用动态客户端工厂类调用2.1.1 引入依赖2.1.2 调用测试代码2.1.3 测试结果 2.2 创建代理类进行调用2.2.1 使用ws…...
盘点 TypeScript 内置类型
盘点 TypeScript 内置类型 盘点 TypeScript 内置类型PartialRequiredReadonlyPickRecordExcludeExtractOmitNonNullableParametersConstructorParametersReturnTypeInstanceTypeUppercaseLowercaseCapitalizeUncapitalize 盘点 TypeScript 内置类型 当开发者开始学习 TypeScri…...
Netty 执行了多次channelReadComplete()却没有执行ChannelRead()
[TOC](Netty 执行了多次channelReadComplete()) Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for change,challenge Survive. happy for hardess to solve denpendies.…...
直线导轨的精密等级以及划分依据
直线导轨的作用,是用来支撑和引导运动部件,按给定的方向做往复直线运动的,直线导轨是高精密度的传动元件,广泛使用在各行各业中。 直线导轨的精密等级是判断产品质量的一个重要指标。在众多种类的直线导轨产品中,精密等…...
Ubuntu Server版 之 apache系列 常用配置 以及 隐藏 版本号 IP、Port 搭建服务案例
查看版本 旧的 用 httpd -v 新的 用 apache2 -v 配置检测 旧的 httpd -t 新的 apachectl configtest window用的apache 是 httpd -t Linux 中 apachectl configtest 主配置文件 之前旧版apache 是httpd 现在都改成 apache2 /etc/apache2/apache2.conf window中 httpd.con…...
Kubernetes(K8s)从入门到精通系列之七:K8s的基本概念和术语之安全类
Kubernetes K8s从入门到精通系列之七:K8s的基本概念和术语之安全类 一、安全类二、Role和ClusterRole三、RoleBinding和ClusterRoleBinding一、安全类 开发的Pod应用需要通过API Server查询、创建及管理其他相关资源对象,所以这类用户才是K8s的关键用户。K8s设计了Service A…...
网络安全(黑客)自学误区
前言 网络安全是当今社会中至关重要的议题。随着科技的迅猛发展,网络已经渗透到我们生活的方方面面,给我们带来了巨大的便利和机遇。然而,网络也存在着各种风险和威胁,如黑客攻击、数据泄露等。因此,学习网络安全知识…...
在OK3588板卡上部署模型实现人工智能OCR应用
一、主机模型转换 我们依旧采用FastDeploy来部署应用深度学习模型到OK3588板卡上 进入主机Ubuntu的虚拟环境 conda activate ok3588 安装rknn-toolkit2(该工具不能在OK3588板卡上完成模型转换) git clone https://github.com/rockchip-linux/rknn-to…...
在linux中怎样同时运行三个微服务保证退出时不会终止
前言 1.maven中打jar包 使用插件打包,必须在pom.xml中添加插件,否则不能在linux中编译运行 <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version&g…...
MD-MTSP:成长优化算法GO求解多仓库多旅行商问题MATLAB(可更改数据集,旅行商的数量和起点)
一、成长优化算法GO 成长优化算法(Growth Optimizer,GO)由Qingke Zhang等人于2023年提出,该算法的设计灵感来源于个人在成长过程中的学习和反思机制。学习是个人通过从外部世界获取知识而成长的过程,反思是检查个体自…...
Python入门一
目录: python基本操作python基本数据类型python字符串基本操作python的运算符python控制流-判断python控制流-循环python常用数据结构-列表python常用数据结构-元组python常用数据结构-集合python常用数据结构-字典python函数python函数进阶与参数处理pythonlambda…...
mysql_2.4——安装常见问题
1. 将MySQL添加到环境变量 将 mysql 的 bin 目录地址添加到 系统环境变量 --> PATH 中 2. 将MySQL添加到服务 以管理员的方式启动 cmd (命令提示窗口),使用命令进入到 [mysql]\bin ,执行如下命 令。 # mysqld --install (服务名) # 如: mysqld --…...
行业追踪,2023-07-31,板块多数都是指向消费
自动复盘 2023-07-31 凡所有相,皆是虚妄。若见诸相非相,即见如来。 k 线图是最好的老师,每天持续发布板块的rps排名,追踪板块,板块来开仓,板块去清仓,丢弃自以为是的想法,板块去留让…...
K8S故障排查
故障现象:部署pod时,报错没发调度到节点。 排查步骤: 1、查看集群的状态 [rootk8s-master1 nginx]#kubectl get nodes2、查看k8s组件的状态-kubelet,kube-apiservice 3、查看docker的Cgroup driver和k8s的Cgroup driver类型&…...
idea集成jrebel实现热部署
文章目录 idea集成jrebel实现热部署下载jrebel 插件包下载jrebel mybatisplus extensition 插件包基础配置信息情况一其次情况三情况四情况五情况六情况七 验证生效与否 Jrebel热部署不生效的解决办法 idea集成jrebel实现热部署 在平常开发项目中,我们通常是修改完…...
【Git系列】Git配置SSH免密登录
🐳Git配置SSH免密登录 🧊1.设置用户名和邮箱🧊2. 生成密钥🧊3.远程仓库配置密钥🧊2. 免密登录 在以上push操作过程中,我们第一次push时,是需要进行录入用户名和密码的,比较麻烦。而且…...
Node.js 安装与版本管理(nvm 的使用)
安装 Node.js Node.js 诞生于 2009 年 5 月,截至今天(2022 年 3 月 26 号)的最新版本为 16.14.2 LTS 和 17.8.0 Current,可以去官网下载合适的版本。 其中,LTS(Long Term Support) 是长期维护…...
SpringBoot项目中使用Lombok插件中Slf4j日志框架
前言:idea需要安装lombok插件,因为该插件中添加了Slf4j注解,可以将Slf4j翻译成 private static final org.slf4j.Logger logger LoggerFactory.getLogger(this.XXX.class); springboot本身就内置了slf4j日志框架,所以不需要单独…...
VS下开发Qt应用环境搭建
VS下开发Qt应用环境搭建 版本说明环境搭建步骤QT新增组件重新安装QTVS中的配置 版本说明 vs2019 QT5.14 我之前是按照QT基础组件的安装,但是这个安装只是最基础的组件,如果想要在VS中使用QT,还得安装其他组件,下面的安装流程、 …...
Python实现GA遗传算法优化循环神经网络分类模型(LSTM分类算法)项目实战
说明:这是一个机器学习实战项目(附带数据代码文档视频讲解),如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 遗传算法(Genetic Algorithm,GA)最早是由美国的 John holland于20世…...
SSM+JSP动漫网站源码+论文
代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹 分享万套开题报告任务书答辩PPT模板 作者完整代码目录供你选择: 《SpringBoot网站项目》1800套 《SSM网站项目》1500套 《小程序项目》1600套 《APP项目》1500套 《Python网站项目》…...
SEED数据集之外:脑电情感识别还有哪些开源数据集值得一试?
SEED数据集之外:脑电情感识别领域五大开源数据集深度评测 当我在实验室第一次尝试构建情感识别模型时,和大多数初学者一样,首先接触到的就是SEED数据集。但随着研究的深入,我逐渐发现这个领域远比想象中丰富——不同诱发范式、采集…...
2025最权威的降AI率网站实际效果
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 有的技术方案,其旨在减低文本人工智能生成特征,这就是降AIGC工具。它…...
PyTorch 2.8镜像真实效果:物理实验→电磁场/流体力学可视化视频
PyTorch 2.8镜像真实效果:物理实验→电磁场/流体力学可视化视频 1. 开箱即用的专业级物理模拟环境 当你第一次启动这个基于RTX 4090D优化的PyTorch 2.8镜像时,最直接的感受就是"专业工具就该这样"。这个镜像不是普通的深度学习环境ÿ…...
游戏服务器检测扣除消耗防算数溢出的安全判断及解决方法
游戏服务器检测扣除消耗防算数溢出的安全判断及解决方法 数量 > (类型最大值 / 价格) 负数存在风险 价格 > (类型最大值 / 数量) || 价格 < (最小值 / 数量) 游戏服务器在处理道具消耗时需防止数值溢出问题。当检测扣除消耗时,应进行双重安全判…...
GT New Horizons材质包精选:10款提升沉浸体验的视觉升级方案
GT New Horizons材质包精选:10款提升沉浸体验的视觉升级方案 【免费下载链接】GT-New-Horizons-Modpack A big progressive questing modpack for Minecraft 1.7.10 balanced around the mod GregTech. 项目地址: https://gitcode.com/GitHub_Trending/gt/GT-New-…...
从芯片设计到产线测试:深入浅出聊聊DFT中的SCAN链设计与JTAG标准(含IEEE 1149.1)
从芯片设计到产线测试:深入浅出聊聊DFT中的SCAN链设计与JTAG标准(含IEEE 1149.1) 在芯片设计领域,可测试性设计(DFT)早已从"锦上添花"变成了"不可或缺"的核心环节。想象一下࿰…...
自学嵌入式第三天
选择排序 先找再换,每轮先找最小的再做交换每一轮的第一个数作为最小,从第二个数开始比较选出最小值交换到第一个位置。插入排序 一列数从第二个开始作为要插入的数a,逐个向前比较,比a大的数向后移一位,直到遇见比a小…...
从芯片包到破解:Keil MDK5完整安装与配置实战(附最新支持包离线导入方法)
从芯片包到破解:Keil MDK5完整安装与配置实战(附最新支持包离线导入方法) 在嵌入式开发领域,Keil MDK5作为ARM架构微控制器的主流开发环境,其安装配置的完整性与稳定性直接影响后续开发效率。本文将系统性地拆解从软件…...
基于pyqt的规则匹配的恶意代码检测系统
当前的恶意代码检测研究中,尽管传统特征匹配(signature-based detection)仍然广泛应用,但面对快速更新且具有混淆、加壳、动态加载、自变异(polymorphism/metamorphism)等能力的新型恶意代码&am…...
