java调用https的webservice,https的wsdl 收藏
java调webService太正常了。。。
在调用https的webService的时候几种常用的方法会出现安全错误,很多人说的是在jre里面装证书。。。那也太郁闷了吧
这里提供一种不用证书的方式
对方webService提供的接口,这个你应该要知道的吧,不知道的话就wsdl自己还原
Java代码 复制代码
/**
* webService接口声明
* 包括两个方法:
* 1.获取微博authtoken
* 2.获取微博信息
* @author bo
* @version $Id: WeiboInterface.java,v 0.1 2009-9-1 上午09:59:05 bo Exp $
*/
public interface WeiboInterface{
// 获取微博authtoken
public String getWeiboAuthToken();
// 获取微博信息
public String getWeiboInfo();
}
Java代码 复制代码
/** webService地址 */
private static final String SERVICE_URL = "https://localhost/wsdl/services1/";
/** webService的名称空间 */
private static final String SERVICE_NAMESPACE = https://localhost/wsdls;
/** 服务名称 */
private static final String SERVICE_NAME = "weiboGetInfo";
/** http协议类型 */
private static final String HTTP_TYPE = "https";
/** 端口号 */
private static final int PORT = 443;
/**
* 初始化webService调用,设置访问webService的相关属性
*/
private void initService() {
ProtocolSocketFactory easy = new EasySSLProtocolSocketFactory();
Protocol protocol = new Protocol(HTTP_TYPE, easy, PORT);
Protocol.registerProtocol(HTTP_TYPE, protocol);
Service serviceModel = new ObjectServiceFactory().create(WeiboInterface.class,
"weiboService", SERVICE_NAMESPACE, null);
try {
service = (WeiboInterface) new XFireProxyFactory().create(serviceModel, SERVICE_URL
+ SERVICE_NAME);
} catch (MalformedURLException e) {
logger.error("初始化webService失败," + e);
}
//设置client的相关属性,设置传输数据的方式
Client client = ((XFireProxy) Proxy.getInvocationHandler(service)).getClient();
client.addOutHandler(new DOMOutHandler());
client.setProperty(CommonsHttpMessageSender.GZIP_ENABLED, Boolean.TRUE);
client.setProperty(CommonsHttpMessageSender.DISABLE_EXPECT_CONTINUE, "1");
client.setProperty(CommonsHttpMessageSender.HTTP_TIMEOUT, "0");
}
service就相当于将webService给初始化了,然后就可以直接service调用XXXInterface里面的方法了
分享到:
相关推荐
java 调用https发布的webservice接口实例及axis包及详细说明
java调用json参数的webservice 涉及技术: JAVA JSON WEBSERVICE
java调用webservice wsdl源码
根据C++开发的webservice接口提供的WSDL文件,调用接口
java调用webservice的各种方法总结java调用webservice的各种方法总结
WebService描述语言WSDL详解
JAVA WEBSERVICE 建的实例工程,给PB调用, 因VS建的 WEBSERVICE PB很难调用,所以用JAVA的axis做了个小实例 共大家参考
Java Axis 直接调用webservice 接口工具类, 无需根据wsdl编译客户端,需要axis相关包,测试使用axis 1.4, 附demo引入axis包后直接可以测试;
WebService调用,C#WebService动态调用,JavaWebService通过WSDL生成调用
Java调用php的webservice: header("Content-Type:text/html;charset=UTF-8"); // require('lib/nusoap.php'); require_once("lib/nusoap.php"); $server = new soap_server(); $server->configureWSDL('...
springboot调用webservice接口的两种方式,不使用axis
NULL 博文链接:https://13851619632.iteye.com/blog/2359075
最近项目中遇到需要去掉老系统的webservice服务中的insert方法,找了很久,发现这样最简单,实测有效!!!
当然可以调用任何 wsdl地址。只要是webservice 这里是比较流行的。 这里有2个测试地址。 (1):http://www.webservicex.com/stockquote.asmx<br>(2):...
通过此方法可以把webservice接口通过接口生成的wsdl文件生成本地调用代码,详细配置可以查看wsdl2_java登入.bat文件,此包原来放在H盘根目录,双击wsdl2_java登入.bat文件即可以生成Create文件夹中的JAVA代码
利用注解修改webservice生成wsdl的服务名称,命名空间,返回值,调用方法。加强安全性。代码完整,包括服务端和客户端两个项目
利用axis jar包 根据wsdl文件生成java webservice 工具 (附带生成后调用方法和详细说明) 及其适合工作着与初学者调试和学习,已经通过测试完全可用
如何用.net调用java或net写的webservice(遵循wsdl规则
Java调用.net写的webservice Java使用axis来调用.net写的asmx WebService,大体步骤如下。 Axis需要用到的包如下: 1. axis.jar 2. commons-discovery-0.2.jar 3. commons-logging-1.0.4.jar 4. jaxrpc.jar 5. wsdl4...
本地调用外部WebService接口 需要本人另外一个资源:WSDL2Java.zip(根据wsdl生成Java客户端)