この日付をこの形式で2013-11-14 00:00:00
入力すると、Android アプリケーションが失敗し、次のエラーが表示されるのはなぜですか。
java.io.IOException: HTTP request failed, HTTP status: 500.
しかし、このフォーマットを入れると2013-11-14
正しく動作します。
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME_FRES);
PropertyInfo pi = new PropertyInfo();
pi.type = PropertyInfo.STRING_CLASS;
//adding parameters
**request.addProperty("fechaConsultar", Fecha);**
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE transporte = new HttpTransportSE(URL, 30000);
Fecha は日付形式の文字列です。私の WebService は Datetime オブジェクトを取得します。この私の Web サービス
public List<FechaReservada> fechasReservadas(DateTime fechaConsultar)
{
return consultaFecha(fechaConsultar);
}
public List<FechaReservada> consultaFecha(DateTime fecha)
{
MySqlConnection con = new MySqlConnection(ConfigurationManager.ConnectionStrings["ConexionMysql"].ConnectionString);
List<FechaReservada> result = new List<FechaReservada>();
FechaReservada fec;
try
{
con.Open();
MySqlCommand cmd = new MySqlCommand("g_getSalonesbyFecha", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("Fecha",fecha);
MySqlDataAdapter da = new MySqlDataAdapter(cmd);
DataTable ds = new DataTable();
da.Fill(ds);
foreach (DataRow dr in ds.Rows)
{
fec = new FechaReservada();
fec.Sucursal = int.Parse(dr["Sucursal"].ToString());
fec.Salon = dr["Salon"].ToString();
fec.Fecha = DateTime.Parse(dr["Fecha"].ToString());
fec.Confirmada = dr["Confirmado"].ToString().Contains("1") ? true : false;
result.Add(fec);
}
con.Close();
return result;
}
catch (MySqlException e)
{
con.Close();
return null;
}
}