六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 44|回复: 0

.net调用java webservice

[复制链接]

升级  58.67%

32

主题

32

主题

32

主题

秀才

Rank: 2

积分
138
 楼主| 发表于 2013-1-27 12:52:13 | 显示全部楼层 |阅读模式
在论坛上刚刚发布了java调用java中的webservice 
现在讲讲.net平台调用java中的webservice  
webservice和调用平台已经打包上次到附件中
.net平台下显得更简单 直接在项目中添加应用方式


工具用的是vs2010


这是调用代码  两种形式 web引用和服务引用


web引用





服务引用效果 在点击服务引用 高级按钮的添加web引用





添加完毕之后




这是调用代码  两种形式 web引用和服务引用
using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace WindowsFormsApplication1{    public partial class Form1 : Form    {        public Form1()        {            InitializeComponent();        }        private void Form1_Load(object sender, EventArgs e)        {        }        private void button1_Click(object sender, EventArgs e)        {            WebReference.DemoService webservice = new WebReference.DemoService();            label1.Text = webservice.isflag(2);            ServiceReference1.DemoClient d = new ServiceReference1.DemoClient();            label2.Text = d.isflag(123);                    }    }}  




运行效果





如果是java调用 .net webservice
/** * 调用.net 的 * @param rydm * @param iyear * @param imonth * @param opcoder * @return * @throws ServiceException * @throws MalformedURLException * @throws RemoteException */  public static String webServiceJxGz(String rydm,String iyear,String imonth,String opcoder) throws ServiceException, MalformedURLException, RemoteException{String endpoint = "http://127.0.0.1:801/webjxxt/Service.asmx";//请求地址Service service = new Service();Call call = (Call) service.createCall();call.setTargetEndpointAddress(new java.net.URL(endpoint));call.setSOAPActionURI("http://tempuri.org/");call.setUseSOAPAction(true);String namespace="http://tempuri.org/";call.setOperationName(new QName(namespace, "WebJxGz"));//参数名称 及参数类型 call.addParameter(new QName(namespace,"srydm"),XMLType.XSD_STRING,ParameterMode.IN);  call.addParameter(new QName(namespace,"iyear"),XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);call.addParameter(new QName(namespace,"imonth"),XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);call.addParameter(new QName(namespace,"opcoder"),XMLType.XSD_STRING,javax.xml.rpc.ParameterMode.IN);call.setReturnType(XMLType.XSD_STRING);//参数值String s=(String)call.invoke(new Object[] { rydm,iyear,imonth,opcoder});return s;} 
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表