本篇是用来填上一篇 挖下的坑的。

1.java调用webservice

有一些已有的webservice服务,由xfire生成发布,有些有参数,有些无参数,无参数的直接我直接使用org.codehaus.xfire这个包里的Client来动态生成客户端。然后调用就可以了。非常简单

但对于有参的,且是服务器自定义的类作为参数的时候,实在是搞不定。。不管是把自定义的类放到本地,包名一致,在invoke的时候生成这个对象还是其他什么方法。都无法完成。

最终换了直接发送soap报文来完成。dirty hack啊。如果你有一些好的方法希望不吝赐教。

解决方案来源自stackoverflow,因为stackoverflow现在国内好像有时候打不开。因此把代码贴过来。有疑问的话留言讨论。

2.Access restriction on class due to restriction on required library rt.jar? 报错

总么都感觉是环境问题,系统bug。解决如下:

  1. 进入project properties的 Build Path 设置里.
  2. 移除 JRE System Library
  3. 再添加回来,方法是: 选择 “Add Library” ,然后选择 JRE System Library.  

3.SSHManager类报错:com.jcraft.jsch.JSchException: UnknownHostKey

我使用的一个SSHManager类如下:

报这个错是因为

连接这段代码里少了config.put(“StrictHostKeyChecking”, “no”);这段设置,这个是去掉了严格的安全检查,一般只用于测试目的。

4.navicat连接oracle数据库

之前使用PL/SQL操作Oracle数据库,使用Heidisql操作mysql数据库。。切换麻烦。而且PL/SQL搜索的时候中文有问题。于是打算使用navicat统一管理

方法是:

1.首先下载Instant Client 的32位版本和Navicat Premium

2.然后解压Instant Client,配置navicat

navicat_oracle

选择oci文件即可

然后新建oracle配置,选择basic模式,其他的根据你的数据库信息自己填写即可。

 

5.HttpClient的logger日志实在太多了

大人,实在太多了。看不过来啊。附赠一篇log4j配置文件详解

在log4j.properties文件中添加如下配置信息

log4j.logger.httpclient.wire.header=INFO

log4j.logger.httpclient.wire.content=INFO

log4j.logger.org.apache.commons.httpclient = INFO

最后附赠一些实用的工具

http://www.freeformatter.com/ 程序员必备。各类转换,包括转义工具,格式校验工具。效果很好。

流体力学理论与F1赛车的空气动力学123   什么雷诺数,伯努利方程,文丘里效应,当年木有好好学啊。这么高大上的东西果然还是有压力。