Banco de Dados - JAVA - SQL - WebService

29/11/2017

0

Boa noite pessoal, tudo bem? Sou novo em JAVA e gostaria de uma ajuda de vocês, vi esses dias atrás umas vídeo-aulas explicando como criar um WebService no Android utilizando o MySQL para gerenciar o BD.Porém não consegui implementar o método de buscar um usuário por ID no meu banco de dados. O problema é que não consigo buscar os meus usuarios pelo ID no banco e retornar os dados desse usuário na tela. Tem como vocês me darem uma ajuda? Abaixo os métodos que utilizei:

Método:

import java.util.ArrayList;
import java.util.Iterator;

import com.example.kb.R.id;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.text.Editable;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.SearchView;
import android.widget.Toast;

public class BuscaOrdemServico extends Activity{

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.busca);
final EditText edOS = (EditText) findViewById(R.id.etOS);
Button btBusca = (Button) findViewById(R.id.btBusca);
Button btVolta = (Button) findViewById(R.id.btVolta);

btBusca.setOnClickListener(new OnClickListener() {
	
	@Override	
	public void onClick(View v) {
		
		UsuarioDAO dao = new UsuarioDAO();
		boolean usr = dao.buscarUsuarioporID(1, edOS.getText());
		
		if(usr){
			
			Toast.makeText(BuscaOrdemServico.this, "Ordem de Serviço Encontrada",Toast.LENGTH_LONG).show();
			finish();
		}else {
			Toast.makeText(BuscaOrdemServico.this, "Nenhuma Ordem de Serviço Encontrada", Toast.LENGTH_LONG).show();					
		}
	}

	
});

btVolta.setOnClickListener(new OnClickListener() {
	
	@Override
	public void onClick(View v) {
		Intent it = new Intent(BuscaOrdemServico.this, MainActivity.class);
		startActivity(it);
	}

});


Classe DAO

public Usuario buscarUsuarioporID(int id){
Usuario usr = null;

SoapObject buscarUsuarios = new SoapObject(NAMESPACE, BUSCAR_POR_ID);
buscarUsuarios.addProperty(“id”, id);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
	
	envelope.setOutputSoapObject(buscarUsuarios);
	
	envelope.implicitTypes = true;
	
	HttpTransportSE http = new HttpTransportSE(URL);
	
try {
	http.call("urn:" + BUSCAR_POR_ID, envelope);
		
	SoapObject resposta = (SoapObject) envelope.getResponse();
		
	usr = new Usuario();
			
	usr.setId(Integer.parseInt(resposta.getProperty("id").toString()));	
	usr.setNome(resposta.getProperty("nome").toString());
	usr.setIdade(Integer.parseInt(resposta.getProperty("idade").toString()));
	
	
		
		
} catch (Exception e) {
		e.printStackTrace();
		return null;
}
			
return usr;
Denrlei Silva

Denrlei Silva

Responder

Posts

12/12/2017

Paulo Carvalho

Boa noite Denrlei, tudo certo?

Batendo o olho no seu código percebi que na declaração do método buscarusuarioporid você assina ele com apenas um parâmetro que é o próprio id do usuário, mas quando você invoca o método você passa dois parâmetros para ele. Será que é isso que não está ocasionando o erro?

Qualquer coisa posta o erro ai para darmos uma olhada. Um abraço.
Responder

13/12/2017

Denrlei Silva

Boa noite Denrlei, tudo certo?

Batendo o olho no seu código percebi que na declaração do método buscarusuarioporid você assina ele com apenas um parâmetro que é o próprio id do usuário, mas quando você invoca o método você passa dois parâmetros para ele. Será que é isso que não está ocasionando o erro?

Qualquer coisa posta o erro ai para darmos uma olhada. Um abraço.


Cara obrigado por responder! Consegui agora! Tive que alterar meu método de "int id" na Classe DAO para "string". E no método eu "injeto" um valor em uma string através de um campo de texto (não sei se me expliquei direto). Agora eu consigo procurar o id no banco de dados. Porém não sei como exibir os dados relacionados àquele id no banco de dados. Tem uma ideia Pauloesc1?
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar