BIRT 怎么调用 Webservice 作为数据源
2021-02-07 22:16
标签:version soa 辅助 活性 数据解析 web 如何 sof 访问 BIRT虽然提供了访问基于SOAP的Web Services,可以使用SOAP响应作为生成报表的数据。但总的来说,操作起来还是太麻烦了,灵活性也不够: 1、配置过程步骤多,过于繁琐。 2、引入的JAR很多,太重了。 3、API接口多,代码写起来很长,调试不方便。 4、只能接收简单结果,没有二次计算的能力。 比如要处理这么个场景:根据传入参数,调用外部WebService,返回该地区的天气情况。URL: http://www.webxml.com.cn/WebServices/WeatherWebService.asmx/getWeatherbyCityName?theCityName=... 调用服务后返回的XML数据格式如下: 期望结构化后的效果: 建议使用集算器,它将HTTP服务的url串的返回结果封装成文件流,实现同样的算法只需更少的代码,分步执行调试也方便,且精心设计了一套集合运算领域的函数库,以应对结构化后的各类运算,不再需要第三方数据库来协助。最后将计算结果返回给BIRT的DataSet进行直接报表展现,比如上面的问题,只需5行: A 1 =wsdl=concat("\"http://www.webxml.com.cn/WebServices/WeatherWebService.asmx/getWeatherbyCityName?theCityName=",urlencode("Xinyang","UTF-8"),"\":\"UTF-8\"") 2 =httpfile(${wsdl}) 3 =xml(file(A2).read(),"ArrayOfString/string") 4 =create(${A1.(concat("str",#)).concat@c()}) 5 >A4.record(A3) 其实还有很多类似的计算问题不太方便,但有集算器SPL的辅助却很简单,感兴趣可以参考:解决BIRT动态数据源的若干示例、XML数据解析与计算 集算器提供了 JDBC 驱动,可以很方便的与BIRT等报表工具集成,BIRT调用SPL脚本有使用和获得它的方法。 关于集算器安装使用、获得免费授权和相关技术资料,可以参见如何使用集算器。 BIRT 怎么调用 Webservice 作为数据源 标签:version soa 辅助 活性 数据解析 web 如何 sof 访问 原文地址:https://www.cnblogs.com/xmilu/p/13088218.html
上一篇:我脑中飘来飘去的css魔幻属性
下一篇:PHP中一些常用操作类代码示例
文章标题:BIRT 怎么调用 Webservice 作为数据源
文章链接:http://soscw.com/index.php/essay/52352.html