Web Service

首发于开源中国

1. 背景

  • 中国移动短信网关需求,要能够发送短信。开发材料只有一个短信发送配置:包括ID,password,code,url。一个jar包还有一个老旧的html帮助文档。
  • 最初将单个jar包加入工程,按照文档中new 一个对象,直接填入参数发送的来,以为就可以了。但是线上调试有null异常。之后一直在用该jar包调试,以为缺少依赖,于是在pom文件中加入了各种依赖,没跑一次就说缺class,终于不报缺calss错误了,还是有null异常。为此调试了好几次,还写了测试程序都不行。
  • 于是网上找材料,发邮件问部署短信服务的人,给的结论是:jar包老旧仅供参考,要使用web service自行开发。还给了一个比较新的html帮助文档。但是文档在win10下都打不开,还得再win7上才能看。于是就开始了web service的探索。
  • 还好网上搜到了一个网址,可以帮助理解,不然每次都得远程上线调试真是要命。

2. 基础知识

 wsimport -keep -d ./ -s ./src -p com.james1 -verbose url或保存本地的wsdl文件
于是生成本地文件,就是java的开发包了。
└─james
AddTask1.java
AddTask1Response.java
AddTask2.java
AddTask2Response.java
ArrayOfstring.java
DayOfWeek.java
GetMessage.java
GetMessageResponse.java
GetWaitSmsMessageCount.java
GetWaitSmsMessageCountResponse.java
ISms.java
ObjectFactory.java
package-info.java
PeriodTime.java
PeriodType.java
PeriodValue.java
RemoveMessage.java
RemoveMessageResponse.java
RemoveTask.java
RemoveTaskResponse.java
SendMessage3.java
SendMessage3Response.java
SendMessage4.java
SendMessage4Response.java
SendWapPush1.java
SendWapPush1Response.java
SendWapPush2.java
SendWapPush2Response.java
SmsImplementation.java
SmsMessage.java
  • 这样在java工程中调用SmsImplementation.java即可:
String result = smsImplementation.getBasicHttpBindingISms().sendMessage3(address,message,extendCode,applicationID,password);

3. 打jar包

jar tvf target/myproject-0.0.1-SNAPSHOT.jar
  • 创建jar包
jar cvf 打成的jar包的名字 (一个或者多个)class文件或者文件夹

Web Service--第一次接触web service的更多相关文章

  1. Rest风格WEB服务(Rest Style Web Service)的真相

    http://blog.csdn.net/jia20003/article/details/8365585 Rest风格WEB服务(Rest Style Web Service)的真相 分类: J2E ...

  2. windows service承载的web api宿主搭建(Microsoft.Owin+service)

    今天突然想起改良一下以前搭建的“windows service承载的web api”服务,以前也是直接引用的类库,没有使用nuget包,时隔几年应该很旧版本了吧.所以本次把需要nuget获取的包记录一 ...

  3. Java Web中的mapper,service,controller,model

    Java Web中的mapper,service,controller,model作用分别是:java web中mapper是对象持久化映射层,一般会继承ibatis或者mybatisservive是 ...

  4. 基于Web的Kafka管理器工具之Kafka-manager安装之后第一次进入web UI的初步配置(图文详解)

    前期博客 基于Web的Kafka管理器工具之Kafka-manager的编译部署详细安装 (支持kafka0.8.0.9和0.10以后版本)(图文详解) 基于Web的Kafka管理器工具之Kafka- ...

  5. 天人合一物我相融,站点升级渐进式Web应用PWA(Progressive Web Apps)实践

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_216 PWA(Progressive web apps,渐进式 Web 应用)使用现代的 Web API 以及传统的渐进式增强策略 ...

  6. Java Web学习系列——Maven Web项目中集成使用Spring、MyBatis实现对MySQL的数据访问

    本篇内容还是建立在上一篇Java Web学习系列——Maven Web项目中集成使用Spring基础之上,对之前的Maven Web项目进行升级改造,实现对MySQL的数据访问. 添加依赖Jar包 这 ...

  7. javaweb学习总结十七(web应用组织结构、web.xml作用以及配置虚拟主机搭建网站)

    一:web应用组织结构 1:web应用组成结构 2:安装web组成机构手动创建一个web应用程序目录 a:在webapps下创建目录web b:在web目录下创建html.jsp.css.js.WEB ...

  8. Service Fabric —— Actor / Stateless Service 概念

    作者:潘罡 (Van Pan) @ Microsoft 上一节我们谈到了Stateful Service.在Service Fabric中,Stateful Service是理解Micro Servi ...

  9. Java开发工程师(Web方向) - 01.Java Web开发入门 - 第3章.Tomcat

    第3章--Tomcat Tomcat安装与运行 Tomcat:目前最常用的基于java的web应用服务器 本课程中所有的Java代码最终都需要部署到Tomcat中运行 Tomcat的配置文件是XML的 ...

  10. IDEA02 利用Maven创建Web项目、为Web应用添加Spring框架支持、bean的创建于获取、利用注解配置Bean、自动装配Bean、MVC配置

    1 环境版本说明 Jdk : 1.8 Maven : 3.5 IDEA : 专业版 2017.2 2 环境准备 2.1 Maven安装及其配置 2.2 Tomcat安装及其配置 3 详细步骤 3.1 ...

