接下来,我们演示如何访问公网webservice服务。

  我们以访问 http://www.webxml.com.cn/zh_cn/index.aspx 为例,主要演示手机号码归属地查询服务(使用说明书路径为 http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?WSDL)。接着,生成相应的webservice客户端,以及jar包。

  gen-c-s.bat(生成webservice服务的客户端):

wsimport -s E:\webService\1\source -d E:\webService\1\classes http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?WSDL

  gen-jar.bat(生成项目依赖的jar包):

e:
cd E:\webService\1\classes
jar cvf phoneCode.jar cn

  然后,创建一个web案例,添加生成的 phoneCode.jar包为项目依赖。

<%--前端页面--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>号码归属地查询</title>
<script language="JavaScript" src="jquery.min.1.11.3.js"></script>
<script language="JavaScript">
var num = 1;
function doQuery() {
var phoneCode = $('#phoneCode').val();
console.log(phoneCode);
if (phoneCode.length == 11) {
if (num == 1) {
num = 0;
console.log('发起请求归属地查询:' + phoneCode);
$.ajax({
url: '/QueryServlet',
type: 'POST', //GET
async: true, //或false,是否异步
data: {
phoneCode: phoneCode
},
timeout: 10000, //超时时间
dataType: 'json',
success: function (data, textStatus, jqXHR) {
num = 1;
console.log("success--->" + phoneCode + ":" + data.resultPhone);
$('#pResult').css({"color": "blue", "font-size": "16px", "font-weight": "bold"});
$('#pResult').text(phoneCode + ":" + data.resultPhone);
},
error: function (xhr, textStatus) {
num = 1;
console.log("error--->");
}
});
}
}
}
</script>
</head>
<body>
<form>
<input id="phoneCode" type="text" name="phoneCode" placeholder="请填写要充值电话号码" onkeyup="doQuery()">
<p id="pResult"></p>
</form>
</body>
</html>
-----------------------------------------------
//后端控制器
package com.itszt; import cn.com.webxml.MobileCodeWS;
import cn.com.webxml.MobileCodeWSSoap; import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException; /**
* 处理前端发来的请求,并给前端响应数据
*/
@WebServlet(name = "QueryServlet", urlPatterns = "/QueryServlet")
public class QueryServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//接收前端发来的参数
String phoneCode = request.getParameter("phoneCode");
//创建服务视图
MobileCodeWS mobileCodeWS = new MobileCodeWS();
//根据服务视图得到服务端点
MobileCodeWSSoap mobileCodeWSSoap = mobileCodeWS.getMobileCodeWSSoap();
//调用服务端点的方法
String mobileCodeInfo = mobileCodeWSSoap.getMobileCodeInfo(phoneCode, "");
System.out.println("mobileCodeInfo = " + mobileCodeInfo);
if (mobileCodeInfo != null) {
if (mobileCodeInfo.contains(":")) {
String[] split = mobileCodeInfo.split(":");
response.setCharacterEncoding("UTF-8");
response.getWriter().write("{\"resultPhone\":\"" + split[1] + "\"}");
} else {
System.out.println("解析失败");
}
} else {
System.out.println("解析失败");
}
} protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
}

  项目运行后,前端反馈如下:

