
webservice接口接收返回的xml数据的话
他调用你的接口的时候是不是传过来一个参数,这个参数应该是xml格式的吧,哪你把这个参数写进一个xml文件,再把这个文件保存进一个临时目录就行了
你问对人了,我做了一个从这个webservice获取天气预报的程序。下面只贴部分使用webservice的方法,我获取的是山东省下各个地市的天气情况;
//代码如下:
public void readFromURL(){
String ws_url = ">
webservice返回的xml解析方法:
一般来说,调用webService通常需要几个步骤,在调用之前,首先需要下载Soap的jar包。
1、参数设置:上面说到的几个参数都要先设置,这主要依赖于要调用的web'Service的网址:
// 命名空间
String nameSpace = ">
// 调用的方法名称
String methodName = "getDetailInfoByTrainCode";
// EndPoint
String endPoint = ">
// SOAP Action
String soapAction = ">
2、指定命名空间与调用方法名
// 指定WebService的命名空间和调用的方法名
SoapObject rpc = new SoapObject(nameSpace, methodName);
3、设置参数:
// 设置需调用WebService接口需要传入的两个参数TrainCode、userId
rpcaddProperty("TrainCode", params[0]);
rpcaddProperty("UserID","");
4、生成调用WebService方法的SOAP请求信息
// 生成调用WebService方法的SOAP请求信息,并指定SOAP的版本
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelopeVER12);
envelopebodyOut = rpc;
5、调用WebService方法
try {
// 调用WebService
transportcall(soapAction, envelope);
} catch (Exception e) {
eprintStackTrace();
}
6、解析WebService中的DataSet数据
SoapObject soap1=(SoapObject)objectgetProperty("getDetailInfoByTrainCodeResult");
SoapObject childs=(SoapObject)soap1getProperty(1);
SoapObject soap2=(SoapObject)childsgetProperty(0);
///
for(int i=0;i<soap2getPropertyCount();i++){
SoapObject soap3=(SoapObject)soap2getProperty(i);
///
Info info=new Info();
infosetStation(soap3getProperty(0)toString());
infosetArriveTime(soap3getProperty(1)toString());
infosetStartTime(soap3getProperty(2)toString());
infosetKm(soap3getProperty(3)toString());
Raininfoadd(info);
//result=soap3getProperty(3)toString();
}
数据格式如下:
①webxml文件是用来配置:欢迎页、servlet、filter等配置文件用的。当你的web工程没用到这些时,你可以不用webxml文件来配置你的web工程
webxml的模式文件中定义的标签并不是定死的,模式文件也是可以改变的,一般来说,随着webmxl模式文件的版本升级,里面定义的功能会越来越复杂,
也即标签元素的种类会越来越多,但有些是不常用的,我们只需记住一些常用的就可以了。
首先是定义头和根元素
声明为xml文件,版本为10,编码为utf-8
声明该文件的内容可以使用xsi的标签库
声明标签的使用范围是被javaee的开发使用的
声明可以使用的标签库和对应的具体的标签库版本地址。
webxml的模式(Schema)文件中定义了多少种标签元素,它就能拥有定义出来的那些功能
随着webmxl模式文件的版本升级,里面定义的功能会越来越复杂,也即标签元素的种类会越来越多
定义项目的名称
项目名称
欢迎页面
servlet
配置springmvc DispatcherServlet( 前台控制器)-->example这个Servlet的名字是example,可以有多个DispatcherServlet,是通过名字来区分的。
async-supported
启动一个新的线程去处理你的请求,完成之后调用你指定的回调函数来完成整个异步 *** 作。
一般的jsp是通过地址栏输入一个地址,或者提交表单的方式发送请求的,这样网页都会被刷新。但是如果你在jsp页面发送一个ajax请求的话,跟前两种不同,
后台会返回给jsp页面内容,页面不会直接刷新,这样可以把返回的数据写在页面的div中,这样就完成了页面的局部刷新。
举个例子,baidu你做一个查询功能,页面上有查询条件和查询结果显示区域,你可以点查询按钮的时候通过ajax异步发送你的查询条件,
而你得到后台返回的查询结果后,更新你的jsp页面的查询结果,jsp的其他部分,比如查询条件,都没有更新,jsp没有刷新,而是更新了查询结果这一块内容
url-pattern 默认匹配所有请求Servlet拦截匹配规则可以自已定义1、拦截do、htm, 例如:/user/adddo,这是最传统的方式,最简单也最实用。不会导致静态文件(jpg,js,css)被拦截。2、拦截/,例如:/user/add,可以实现现在很流行的REST风格。很多互联网类型的应用很喜欢这种风格的URL。弊端:会导致静态文件(jpg,js,css)被拦截后不能正常显示。
监听器
Listener获取的是Web应用ServletContext(application)的配置参数。-为Web应用配置Listener的两种方式: 使用@WebListener修饰Listener实现类即可 在webxml文档中使用进行配置。我们选择webxml这种配置方式,只有一个元素指定Listener的实现类
②启动WEB项目的时候,Tomcat容器首先会去它的配置文件读取两个节点listener和context-param。
然后Tomcat会创建一个ServletContext(application),WEB项目所有部分都将共享这个上下文
将applicationContextxml存入ServletContext中
Tomcat容器根据class类路径来创建监听
上面这些都是在web项目还没有完全启动起来就完成的工作,而servlet是在第一次发起请求时被实例化的
而且一般不会被容器销毁,并服务于多个用户的请求
webxml的加载顺序是: context-param-> listener -> filter -> servlet
filter
Filter可认为是Servlet的“增强版”,因此Filter配置与Servlet的配置非常相似,需要配置两部分:配置Filter名称和Filter拦截器URL模式。区别在于Servlet通常只配置一个URL,而Filter可以同时配置多个请求的URL。配置Filter有两种方式:
在Filter类中通过Annotation进行配置。
在webxml文件中通过配置文件进行配置。
①百度
②>
<xml version="10" encoding="UTF-8" >
- <web-app version="24" xmlns=">
以上就是关于webservice接口怎么接收返回的xml数据全部的内容,包括:webservice接口怎么接收返回的xml数据、如何基于这个请求http://www.webxml.com.cn/WebServices/WeatherWebService.asmx所提供的接口来获取东西、webservice返回的xml怎么解析等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)