Foros del Web » Programando para Internet » Android »

Problema al mostrar datos obtenidos de json

Estas en el tema de Problema al mostrar datos obtenidos de json en el foro de Android en Foros del Web. Tengo el sgte codigo en android @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Java: Ver original package conexion ;   import java.util.ArrayList ; import java.util.List ; import java.util.logging.Level ; ...
  #1 (permalink)  
Antiguo 22/02/2015, 20:55
 
Fecha de Ingreso: enero-2015
Ubicación: Guayaquil
Mensajes: 17
Antigüedad: 9 años, 3 meses
Puntos: 0
Información Problema al mostrar datos obtenidos de json

Tengo el sgte codigo en android

Código Java:
Ver original
  1. package conexion;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5. import java.util.logging.Level;
  6. import java.util.logging.Logger;
  7.  
  8. import json.JSONParser;
  9.  
  10. import org.apache.http.message.BasicNameValuePair;
  11. import org.json.JSONArray;
  12. import org.json.JSONException;
  13. import org.json.JSONObject;
  14.  
  15. import android.app.Activity;
  16. import android.app.ProgressDialog;
  17. import android.os.AsyncTask;
  18. import android.os.Bundle;
  19. import android.util.Log;
  20. import android.view.View;
  21. import android.view.Window;
  22. import android.view.View.OnClickListener;
  23. import android.widget.Button;
  24. import android.widget.EditText;
  25. import android.widget.Toast;
  26.  
  27. import com.example.facturacion_movil.R;
  28.  
  29. public class ViewRegistro extends Activity implements OnClickListener{
  30.    
  31.     EditText txtcod, txtruc,txtnom,txtcor,txtced;
  32.     Button  btnContinuar;  
  33.     String num_fact,fecha,cliente,direccion,correo,cedula,subtotal,descuento,iva,total;    
  34.     // Progress Dialog
  35.     private ProgressDialog pDialog;
  36.  
  37.     // JSON parser class
  38.     JSONParser jsonParser = new JSONParser();
  39.     JSONArray clients;
  40.    
  41.     //testing on Emulator:
  42.     private static final String REGISTER_URL = "http://192.168.1.2:80/tesis/search.php";
  43.  
  44.     //ids
  45.     private static final String TAG_SUCCESS = "success";
  46.     private static final String TAG_CLIENTS = "clients";
  47.     private static final String TAG_MESSAGE = "message";   
  48.     private static final String TAG_NOMBRE = "nombre";
  49.     private static final String TAG_APELLIDO = "apellido";
  50.     private static final String TAG_CORREO = "correo";
  51.  
  52.     @Override
  53.     protected void onCreate(Bundle savedInstanceState) {
  54.         // TODO Auto-generated method stub
  55.         this.requestWindowFeature(Window.FEATURE_NO_TITLE);
  56.         super.onCreate(savedInstanceState);
  57.         setContentView(R.layout.activity_registro);
  58.  
  59.         txtced = (EditText)findViewById(R.id.txtCedCliente);
  60.         txtnom = (EditText)findViewById(R.id.txtNomCliente);       
  61.         txtcod = (EditText)findViewById(R.id.txtCodCliente);
  62.         txtruc = (EditText)findViewById(R.id.txtRucCliente);
  63.         txtcor = (EditText)findViewById(R.id.txtCorCliente);
  64.  
  65.         btnContinuar = (Button)findViewById(R.id.btnContinuar);
  66.         btnContinuar.setOnClickListener(this);
  67.  
  68.     }
  69.  
  70.     @Override
  71.     public void onClick(View v) {
  72.         // TODO Auto-generated method stub
  73.         new CreateUser().execute();
  74.  
  75.     }
  76.  
  77.     class CreateUser extends AsyncTask<String, String, String> {
  78.  
  79.  
  80.         @Override
  81.         protected void onPreExecute() {
  82.             super.onPreExecute();
  83.             pDialog = new ProgressDialog(ViewRegistro.this);
  84.             pDialog.setMessage("Esperando Conexion...");
  85.             pDialog.setIndeterminate(false);
  86.             pDialog.setCancelable(true);
  87.             pDialog.show();
  88.         }
  89.  
  90.         @Override
  91.         protected String doInBackground(String... args) {
  92.             // TODO Auto-generated method stub
  93.             // Check for success tag
  94.             int success;
  95.             String cedula = txtced.getText().toString();           
  96.                      
  97.             try {
  98.                 // Building Parameters
  99.                 List<BasicNameValuePair> params = new ArrayList<BasicNameValuePair>();
  100.                 params.add(new BasicNameValuePair("cedula", cedula));                                          
  101.                 Log.d("request!", "starting");
  102.  
  103.                 //Posting user data to script
  104.                 JSONObject json = jsonParser.makeHttpRequest(REGISTER_URL, "POST", params);
  105.  
  106.                 // full json response
  107.                 Log.d("Registering attempt", json.toString());
  108.  
  109.                 // json success element
  110.                 success = json.getInt(TAG_SUCCESS);
  111.                 if (success == 1) {
  112.                     Log.d("Cliente Encontrado!", json.toString());
  113.                      clients = json.getJSONArray(TAG_CLIENTS);
  114.                      for (int i = 0; i < clients.length(); i++) {
  115.                             JSONObject c = clients.getJSONObject(i);
  116.                             // Storing each json item in variable
  117.                             String nom_cli = c.getString(TAG_NOMBRE+" "+TAG_APELLIDO);
  118.                             String correo = c.getString(TAG_CORREO);
  119.                             Toast.makeText(getApplicationContext(), nom_cli, Toast.LENGTH_LONG).show();
  120.                             txtnom.setText(nom_cli);
  121.                             txtcor.setText(correo);                                            
  122.                      }
  123.                     return json.getString(TAG_MESSAGE);
  124.                 }else{
  125.                     Log.d("Cliente no Encontrado!", json.getString(TAG_MESSAGE));
  126.                     return json.getString(TAG_MESSAGE);
  127.  
  128.                 }
  129.             } catch (JSONException e) {
  130.                 e.printStackTrace();
  131.                 e.getMessage();
  132.                 Logger.getLogger(ViewRegistro.class.getName()).log(Level.SEVERE, null, e);
  133.             }
  134.  
  135.             return null;
  136.  
  137.         }
  138.  
  139.         protected void onPostExecute(String file_url) {
  140.             // dismiss the dialog once product deleted
  141.             pDialog.dismiss();
  142.             if (file_url != null){
  143.                 Toast.makeText(ViewRegistro.this, file_url, Toast.LENGTH_LONG).show();
  144.             }
  145.         }
  146.     }
  147. }

