Código de resposta inesperado 500 para o método POST
Estou atualizando o projeto antigo e não tenho muito conhecimento do Android a partir de agora. No projeto, temos a seção Comentários sobre o produto.
Para comentar após o envio anterior, retornamos como 0 (algum erro) e 1 (êxito).
Abaixo está o código que estávamos usando.
final JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(
Method.POST,
act.getString(R.string.CommentForUserURL),
null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(
JSONObject response) {
Log.d("response done", "done===" + response);
mloading.setVisibility(View.GONE);
if (response != null) {
Comment obj = new Comment();
JSONObject jsonObject = response;
try {
obj.setComment(jsonObject
.getString("Comment"));
Agora, alteramos o objeto de retorno de 0/1 para o objeto de usuário.
Isso precisa atualizar o JsonObjectRequest para a solicitação GJSON? Ou o objeto também será analisado com JsonObjectRequest?
Estou perguntando porque quando executo acima, recebo erro como abaixo.
01-25 12:30:21.754: E/Volley(16487): [10114] BasicNetwork.performRequest:
Unexpected response code 500 for
http://new.souqalharim.com/add/CommentForMerchant
Alguma idéia de por que estou recebendo esse erro?
Nota: Este URL está funcionando bem para o aplicativo do iPhone.
Editar 1Esse é o método post, portanto, o URL completo não está lá. Existem mais alguns parâmetros para adicionar como? Comment = MyComment & userId = 123 & productId = 234. Como é post, não estou adicionando parâmetros no URL real.
Eu tenho aqueles em outros métodos
@Override
protected Map<String, String> getParams()
throws AuthFailureError {
Map<String, String> params = new HashMap<String, String>();
params.put("productId", productId.toString());
params.put("userId",
mSessionManager.getUserCode().toString());
params.put("comment", GlobalFunctions
.EncodeParameter(med_comments
.getText().toString()));
return params;
}
URL completo é como abaixo.
http://new.souqalharim.com/add/CommentForUser?productId=325&userId=5&comment=abcd
Eu testei isso no Mozilla RESTClient e funciona bem.
Editar 2Depois de verificar mais, encontreiprotected Map<String, String> getParams() throws AuthFailureError {
não está sendo chamado. Alguma idéia de por que isso está acontecendo?