1、peopleSoft系统webservice发布成功后,会提供一个wsdl URL地址,如:

http://IP:port/PSIGW/PeopleSoftServiceListeningConnector/PSFT_HR/xxxxx.1.wsdl
2、利用SOAPUI工具,可查看出SOAP请求XML,
3、java客户端可以模拟SOAP请求,注意以下几点:
3.1 请求URL地址并非是wsdl地址,而是“http://IP:port/PSIGW/PeopleSoftServiceListeningConnector/XXX”
3.2 请求时需要设置请求的header,SOAPAction=XXXXX,
3.3 遵循SOAPUI中的RAW窗口展示的请求方式,如下图
4、代码实现如下:
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.methods.InputStreamRequestEntity;
import org.apache.commons.httpclient.methods.PostMethod;
import org.w3c.dom.Document;public class WebServiceClient {public static void main(String[] args) throws Exception {test2();}public static void test2() throws Exception {String soapRequestData = "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/' xmlns:bl='http://xmlns.oracle.com/Enterprise/Tools/schemas/BL_MRYSTS_REQAPRVL_REQ.V1'> "+ " <soapenv:Header/> "+ "  <soapenv:Body> "+ "     <parameter> "+ "      <bl:EMPLID>10086</bl:EMPLID> "+ "      <bl:APRVLSTS>SUB</bl:APRVLSTS>"+ "        <bl:MRYSTS>S</bl:MRYSTS>"+ "  </parameter>"+ "  </soapenv:Body>" + " </soapenv:Envelope>";System.out.println("soapRequestData=" + soapRequestData);PostMethod postMethod = new PostMethod("http://IP:port/PSIGW/PeopleSoftServiceListeningConnector/PSFT_HR");try {byte[] b = soapRequestData.getBytes("utf-8");InputStream is = new ByteArrayInputStream(b, 0, b.length);org.apache.commons.httpclient.methods.RequestEntity re = new InputStreamRequestEntity(is, b.length,"text/xml;charset=utf-8");postMethod.setRequestEntity(re);postMethod.setRequestHeader("SOAPAction", "BL_MRYSTS_REQAPRVL.v1");HttpClient httpClient = new HttpClient();int status = httpClient.executeMethod(postMethod);InputStream in = postMethod.getResponseBodyAsStream();DocumentBuilderFactory bf = DocumentBuilderFactory.newInstance();DocumentBuilder db = bf.newDocumentBuilder();Document document = db.parse(in);String res = document.getElementsByTagName("ResponseInfo").item(0).getTextContent();System.out.println(res);System.out.println(in);System.out.println(status);} catch (UnsupportedEncodingException e) {e.printStackTrace();} catch (HttpException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}}

5、测试运行环境:

JDK1.7,
所需jar包,maven地址如下:
<dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.1.1</version>
</dependency><dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId><version>1.4</version>
</dependency><dependency><groupId>commons-httpclient</groupId><artifactId>commons-httpclient</artifactId><version>3.1</version>
</dependency>

java调用peopleSoft webservice相关推荐

  1. Java调用.NET webservice方法的几种方式

    最近做项目,涉及到web-service调用,现学了一个星期,现简单的做一个小结.下面实现的是对传喜物流系统(http://vip.cxcod.com/PodApi/GetPodStr.asmx?ws ...

  2. Java调用第三方webService服务

    WebService Web service是一个平台独立的.低耦合的.自包含的.基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述.发布.发现.协调和配置这些 ...

  3. java 调用.net webservice axis2_java利用axis2调用.net写的webservice,传递自定义的实体类参数...

    利用axis2可以很方便的自动生成客户端代码,同时对复杂参数类型的传递也很方便,本文的服务端以.net开发,有一个自定义的实体类作为参数,客户端用java,简单介绍一下利用axis2的wsdl2jav ...

  4. java调用天气预报webservice

    代码下载:https://download.csdn.net/download/sinat_36710456/10369688 一.说明 转载该博客中使用的天气预报的webService地址: htt ...

  5. Java调用C++webservice接口

    import javax.xml.namespace.QName; import org.apache.axis.client.Call; import org.apache.axis.client. ...

  6. java调用天气webservice,java调用webservice 天气预报

    public static void WeatherTest(){ try { String endpoint = "http://www.webxml.com.cn/WebServices ...

  7. c#调用java开发的webservice_用C#.NET调用Java开发的WebService传递int,double问题

    用C#.NET调用Java开发的WebService时,先在客户端封装的带有int属性的对象,当将该对象传到服务器端时,服务器端可以得到string类型的属性值,却不能得到int类型.double和D ...

  8. 用Java调用WebService

    这是一个用Java调用C#版WebService接口的例子: C#接口: Java代码 <SPAN style="FONT-SIZE: 11px"> using Sys ...

  9. java调用net_Java调用C#.net开发的WebService

    1.开发C#.net的WebService服务 1.1点击"开始"->"程序"-> "Microsoft Visual Studio 20 ...

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

    只为成功找方法,不为失败找借口! 互联网上面有很多的免费webService服务,我们可以调用这些免费的WebService服务,将一些其他网站的内容信息集成到我们的Web应用中显示,下面就以获取天气 ...

最新文章

  1. PHP和MySQL Web开发从新手到高手,第8天-创建categories管理页面
  2. 闯荡北京卖枣的临县人:同有一个“红枣美梦”(2张)
  3. 32.Docker安装MongoDb
  4. 解决iPhone网络软件在睡眠情况断线问题
  5. java中对象别名使用_JAVA中的别名现象
  6. php 上传文件工具类,PHP 图片上传工具类(支持多文件上传)
  7. Hadoop HA on Yarn——集群配置
  8. 热量的传递 —— 热辐射
  9. poj 2513 欧拉回路+并查集推断是否联通+Trie树
  10. 【Python】模糊匹配搜索
  11. next_permutation()
  12. ubuntu python subprocess模块执行python脚本
  13. RNA-seq——五、根据差异基因画火山图、在火山图上标记基因名
  14. jsp中java代码的输出,Java控制台输入,输出!-JSP教程,Java技巧及代码
  15. 微信小程序获取用户收货地址源码
  16. 初体验微信小程序记事本
  17. 关于css 中的dl dt dd
  18. Eclipse下更新项目出现.settings/org.eclipse.wst.common.component冲突
  19. 【听】怪诞行为学,可预测的非理性
  20. 【JavaWeb学习】JavaScript(基础)

热门文章

  1. 使用Hooks实现防抖节流 TS版本
  2. 存算一体文献阅读笔记二:XNOR-RRAM architecture for BNN from Shimeng Yu in ASU 2017
  3. VBS word/excel 转 PDF
  4. c语言 sin1怎么写,c语言sin30怎么写
  5. NUC970裸机IIC驱动
  6. Python数据可视化交互基本
  7. 学历不高的人,去学这5个技术,好找工作,上班也不累
  8. mysql 周几_Mysql的日期转换成星期[某天对应周几]
  9. C语言/C++项目——黄金矿工
  10. SRVCC关键场景及Log分析