ma_gr 2 Denunciar post Postado Fevereiro 28, 2015 Tenho um webservice criado e testado com SoapUI que funciona bem. Estou tendo problema na hora de cadastrar o usuário pela activity do aplicativo. Estou com muita atividade na main thread. Vi que tenho que extender a AsyncTask e fazer com o metodo doInBackground().A dúvida é onde e como faço esse método. Devo fazer na activity de layout logo abaixo ou na classe de registro de usuário? Layout activity RegUser.java public class RegUser extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.user); final EditText username = (EditText) findViewById(R.id.username); final EditText email = (EditText) findViewById(R.id.email); final EditText password = (EditText) findViewById(R.id.password); final EditText salt = (EditText) findViewById(R.id.salt); final EditText nome = (EditText) findViewById(R.id.nome); final EditText sobrenome = (EditText) findViewById(R.id.sobrenome); final EditText telefone = (EditText) findViewById(R.id.telefone); final EditText cel_wts = (EditText) findViewById(R.id.cel_wts); final EditText rua = (EditText) findViewById(R.id.rua); final EditText numero = (EditText) findViewById(R.id.numero); final EditText bairro = (EditText) findViewById(R.id.bairro); final EditText cidade = (EditText) findViewById(R.id.cidade); final EditText estado = (EditText) findViewById(R.id.estado); final EditText pais = (EditText) findViewById(R.id.pais); final EditText cpf_cnpj = (EditText) findViewById(R.id.cpf_cnpj); final EditText empresa= (EditText) findViewById(R.id.empresa); final EditText cargo = (EditText) findViewById(R.id.cargo); final Button cadProfile = (Button) findViewById(R.id.cadProfile); cadProfile.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { UserDAO dao = new UserDAO(); boolean resultado = dao.insertUser(new User(0, username.getText().toString(), email.getText().toString(), password.getText().toString(), salt.getText().toString(), nome.getText().toString(), sobrenome.getText().toString(), telefone.getText().toString(), cel_wts.getText().toString(), rua.getText().toString(), numero.getText().toString(), bairro.getText().toString(), cidade.getText().toString(), estado.getText().toString(), pais.getText().toString(), cpf_cnpj.getText().toString(), empresa.getText().toString(), cargo.getText().toString())); if(resultado){ finish(); }else{ Toast.makeText(RegUser.this, "Erro ao cadastrar :(", Toast.LENGTH_LONG).show(); } } }); } } UserDAO.java public class UserDAO { private static final String URL = "http://meuIP:8080/Meuprojeto/services/EventoDAO?wsdl"; private static final String NAMESPACE = "http://meuprojetoWS.habitodigital.com"; private static final String INSERIR = "insertUser"; private static final String EXCLUIR = "deletetUser"; private static final String ATUALIZAR = "updateUser"; private static final String BUSCAR_TODOS = "searchAllUsers"; private static final String BUSCAR_POR_ID = "searchUserById"; public boolean insertUser(User user){ SoapObject insertUser = new SoapObject(NAMESPACE, INSERIR); SoapObject usr = new SoapObject(NAMESPACE, "user"); usr.addProperty("id", user.getId()); usr.addProperty("username", user.getUsername()); usr.addProperty("email", user.getEmail()); usr.addProperty("password", user.getPassword()); usr.addProperty("salt", user.getSalt()); usr.addProperty("nome", user.getNome()); usr.addProperty("sobrenome", user.getSobrenome()); usr.addProperty("telefone", user.getTelefone()); usr.addProperty("cel_wts", user.getCel_wts()); usr.addProperty("rua", user.getRua()); usr.addProperty("numero", user.getNumero()); usr.addProperty("bairro", user.getBairro()); usr.addProperty("cidade", user.getCidade()); usr.addProperty("estado", user.getEstado()); usr.addProperty("pais", user.getPais()); usr.addProperty("cpf_cnpj", user.getCpf_cnpj()); usr.addProperty("empresa", user.getEmpresa()); usr.addProperty("cargo", user.getCargo()); insertUser.addSoapObject(usr); SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); envelope.setOutputSoapObject(insertUser); envelope.implicitTypes = true; HttpTransportSE http = new HttpTransportSE(URL); try { http.call("urn:" + INSERIR, envelope); SoapPrimitive resposta = (SoapPrimitive) envelope.getResponse(); return Boolean.parseBoolean(resposta.toString()); } catch (Exception e) { e.printStackTrace(); return false; } } } Compartilhar este post Link para o post Compartilhar em outros sites