mediante codigo php y con uso de json me busca un dato en una base de datos mysql al probarlo desde el xampp funciona pero al momento de ejecutarlo desde el terminal y tratar de mostrar el resultado de la consulta que son 3 parametros me arroja el sgte error. alguien que me de alguna idea de porque el fallo.

Código Java:
Ver original
  1. 02-22 21:57:17.776: W/System.err(10742): org.json.JSONException: No value for clients
  2. 02-22 21:57:17.791: W/System.err(10742):    at org.json.JSONObject.get(JSONObject.java:355)
  3. 02-22 21:57:17.791: W/System.err(10742):    at org.json.JSONObject.getJSONArray(JSONObject.java:549)
  4. 02-22 21:57:17.791: W/System.err(10742):    at conexion.ViewRegistro$CreateUser.doInBackground(ViewRegistro.java:116)
  5. 02-22 21:57:17.791: W/System.err(10742):    at conexion.ViewRegistro$CreateUser.doInBackground(ViewRegistro.java:1)
  6. 02-22 21:57:17.791: W/System.err(10742):    at android.os.AsyncTask$2.call(AsyncTask.java:288)
  7. 02-22 21:57:17.791: W/System.err(10742):    at java.util.concurrent.FutureTask.run(FutureTask.java:237)
  8. 02-22 21:57:17.791: W/System.err(10742):    at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
  9. 02-22 21:57:17.791: W/System.err(10742):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
  10. 02-22 21:57:17.791: W/System.err(10742):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
  11. 02-22 21:57:17.796: W/System.err(10742):    at java.lang.Thread.run(Thread.java:841)
  12. 02-22 21:57:17.796: E/conexion.ViewRegistro(10742): null
  13. 02-22 21:57:17.796: E/conexion.ViewRegistro(10742): org.json.JSONException: No value for clients
  14. 02-22 21:57:17.796: E/conexion.ViewRegistro(10742):     at org.json.JSONObject.get(JSONObject.java:355)
  15. 02-22 21:57:17.796: E/conexion.ViewRegistro(10742):     at org.json.JSONObject.getJSONArray(JSONObject.java:549)
  16. 02-22 21:57:17.796: E/conexion.ViewRegistro(10742):     at conexion.ViewRegistro$CreateUser.doInBackground(ViewRegistro.java:116)
  17. 02-22 21:57:17.796: E/conexion.ViewRegistro(10742):     at conexion.ViewRegistro$CreateUser.doInBackground(ViewRegistro.java:1)
  18. 02-22 21:57:17.796: E/conexion.ViewRegistro(10742):     at android.os.AsyncTask$2.call(AsyncTask.java:288)
  19. 02-22 21:57:17.796: E/conexion.ViewRegistro(10742):     at java.util.concurrent.FutureTask.run(FutureTask.java:237)
  20. 02-22 21:57:17.796: E/conexion.ViewRegistro(10742):     at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
  21. 02-22 21:57:17.796: E/conexion.ViewRegistro(10742):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
  22. 02-22 21:57:17.796: E/conexion.ViewRegistro(10742):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
  23. 02-22 21:57:17.796: E/conexion.ViewRegistro(10742):     at java.lang.Thread.run(Thread.java:841)
  24. 02-22 21:57:17.836: E/ViewRootImpl(10742): sendUserActionEvent() mView == null

Etiquetas: java, mysql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:01.