|
|
本帖最后由 gaotao 于 2019-12-25 16:12 编辑
环境:Linux
0需要工程文件:
如图有三个工程
1.发布接口需要修改的配置SDC工程:
#linux 系统下远程发布的服务器工作路径
axis.linux.path=/usr/local/tomcat_lysdc/webapps/SDCWSServer/WEB-INF/services/
#远程服务器的url地址
axis.service.url=http://192.168.3.15:8080/SDCWSServer/services/
SDCWSServer工程class下的config.properties:
- # DB oracle Connection
- oracle.drive=oracle.jdbc.driver.OracleDriver
- oracle.url=jdbc:oracle:thin:@192.168.30.45:1521:ORCL
- oracle.user=SDCG
- oracle.password=SDCG
- #远程服务器地址
- service.address=http://192.168.3.13:8080/SDCWSServer/services/
复制代码 SDCWSClient工程class下的config.properties:
- # Resources for parameter 'com.yourcompany.struts.ApplicationResources'
- # Project sdcClient
- #WebService 远程地址
- sdc.service.url=http://202.192.128.200:8080/SDCWSServer/services/
复制代码
替换文件:
如果发布失败,需要替换如下文件再次尝试:
(1)...tomcat/webapps/SDC2.0/release下所有文件
(1)...tomcat/webapps/SDC2.0/init99.sh文件
2.发布测试:
3.分页默认是20一页,分页控制<currPage>2</currPage>来获取对应数据,传入0,就是取全部数据,不分页
- public class TestJk {
- public static String getSearchData() {
-
- //服务发布的地址
- String url = "http://192.168.3.13:8080/SDCWSServer/services/Lycs?wsdl";
- //接口编号,用于对进口进行权限过滤
- String jkbh="BH20190903150150139";
- //用户名
- String userName="lyadmin";
- //密码
- String passWord="111111";
-
- //TODO 参数说明:<parame name="XH" seq="0" >"+xh+"</parame> 是查询条件,name="字段对应的数据库字段名称"
- //<parames><parame name="XH" seq="0" >"+xh+"</parame></parames>
- String xml="<?xml version="1.0" encoding="UTF-8" ?><directions><interface>"+jkbh+"</interface><userName>"+userName+"</userName><password>"+passWord+"</password><currPage>2</currPage></directions>";
- String result = "";
- RPCServiceClient client = null;
- try {
-
- System.out.println("服务调用的地址:------------->>>"+url);
- // 指定接口的名称空间和接口的方法名称insertAsyn是异步提交
- final QName qName = new QName("http://release.ly.com","searchData");
- client = new RPCServiceClient();
- Options options = new Options();
- options.setTo(new EndpointReference(url));
- options.setTimeOutInMilliSeconds(6000000L);
- options.setAction("searchData");
- client.setOptions(options);
- options.setManageSession(true);
- options.setProperty(HTTPConstants.REUSE_HTTP_CLIENT,true);
-
- long begin = System.currentTimeMillis();
-
- Object[] rtnObjs = client.invokeBlocking(qName, new Object[] { xml,
- "", "" }, new Class[] { String.class });
- result = rtnObjs[0].toString();
-
- long end = System.currentTimeMillis();
- System.out.println("接口调用耗时:" + (end - begin) + " 毫秒");
- System.out.println("调用结果----->>" + result.toString());
-
-
-
- client.cleanupTransport();
-
- } catch (AxisFault e) {
-
- e.printStackTrace();
- System.err.println("远程服务异常或没启动:"+e.getMessage());
- StringBuffer bf = new StringBuffer();
- bf.append("<?xml version="1.0" encoding="UTF-8" ?>");
- bf.append("<directions>");
- bf.append("<result>0</result>");
- bf.append("</directions>");
- result=bf.toString();
- }finally
- {
- // 必须释放资源否则出错 ,解决当调用失败是,Timeout waiting for connection 的错
- try {
- client.cleanupTransport();
- } catch (AxisFault e) {
- e.printStackTrace();
- }
- }
-
- return result.toString();
- }
-
- public static void main(String[] args) {
- System.out.println(getSearchData());
- }
- }
复制代码
4.返回数据格式化查看http://www.bejson.com/otherformat/xml/
5.第三调用接口文档
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|