I am requesting a WCF Windows Service an array of objects, and these objects contain the DateTime type. When my Android application tries to read the data from the object that is in the JSONObject message is below:
Windows Log:
11/6/2014 1:42:00 PM
Eclipse Log
Unparseable date: "/Date(1415205000000-0200)/" (at offset 0)
Android Request Method
private void GetEventos(String url)
{
showProgressDialog();
JsonArrayRequest req = new
JsonArrayRequest(url, new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response){
Log.d(TAG, String.valueOf(response.length()));
try
{
Evento evento;
for (int i = 0; i < response.length(); i++)
{
JSONObject jsonobject = response.getJSONObject(i);
evento = new Evento();
evento.setId(jsonobject.getInt("Id"));
evento.setNome(jsonobject.getString("Nome"));
evento.setIdMonitorado(jsonobject.getInt("IdMonitorado"));
//Test
SimpleDateFormat dt = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date date = dt.parse(jsonobject.getString("DataHora"));
Log.d(TAG, "DATA: " + date);
//evento.setDataHora(DateTime.parse(jsonobject.getJSONObject("DataHora")));
evento.setDuracao(jsonobject.getInt("Duracao"));
evento.setLatitudeDoLocal(Float.parseFloat(jsonobject.getString("LatitudeDoLocal")));
evento.setLongitudeDoLocal(Float.parseFloat(jsonobject.getString("LongitudeDoLocal")));
evento.setReceberNotificacao(jsonobject.getBoolean("ReceberNotificacao"));
evento.setNomeCidade(jsonobject.getString("NomeCidade"));
evento.setNomeUF(jsonobject.getString("NomeUF"));
_dataSoruceEvento.add(evento);
Log.d(TAG, evento.getDataHora().toString());
}
}catch(Exception ex){
Log.d(TAG, ex.getMessage().isEmpty() ? "Exception Null" : ex.getMessage());
}
hideProgressDialog();
//DataBindMonitorados(_dataSourceMonitorados);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d(TAG, "Error: " + error.getMessage());
hideProgressDialog();
}
});
// Adding request to request queue
AppController.getInstance().addToRequestQueue(req, tag_json_arry);
}
Results when I perform the request in the browser