访问公网WebService服务的更多相关文章

  1. Nginx代理实现内网主机访问公网服务

    通过Nginx代理实现内网主机访问公网和接口服务 1.需求: m2.test.com为公司测试环境的微信测试域名,因为要调用微信服务接口需要访问外网,现通过Nginx代理现实此功能. 2.环境如下: ...

  2. WebService学习总结(四)——调用第三方提供的webService服务

    http://www.cnblogs.com/xdp-gacl/p/4260627.html 互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他 ...

  3. WebService-调用第三方提供的webService服务

    互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他网站的内容信息集成到我们的Web应用中显示,下面就以获取天气预报数据和查询国内手机号码归属地为 ...

  4. WebService服务(转)

    一.序言 大家或多或少都听过WebService(Web服务),有一段时间很多计算机期刊.书籍和网站都大肆的提及和宣传WebService技术,其中不乏很多吹嘘和做广告的成分.但是不得不承认的是Web ...

  5. WebService学习--(四)调用第三方提供的webService服务

    互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他网站的内容信息集成到我们的Web应用中显示,下面就以获取天气预报数据和查询国内手机号码归属地为 ...

  6. 基于CXF框架下的SOAP Webservice服务端接口开发

    最近对webservice 进行入门学习,网上也是找了很多的学习资料.总得感觉就是这了解点,那了解点.感觉不够系统,不够容易入门.差不多断断续续看了一个星期了,今天小有成果,把客户端,服务端都搞定了. ...

  7. 学习调用第三方的WebService服务

    互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他网站的内容信息集成到我们的应用中显示,下面就以查询国内手机号码归属地为例进行说明. 首先安利一 ...

  8. [置顶] WebService学习总结(4)——第三方webService服务调用

    互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他网站的内容信息集成到我们的Web应用中显示,下面就以获取天气预报数据和查询国内手机号码归属地为 ...

  9. WebService学习总结(三)--调用第三方提供的webService服务

    互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他网站的内容信息集成到我们的Web应用中显示,下面就以获取电子邮箱验证和查询火车时刻表和天气预报 ...

随机推荐

  1. 复习JavaScript随手记

    数据类型 基本类型 string number boolean undefined number类型,包含整数浮点数 NaN和自己都不相等,涉及NaN的计算结果都是NaN isNaN()函数用于判断一 ...

  2. HTTP协议格式【转】

    原文链接:https://www.jianshu.com/p/8fe93a14754c 一.URI结构 HTTP使用统一资源标识符(URI)来传输数据和建立连接.URL(统一资源定位符)是一种特殊种类 ...

  3. bzoj 1510 [POI2006]Kra-The Disks 二分

    1510: [POI2006]Kra-The Disks Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 466  Solved: 272[Submit][ ...

  4. Linux常用网络工具:hping高级主机扫描

    之前介绍了主机扫描工具fping,可以参考我写的<Linux常用网络工具:fping主机扫描>. hping是一款更高级的主机扫描工具,它支持TCP/IP数据包构造.分析,在某些防火墙配置 ...

  5. BFC 块级元素格式化上下文

    Block Formatting Contexts: 块级元素格式化上下文块级元素如何对它的内容(子元素:也是一个块元素)进行布局,以及与其它元素(与内容同级别)的关系和相互作用 普通文档流的布局规则 ...

  6. JAX-WS搭建WebService和客户端访问程序

    开发环境:myeclipse8.6+jdk1.6.0_29+tomcat6.0.37 XFire搭建webservice: http://www.cnblogs.com/gavinYang/p/352 ...

  7. OpenCV---轮廓发现

    推文:OpenCV-Python教程(11.轮廓检测) 轮廓发现 是基于图像边缘提取的基础,寻找对象轮廓的方法,所以边缘提取的阈值选定会影响最终轮廓的发现 相关API findContours 发现轮 ...

  8. Ajax-更新

    ajax是与服务器进行(异步/同步)交互的技术之一交互就是对服务器一种访问ajax对服务器进行交互时页面不刷新ajax的语言载体是JS 比如我在百度输入个东西 自动弹出信息像和一些搜索字体相关的页面标 ...

  9. PL/SQL Developer 中的问题:Initialization error Could not load ".../oci.dll"解决方法

    ---------------------------------------------------------------------------------------------------- ...

  10. UVA 1575 Factors

    https://vjudge.net/problem/UVA-1575 题意: 令f(k)=n 表示 有n种方式,可以把正整数k表示成几个数的乘积的形式. 例 10=2*5=5*2,所以f(10)=2 ...