5
我有一个tomee服务器,从android我可以调用GET方法,并很好地工作。现在,我尝试凌空库帖子里面有一个字段java.util.Date的实体,但在服务器我得到:约翰松desirializing日期余下
WARNING - Interceptor for {http://services.scol.csd.gr/}MeasureinfoFacadeREST has thrown exception, unwinding now
org.apache.johnzon.mapper.MapperException: java.text.ParseException: Unparseable date: "Sep 23, 2016 13:14:29"
WARNING - Exception in handleFault on interceptor o[email protected]60d6a046
org.apache.cxf.interceptor.Fault: java.text.ParseException: Unparseable date: "Sep 23, 2016 13:46:36"
Caused by: java.text.ParseException: Unparseable date: "Sep 23, 2016 13:14:29"
at java.text.DateFormat.parse(DateFormat.java:366)
at org.apache.johnzon.mapper.converter.DateConverter.fromString(DateConverter.java:49)
... 48 more
我试图重写johnzon转换器,如:
在resources.xml中:
<?xml version="1.0"?>
<resources>
<Service id="johnzon" class-name="org.apache.johnzon.jaxrs.ConfigurableJohnzonProvider">
accessModeName = field
</Service>
</resources>
在OpenEJB的-jar.xml中
<?xml version="1.0" encoding="UTF-8"?>
<openejb-jar>
<pojo-deployment class-name="test">
<properties>
cxf.jaxrs.skip-provider-scanning = true
cxf.jaxrs.providers = johnzon,org.apache.openejb.server.cxf.rs.EJBAccessExceptionMapper
</properties>
</pojo-deployment>
</openejb-jar>
在POJO部署
我给一个随机的名称,如'测试'
public class LocalDateConverter implements Converter<Date> {
@Override
public String toString(final Date instance) {
final Calendar cal = GregorianCalendar.getInstance();
cal.setTime(instance);
return DatatypeConverter.printDateTime(cal);
}
@Override
public Date fromString(final String text) {
return DatatypeConverter.parseDateTime(text).getTime();
}
}
,然后在我的实体:
@JohnzonConverter(LocalDateConverter.class)
public Date getDay() {
return day;
}
@JohnzonConverter(LocalDateConverter.class)
public void setDay(Date day) {
this.day = day;
}
我发现这个配置从here
但问题仍然存在。
有什么建议吗?
这似乎是正确的但没有解决它 – ddarellis
https://github.com/apache/johnzon/blob/982af7173b1596134c6ed9ce43d871863f58e285/johnzon-不知道你是否可以在旧版本上使用它? 不知道你是否可以在旧版本上使用它? –