The date format which is output as a response to the Web Service client by Axis2 is formatted as "2009-08-28+01:00". I would like to change this to show only the date without the timezone information (e.g.:"2009-08-28")
Axis 2 1.4.1
<xsd:element name="StartDate" type="xsd:date" />;
Unfortunately it is not possible to change the "StartDate" element to a xsd:string
or xsd:token
As I am using the xsd:date
XML Data Type which is defined as
[-]CCYY-MM-DD[Z|(+|-)hh:mm]
Thus if I set
Calendar cal = Calendar.getInstance();
cal.setTimeZone(TimeZone.getTimeZone("UTC");
...
then the output looks like this
2009-01-28Z
You can replace "UTC" by "GMT" or "".
Can I get rid of the "Z"?
I had the same problem and it is possible to remove timezone from dates!
You can use your own created ConvertUtil.
At first you must create class with your customized convert method/methods:
public class myConvertUtil extends org.apache.axis2.databinding.utils.ConverterUtil
{
public static String convertToString(Date value)
{
// return customized Date format
}
}
Then you must set this class as SYSTEM_PROPERTY_ADB_CONVERTERUTIL
:
String convert_class = "com.firm.myConvertUtil";
System.setProperty(ConverterUtil.SYSTEM_PROPERTY_ADB_CONVERTERUTIL, convert_class);