java调用webservice
来源:互联网 发布:多种乐器软件 编辑:程序博客网 时间:2024/04/30 18:11
我要用JAVA调用一个WEBservice
WEBservice的地址为:http://www.xxxxx.com.cn/webservice/online.asmx
方法名:checkMember
此方法将返回void
怎么样来实现呢?
是那种方法的axis还是xfire的,两种调用方法不同。
axis的
package test;
import java.net.MalformedURLException;
import java.rmi.RemoteException;
import javax.xml.namespace.QName;
import javax.xml.rpc.ServiceException;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class CallService {
public static void main(String[] args) {
try {
Log log = LogFactory.getLog(CallService.class);
String endpoint ="http://localhost:8090/testAxisl/services/UserService";
Service service =new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress( new java.net.URL(endpoint) );
// call.setOperationName(new QName("UserService", "save"));//设置操作的名称。
//由于需要认证,故需要设置调用的用户名和密码。
call.getMessageContext().setUsername("sophia");
call.getMessageContext().setPassword("sophia");
//调用的方法
call.setOperationName("getUserByName" );
// //方法中的参数
// call.invoke(new Object[] {"1011","aaaa","aaaa","test"});
call.invoke(new Object[] {"aaaa"});
// call.setOperationName("createUserByUserInfo" );
} catch (ServiceException e) {
e.printStackTrace();
System.out.println("Service 获取 Call对象失败!");
} catch (MalformedURLException e) {
e.printStackTrace();
System.out.println("new java.net.URL(url)错误!");
} catch (RemoteException e) {
e.printStackTrace();
System.out.println("远程错误!");
}
}
}
xfire的
package test;
import java.lang.reflect.Proxy;
import java.net.MalformedURLException;
import org.codehaus.xfire.client.Client;
import org.codehaus.xfire.client.XFireProxy;
import org.codehaus.xfire.client.XFireProxyFactory;
import org.codehaus.xfire.service.Service;
import org.codehaus.xfire.service.binding.ObjectServiceFactory;
import webservice.ClientAuthHandler;
import webservice.HelloWorld;
public class HelloWorldClient {
public static void main(String[] args) {
try{
Service serviceModel = new ObjectServiceFactory().create(HelloWorld.class);
HelloWorld service = (HelloWorld) new XFireProxyFactory().create(serviceModel,
"http://localhost:8090/testWebService/HelloWorldService.ws?");
XFireProxy proxy = (XFireProxy)Proxy.getInvocationHandler(service);
Client client = proxy.getClient();
//不加用户密码验证会报错,并且终止远程调用
client.addOutHandler(new ClientAuthHandler("system", "manager"));
System.out.println(service.getMes("aaa"));
System.out.println(service.sayHelloWorld("402881861961127c011961c9be590036"));
// System.out.println(service.sayHelloWorld("1001"));
// System.out.println(service.getDemoString("abc"));
}catch(MalformedURLException e){
System.out.println("错误!");
e.printStackTrace();
}
}
}
- 【webservice】Java调用WebService
- Java中调用WebService
- java调用webService例子
- java调用webservice XFire!
- java 如何调用webservice
- java调用webservice
- java调用webservice XFire
- java调用webservice
- java调用webservice
- java调用.net Webservice
- java调用webservice axis
- java调用webService相关
- java调用webservice XFire
- Java调用.net webservice
- java webservice 调用
- C#调用java webservice
- java 调用.net webService
- java调用webservice 天气预报
- XP下如何给装有 ubuntu的虚拟机 磁盘扩容
- JS跨域名问题
- Carbide 联机调试惨痛经历
- ASP.NET画图系列之实现Bar图(柱状图)
- 失业日记
- java调用webservice
- comparable 奖牌榜 金银铜牌
- c语言中static 变量
- ASP.NET画图系列之另类Pie图(圆饼图)
- 硬盘分区计算方法 让你分出整数分区
- switch case,若无break
- mysql常用大全2-备份与恢复
- 公司合并 CIO如何参与合并规划流程
- 网站记录2008-11-08