|
|
在论坛上刚刚发布了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;} |
|