那些很纠结要不要直接用wsimport生成的pojo,因为我没能找到很好的办法去转xmlGregorianCalendar到date或者java.util.Calendar,我觉得在pojo依赖ws是不可接受的,奋战了一晚上找到了在wsimport时转换的办法,为了方便日后记忆,贴上配置清单,此清单还包括了禁用 ws的wrapper  style和异步方式的调用等,截获soap消息,打印log,已经使用本地的wsdl等。

先上一个命令行

wsimport -b ReaderServices-building.xml -p com.xxx.ws.stub.reader -wsdllocation ReaderServices.wsdl -Xnocompile ReaderServices.wsdl 在上building.xml

xmlns:xsd="http://www.w3.org/2001/XMLSchema"

xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"

xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"

xmlns="http://java.sun.com/xml/ns/jaxws">

false

false

parseMethod="javax.xml.bind.DatatypeConverter.parseDate"

printMethod="javax.xml.bind.DatatypeConverter.printDate"/>

parseMethod="javax.xml.bind.DatatypeConverter.parseDate"

printMethod="javax.xml.bind.DatatypeConverter.printDate"/>

fromwsdlhandler.common.LoggingHandler

LoggingHandler是直接从ws sample下面里拿的,小改了下源码

import java.io.PrintStream;

import java.util.Set;

import javax.xml.namespace.QName;

import javax.xml.soap.SOAPMessage;

import javax.xml.ws.handler.MessageContext;

import javax.xml.ws.handler.soap.SOAPHandler;

import javax.xml.ws.handler.soap.SOAPMessageContext;

/*

* This simple SOAPHandler will output the contents of incoming

* and outgoing messages.

*/

public class LoggingHandler implements SOAPHandler {

// change this to redirect output if desired

private static PrintStream out = System.out;

public Set getHeaders() {

return null;

}

public boolean handleMessage(SOAPMessageContext smc) {

logToSystemOut(smc);

return true;

}

public boolean handleFault(SOAPMessageContext smc) {

logToSystemOut(smc);

return true;

}

// nothing to clean up

public void close(MessageContext messageContext) {

}

/*

* Check the MESSAGE_OUTBOUND_PROPERTY in the context

* to see if this is an outgoing or incoming message.

* Write a brief message to the print stream and

* output the message. The writeTo() method can throw

* SOAPException or IOException

*/

private void logToSystemOut(SOAPMessageContext smc) {

Boolean outboundProperty = (Boolean)

smc.get (MessageContext.MESSAGE_OUTBOUND_PROPERTY);

if (outboundProperty.booleanValue()) {

out.println("\nHandler Log -> Outbound message:");

} else {

out.println("\nHandler Log -> Inbound message:");

}

SOAPMessage message = smc.getMessage();

try {

message.writeTo(out);

out.println();

} catch (Exception e) {

e.printStackTrace();

}

}

}

java wsimport https,wsimport使用小结二相关推荐

  1. Java中getResourceAsStream的用法小结

    2019独角兽企业重金招聘Python工程师标准>>> Java中getResourceAsStream的用法小结 一.Java中的getResourceAsStream主要有以下三 ...

  2. Java后端架构开荒实战(二)——单机到集群

    Java后端架构开荒实战(二)--单机到集群 一.前言 上一篇文章做了一些准备工作,这边文章正式开始写代码. 在做好单实例架构之后,升级到集群是一件很容易的事情,所以把单机和集群放在这一篇一起说. 二 ...

  3. SSL证书与Https应用部署小结(转发)

    为了提高网站的安全性,一般会在比较敏感的部分页面采用https传输,比如注册.登录.控制台等.像Gmail.网银等全部采用https传输. https/ssl 主要起到两个作用:网站认证.内容加密传输 ...

  4. java实现https请求

    参考: https://www.cnblogs.com/chinway/p/5802541.html java 实现https请求 JSSE是一个SSL和TLS的纯Java实现,通过JSSE可以很容易 ...

  5. Java开发微信公众号(二)---开启开发者模式,接入微信公众平台开发

    接入微信公众平台开发,开发者需要按照如下步骤完成: 1.填写服务器配置 2.验证服务器地址的有效性 3.依据接口文档实现业务逻辑 资料准备: 1.一个可以访问的外网,即80的访问端口,因为微信公众号接 ...

  6. Java 设计模式之工厂模式(二)

    原文地址:Java 设计模式之工厂模式(二) 博客地址:http://www.extlight.com 一.背景 本篇内容是 Java 设计模式创建型模式的第二篇.上一篇主题为 <Java 设计 ...

  7. java数据库编程——执行查询操作(二)

    [0]README 1) 本文部分文字描述和source code 均转自 core java volume 2 , 旨在理解 java数据库编程--执行查询操作(二) 的基础知识 : 2) 本文和 ...

  8. JAVA通过HTTPS发送POST请求的方法

    因为调用一个外部接口,会用到POST请求,而且还是Https的,但是由于之前学习的时候没有用到,所以研究了很久才弄懂了怎么去用JAVA实现Https发送post请求 使用的是HttpsURLConne ...

  9. java微信开发API解析(二)-获取消息和回复消息

    java微信开发API解析(二)-获取消息和回复消息 说明 * 本演示样例依据微信开发文档:http://mp.weixin.qq.com/wiki/home/index.html最新版(4/3/20 ...

  10. Java关键字transient和volatile小结(转)

    Java关键字transient和volatile小结(转) transient和volatile两个关键字一个用于对象序列化,一个用于线程同步,都是Java中比较高阶的话题,简单总结一下. tran ...

最新文章

  1. CollectionView侧滑刷新
  2. SAP MM 物料主数据分类视图的数据会带入批次分类视图里?
  3. MongoDB索引实战技巧
  4. 三十五、Scrapy 中的杂知识总结和代理池的编写
  5. 圆周率前100位记忆(房屋地点桩法)
  6. 吉林省计算机二级证书用英语怎么说,吉林省全国高等学校计算机水平考试二级...
  7. 2021数据技术嘉年华线上召开,万人观看,迎接国产数据库的耕获菑畬之年
  8. 如何使用IIS重写模块将HTTP重定向到HTTPS
  9. [.Net] 一句话Linq(递归查询)
  10. 树莓派+新型混合无人机
  11. PHP加密 php源代码在线加密工具推荐
  12. 来自MyBatis不一样收获结果的探索之旅
  13. GET获取表单数据的方法
  14. Python实现PDF(图片版)水印的去除
  15. ZYNQ开发(三)Linux Vi/Vim编译器
  16. 嵌入式开发练习(十五)PWM、DAC的使用
  17. 吴军的谷歌方法论|周末放送|Google的个人英雄主义和群众路线
  18. 相乘函数计算机表示符号,各种乘法的表示符号
  19. 2016年4月编程语言排行榜 Visual Basic正渐行渐远
  20. RxJava2 转换操作符之FlatMap()方法

热门文章

  1. 先进核反应堆 ——新能源概论结课作业
  2. 题解第八届蓝桥杯B.等差素数列
  3. java jdom jar_jdom jar
  4. android9应用icon尺寸,APP-icon尺寸
  5. html网页如何导入word,怎么把网页导入word
  6. python增量爬虫_python网络爬虫——增量式爬虫
  7. Linux开发板启动需要登录密码设置方法
  8. java实现逆波兰表达式求值
  9. MacQQ消息防撤回
  10. 求极限的若干方法经验和教训