论坛首页 Java企业应用论坛

asix2 关于参数java.util.Date类型的问题

浏览 3440 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-07-14   最后修改:2009-07-14
最近弄一个领导的平台,要集成众系统的部分功能。开始研究axis2,开始跟着站内一些先驱们的足迹,慢慢练习axis2一些基础东西。到了实际的应用中,问题那是成批的来。如不支持发布spring的事务代理子类等等。过程不多说了,直入主题:发布方法中参数含有java.util.Date类型(包括JavaBean中的java.util.Date属性)会报“date string can not be less than 19 charactors.”异常。经过大半天的折腾,终于看到在Apache的BUG页上看到一个解决方案.url:http://issues.apache.org/jira/browse/AXIS2-4075
不过我下载它的aar包并不能运行起来,还是报一样的错误。最后自己写了一个是OK的。
具体:
wsdl的处理还是将参数的type映射为:xs:dateTime(注意大小写)
return的类型可以不用修改(返回yyyy-mm-dd 00:00:00格式)。
采用service.xml发布服务,如下:
<service name="DateService">
	<parameter name="ServiceClass">server.DateServer</parameter> 
	<operation name="getCurrentTime">
		<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" /> 
	</operation>
</service>

import java.util.Date;

public class DateServer {
	public Date getCurrentTime(Date date) {
		return date;
	}
}

利用eclipse插件生成代码,测试OK!
   发表时间:2009-07-14  
忘了写,我用的axis2 1.5,我想应该和1.4.1没有什么差别,如果有人在1.4.1下的测试后,有不相同的地方可以发出来。
0 请登录后投票
   发表时间:2009-07-14  
在我们这,时间和金额就用String类型,约定好格式
0 请登录后投票
   发表时间:2009-07-16  
我在是在hibernate的基础上发布webservice,很多都是传入原始JavaBean,当初谁都没有这方面的意识!
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics