E ai pessoal, estou tentando inserir um registro no banco SQL Server utilizando Ksoap2.
Segue meu código
String SOAP_ACTION = "http://tempuri.org/Inserir";
String METHOD_NAME = "Inserir";
String NAMESPACE = "http://tempuri.org/";
String URL = "http://meuIP/Service1.asmx";
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
//parametros caso necessite
request.addProperty("AvaliacaoEnfermagem", pesquisa.getAvaliacaoEnfermagem());
request.addProperty("AvaliacaoMedico", pesquisa.getAvaliacaoMedico());
request.addProperty("AvaliacaoMotorista", pesquisa.getAvaliacaoMotorista());
request.addProperty("AvaliacaoTransporte", pesquisa.getAvaliacaoTransporte());
request.addProperty("AvaliacaoMedico", pesquisa.getAvaliacaoMedico());
SimpleDateFormat formato = new SimpleDateFormat();
Date data = new Date();
request.addProperty("Data", formato.format(data));
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet=true;
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
try {
androidHttpTransport.call(SOAP_ACTION, envelope);
Object result = (Object)envelope.getResponse();
} catch (IOException e) {
e.getMessage();
} catch (XmlPullParserException e) {
e.printStackTrace();
}
Hora que chega em: androidHttpTransport.call(SOAP_ACTION, envelope);
está dando erro de timeout
Acho que estou errando na definição do endereço.
Alguem pode me ajudar?
Obrigado
Cole o código do seu WebService pra gente vê como tá… nem precisa colocar o conteúdo dos métodos… mas cole a classe… pq eu tbm estou com um problema… mas o meu ja da logo em NAMESPACE.
Aqui está o meu webservice
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
// [System.Web.Script.Services.ScriptService]
public class Service1 : System.Web.Services.WebService
{
[WebMethod]
public string Inserir(string numeroPaciente, string avaliacaoMotorista, string avaliacaoEnfermagem, string avaliacaoMedico,
string avaliacaoTransporte, DateTime data)
{
try
{
using(SqlConnection conexao = new SqlConnection(PesquisaWebService.Properties.Settings.Default.ConnectionString))
{
SqlCommand cmd = new SqlCommand("INSERT INTO Pesquisa (NumeroPaciente, AvaliacaoMotorista, AvaliacaoEnfermagem, " +
"AvaliacaoMedico, AvaliacaoTransporte, Data) VALUES (@NumeroPaciente, @AvaliacaoMotorista, @AvaliacaoEnfermagem, " +
"@AvaliacaoMedico, @AvaliacaoTransporte, @Data)", conexao);
cmd.Parameters.AddWithValue("@NumeroPaciente", numeroPaciente);
cmd.Parameters.AddWithValue("@AvaliacaoMotorista", avaliacaoMotorista);
cmd.Parameters.AddWithValue("@AvaliacaoEnfermagem", avaliacaoEnfermagem);
cmd.Parameters.AddWithValue("@AvaliacaoMedico", avaliacaoMedico);
cmd.Parameters.AddWithValue("@AvaliacaoTransporte", avaliacaoTransporte);
cmd.Parameters.AddWithValue("@Data", data);
conexao.Open();
if (cmd.ExecuteNonQuery() > 0)
return "Pesquisa salva com sucesso";
else
return "Falha ao salvar pesquisa";
}
}
catch (Exception e)
{
throw e;
}
}
}
o seu Ws vc criou em dotNet foi ?
Boa noite,
Cara, eu tava fazendo algo parecido e coloquei vários sysout no WS para verificar.
So uma coisa, caso tu esteja usando android maior que 2.3, seja no projeto ou o emulador mesmo, tu vai ter de criar uma AsyncTask ou algo parecido para rodar essa parte ae.
Boa sorte.