随机推荐

  1. 弹性盒模型 flex box

    弹性盒子模型 布局方案 传统的布局方案大多采用div+css+float+position+display来实现,但是随着css3中弹性盒子模型的推出,在前端布局方案中就又多出了一项彪悍的选项. 而因 ...

  2. Django中的枚举类型

    一.枚举类型示例 枚举类型可以看作是一种标签或是一系列常量的集合,通常用于表示某些特定的有限集合,例如星期.月份.状态等.Python 的原生类型(Built-in types)里并没有专门的枚举类型 ...

  3. C#基础知识-面向对象思想之继承(八)

    上一篇的标题编程思想我觉得不是很符合主题,因为编程思想的范围太大了,不仅仅是封装 继承 多态,所以比较符合主题的应该是面向对象思想.这一篇中将继续叙述面向对象思想中的继承. 从字面来看继承表达的意思已 ...

  4. 反射+自定义注解---实现Excel数据列属性和JavaBean属性的自动映射

    简单粗暴,直奔主题.   需求:通过自定义注解和反射技术,将Excel文件中的数据自动映射到pojo类中,最终返回一个List<pojo>集合? 今天我只是通过一位使用者的身份来给各位分享 ...

  5. ELK-Kibana-01

      1.Kibana介绍   Kibana 是一个设计使用和Elasticsearch配置工作的开源分析和可视化平台.可以用它进行搜索.查看.集成Elasticsearch中的数据索引.可以利用各种图 ...

  6. js中的匿名函数自执行

    随笔,java中因为有修饰符的存在,那就有private类的存在,js不一样,没有修饰词一说,因此为了防止全局变量的污染,js中就出现了匿名函数,直接上code,看到的人可以自己体会: (functi ...

  7. 如何在非 React 项目中使用 Redux

    本文作者:胡子大哈 原文链接:https://scriptoj.com/topic/178/如何在非-react-项目中使用-redux 转载请注明出处,保留原文链接和作者信息. 目录 1.前言 2. ...

  8. cURL的运用,文字替换

    <?php /** * 实例描述:在网络上下载一个网页并把内容中的“百度”替换为“谷歌”之后输出 */ $curl_obj = curl_init(); // 初始化 curl_setopt($ ...

  9. iOS 实现简单的毛玻璃效果

    最近在整理导航栏的渐隐渐现效果,整理过程中偶然学会了图片的毛玻璃效果实现,很简单,不多说了,先上图看看效果对比, 这是原图, 这是加了效果后的,创建图片的代码就不上了,下面看下添加效果的代码: // ...

  10. [leetcode-565-Array Nesting]

    A zero-indexed array A consisting of N different integers is given. The array contains all integers ...