- 浏览: 31010 次
- 性别:
- 来自: 北京
-
最新评论
-
CapsLk:
while (true) ...
socket关闭的问题 -
only_java:
神啊,我说我关闭个stream怎么会把socket连接也关了。 ...
socket关闭的问题 -
shx:
不用客气,能帮到你很高兴。
socket关闭的问题 -
major361:
得此文
我问题终于解决了
关闭socket的InputStr ...
socket关闭的问题 -
lqg629:
还有我的QQ:307216786
可以和你交流下吗
axis2开发笔记-消息监控
文章列表
有时需要检查整个项目的更新记录,特别是在发布版本的时候,容易想到的是check一个基准版本,再update到最新,看这个update记录。本人刚开始就这么干过,问题是update记录太简略,通常还需要具体到文件去查询更细的更新日志,几次下来不胜其烦。很快就发现其实wincvs是可以做到这个事情的,不过是通过python脚本实现的,所以先要安装python,然后还需要在wincvs里配置,安装就不说了,下载一个最新版的就可以,配置的话,在Admin --> Preference' 选'WinCvs'标签设置python DLL,这个通常在'C:\WINNT\system32\pyth ...
- 2008-09-11 17:31
- 浏览 1317
- 评论(0)
以前发在公司内网的文章,发出来共享,隐去具体项目、人员的名字。
某天检查某位同事遇到的tcp一端关闭另一端读数据报connect reset异常,问题现象是:windows部署客户端,linux上部署服务端的情况下执行操作客户端经常会报connection reset错误。
一、问题定位
第一步抓包分析,发现RST包。
第二步查tcp协议规范和java实现:
tcp常见的关闭方式通常是四次握手(很少的情况下是三次),发送两个FIN segment,两个ACK segment,参见RFC 793《TRANSMISSION CONTROL PROTOCOL》
TCP A ...
- 2008-08-09 15:12
- 浏览 3904
- 评论(4)
( U+0000 – U+007F) 基本拉丁字符
( U+0000 – U+007F) ASCII 标点符号
( U+0000 – U+007F) ASCII 数字
( U+0000 – U+007F) 美元、欧元符号
( U+0000 – U+007F) 控制符 C0
( U+0080 – U+00FF) 增补拉 ...
- 2008-08-09 15:02
- 浏览 1794
- 评论(0)
以前发在公司内网的文章,发出来共享,隐去具体项目、人员的名字。
在某项目中发现Sun 的BASE64Decoder 与某些cipher实现存在问题。
1.BASE64Decoder
这个没有java doc,属于jdk里不推荐使用的工具类,使用过程中发现,在非常偶然的情况下,解出的字节数组会少两个字节,粗略估计出错概率<万分之一
2.jce中的3des cipher 解密功能
多线程情况下,会出现无法解出或者解出的结果部分错误,怀疑非线程安全。出错概率万分之一左右,没有验证jce中其他算法是否也这样。
解决方案:
1.使用apache common中的Base64替换
2.将ciph ...
- 2008-08-09 14:56
- 浏览 2766
- 评论(0)
很久以前发在公司内网的文章,发出来共享,隐去具体项目、人员的名字。
某日查一个bug,发现类似下面的代码
class Generator
{
...
private StringBuffer generateRandStr(String strSet,int length)
{
StringBuffer sbuf = new StringBuffer() ;
int ...
- 2008-08-09 14:50
- 浏览 1245
- 评论(0)
很久以前发在公司内网的文章,发出来共享,隐去具体项目、人员的名字。
某天上午xxx向我反应一个yyy项目现场的问题,zzz操作失败,我告诉他数据库里有一个时间间隔参数,把它改成0就行了。
下午胡xxx又找我,说确认那个参数的确就是0,这下我也不知道原因了,只能登录服务器检查日志,没有看到有用的线索;检查源程序,程序逻辑也是对的;弄得我也很郁闷,怀疑有非检查型的异常导致程序中途退出,于是准备在程序中多打些日志看看问题在哪,这时突然发现程序中有java.sql.Date的踪影,我意识到问题出在什么地方了。
java.sql.Date对应标准sql里的Date类型,它会把时、分、秒、毫秒位置归零,除 ...
- 2008-08-09 14:47
- 浏览 1814
- 评论(0)
axis2支持pring的装载,具体参见官方文档。但如果采用完整aar的方式(即你的程序和依赖jar都打到aar里)则因为class loader的原因需要注意两点:
1.需要吧axis2/WEB-INF/lib/axis2-spring-1.4.jar删除
2.需要配置hibernate.query.factory_class为org.hibernate.hql.classic.ClassicQueryTranslatorFactory
- 2008-07-30 16:17
- 浏览 2554
- 评论(0)
说来惭愧,长期做后台开发很少接触到tomcat,因为用axis2需要它装载居然给我出了个jdk版本的错误,我用的是tomcat5.5+兼容包,运行在jdk1.4.2。对tomcat还是很信任的,开始怀疑是axis2的问题,但又明明提示是jsp的错误,最终查明是tomcat编译jsp缓存的原因,曾经在jdk6上运行过tomcat,导致编译的jsp一直保留下来,删掉tomcat\work\Catalina\localhost\axis2问题解决。
java.lang.UnsupportedClassVersionError: org/apache/jsp/axis2_002dweb/index_js ...
- 2008-07-29 17:05
- 浏览 1461
- 评论(0)
axis2支持pojo方式部署,这大大降低了发布web service的工作量和难度。但当前版本对pojo的支持只能说差强人意,只能支持简单的pojo,即java基本类型,java bean,数组,而List, Map, Set之类的都不支持。另外,pojo是按固定的方式映射的,也就是说使用xml消息流的格式是不可调的。
对pojo这种程度的支持实在难以让人满意,不满意就只能迁就着用,或者使用所谓的数据绑定方法,大概看了一下几种绑定方法,基本上都是硬编码实现,感觉很丑陋。其实只要把pojo做好了,其他的都是浮云。
另外,axis2的文档也不怎么样,想深入的弄清楚问题很困难,看来axi ...
- 2008-07-29 00:24
- 浏览 1256
- 评论(0)
因为axis2对pojo支持有限,只能将用到的List类型改成数组,然后发现hibernate的 array components mapping测试出错,排查了一下似乎是hibernate和derby配合出现了问题,换成oracle问题解决,换成hsqldb也没问题。
发现问题的mapping配置。
<hibernate-mapping>
<class name="DispatchList">
<id name="id">
<generator class="native&q ...
- 2008-07-28 21:24
- 浏览 4320
- 评论(0)
当前java社区主流的soap中间件有两个,axis2和cxf。两者的前身都是大名鼎鼎:axis和xfire,axis就不说了,曾经就是soap实现的代名词,xfire则号称最快的soap实现。但在java社区吃老本是行不通的,XFire和Celtix合并投身apache阵营形成了今天的cxf;axis2则是在吸收了axis经验的基础上重新进行了设计和实现。
二选一,这是个问题,网上也不乏对二者进行比较,不过随着新版本的发布可能曾经的缺点已经不再存在,一般的说法是cxf用起来更简单些。不过对我来说cxf有个巨大的障碍,只能在jdk1.5以上版本运行,我们的项目运行在jdk1.4.2上,不 ...
- 2008-07-27 19:05
- 浏览 1419
- 评论(0)
在调试或者定位问题的时候通常需要看到传递的具体消息内容,得益于axis2良好的架构设计,首先想到开发一个log模块插到axis的消息处理流中,但事实上axis2已经提供了这个模块,用了一下感觉挺好用,但为性能考虑默认情况下这个模块是没有装载的,下面介绍一下装载配置过程(以tomcat容器在本机安装为例)。
1.因为使用了applet进行显示,首先要安装applet
将<CATALINA_HOME>/webapps/axis2/WEB-INF/lib/soapmonitor-1.3.jar解压放到<CATALINA_HOME>/webapps/axis2下
注意:浏览 ...
- 2008-07-26 01:42
- 浏览 3131
- 评论(3)
环境:eclipse3.4 + m2eclipse最新版本0.94
问题:eclipse的attach source功能失效。
分析:maven将这个功能接管过来了,将要配置的源码jar放到maven的repo相应的路径下,maven dependencies就可以得到,但要注意命名要和使用的jar一致(参见图一),这也体现了maven的思想,通过统一规则来简化配置。
进一步: 使用m2eclipse提供的download source功能,一次点击搞定,参见图二。
- 2008-07-22 13:44
- 浏览 4029
- 评论(0)