Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Felipe Dutra

[Resolvido] Erro no WS

Recommended Posts

Alguem pode me ajudar com esse meu projeto? O Android conecta no WS, utiliza ele, passa os dados tudo certo, aparece a mensagem de que os dados foram gravados com sucesso, porem quando vou verificar o DB não há nenhum cadastro.

Segue abaixo o código do WS, DB e o que eu tenho aqui comigo do Android....

 

 

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Web.Configuration;

namespace WsClientes
{
   /// <summary>
   /// Summary description for Service1
   /// </summary>
   [WebService(Namespace = "http://s2b.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 HelloWorld()
       {
           return "Android consumindo 'Hello World' WebService dotNet";
       }

       public SqlConnection getConexao()
       {
           String strConn = @"Data Source=FABIANO-PC;Initial Catalog=projeto;Integrated Security=True";
           SqlConnection _StrConn = new SqlConnection(strConn);
           return _StrConn;
       }


       //[WebMethod]
       //public string Cadastrar(string nome, string email, string tel, string login, string senha, string cpf, string cnpj, string rzSocial)
       //{

       //    SqlConnection _StrConn = getConexao();
       //    SqlCommand sqlCmd = new SqlCommand();

       //    sqlCmd.Connection = _StrConn;

       //    sqlCmd.CommandType = CommandType.Text;
       //    sqlCmd.CommandText = "INSERT INTO tbclientes ([clienteNome], [clienteEmail], [clienteTel], [clienteLogin], [clienteSenha], [clienteCpf], [clienteCnpj], [clienteRazaoSocial])" +
       //                          "VALUES ('" + nome + "','" + email + "','" + tel + "','" + login + "','" + senha + "','" + cpf + "','" + cnpj + "','" + rzSocial + "')";

       //    _StrConn.Open();

       //    int i = sqlCmd.ExecuteNonQuery();

       //    _StrConn.Close();

       //    if (i > 0)
       //    { 
       //        return "Cadastrado com sucesso";
       //    }
       //        return "Erro ao cadastrar";
       //    }

       #region "Autenticar Usuário"
       [WebMethod]
       public long autenticar(string login, string senha)
       {
           clsPessoa objPessoa = new clsPessoaFis();
           objPessoa.Login = login;
           objPessoa.Senha = senha;
           long cod = objPessoa.autenticar();
           return cod;
       }
       #endregion

       #region "Manipula Cliente Tipo Pessoa Física"
       [WebMethod]
       public void incluirPF(string nome, string email, string telefone, string login, string senha, string cpf)
       {
           clsPessoaFis objPessoa = new clsPessoaFis();
           //objPessoa.Nome = nome;
           //objPessoa.Email = email;
           //objPessoa.Telefone = telefone;
           //objPessoa.Login = login;
           //objPessoa.Senha = senha;
           //objPessoa.Cpf = cpf;
           objPessoa.incluir(nome, email,telefone,login,senha,cpf);
       }

       [WebMethod]
       public void alterarPF(string nome, string email, string telefone, string login, string senha, string cpf)
       {
           clsPessoaFis objPessoa = new clsPessoaFis();
           objPessoa.Nome = nome;
           objPessoa.Email = email;
           objPessoa.Telefone = telefone;
           objPessoa.Login = login;
           objPessoa.Senha = senha;
           objPessoa.Cpf = cpf;
           objPessoa.alterar();
       }

       [WebMethod]
       public DataSet obterPF(string cpf)
       {
           clsPessoaFis objPessoa = new clsPessoaFis();
           objPessoa.Cpf = cpf;
           return objPessoa.obter();
       }
       #endregion

       #region "Manipula Cliente Tipo Pessoa Jurídica"
       [WebMethod]
       public void incluirPJ(string nome, string email, string telefone, string login, string senha, string cnpj, string razaoSocial)
       {
           clsPessoaJur objPessoa = new clsPessoaJur();
           objPessoa.Nome = nome;
           objPessoa.Email = email;
           objPessoa.Telefone = telefone;
           objPessoa.Login = login;
           objPessoa.Senha = senha;
           objPessoa.Cnpj = cnpj;
           objPessoa.RazaoSocial = razaoSocial;
           objPessoa.incluir();
       }

       [WebMethod]
       public void alterarPJ(string nome, string email, string telefone, string login, string senha, string cnpj, string razaoSocial)
       {
           clsPessoaJur objPessoa = new clsPessoaJur();
           objPessoa.Nome = nome;
           objPessoa.Email = email;
           objPessoa.Telefone = telefone;
           objPessoa.Login = login;
           objPessoa.Senha = senha;
           objPessoa.Cnpj = cnpj;
           objPessoa.RazaoSocial = razaoSocial;
           objPessoa.alterar();
       }

       [WebMethod]
       public DataSet obterPJ(string cnpj)
       {
           clsPessoaJur objPessoa = new clsPessoaJur();
           objPessoa.Cnpj = cnpj;
           return objPessoa.obter();
       }
       #endregion

       #region "Exlui um Cliente"
       [WebMethod]
       public void excluir(int cod)
       {
           clsPessoa objPessoa = new clsPessoaFis();
           objPessoa.Cod = cod;
           objPessoa.excluir();
       }
       #endregion
   }
}

 

Este é o código do WS

__________________________________________________________________________________________________________________

 USE [projeto]
GO
/****** Object:  Table [dbo].[contatoProjeto]    Script Date: 05/04/2012 21:48:23 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[contatoProjeto](
[contatoId] [int] IDENTITY(1,1) NOT NULL,
[contatoNome] [varchar](100) NOT NULL,
[contatoEmail] [varchar](50) NOT NULL,
CONSTRAINT [PK_contatoProjeto] PRIMARY KEY CLUSTERED 
(
[contatoId] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO

Este é o DB em SQL

___________________________________________________________________________________________________________________

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="br.ws"
   android:versionCode="1"
   android:versionName="1.0" >

   <uses-sdk android:minSdkVersion="10" />
   <uses-permission android:name="android.permission.INTERNET"/>

   <application
       android:icon="@drawable/ic_launcher"
       android:label="@string/app_name" >
       <activity
           android:name=".WebService3Activity"
           android:label="@string/app_name" >
           <intent-filter>
               <action android:name="android.intent.action.MAIN" />

               <category android:name="android.intent.category.LAUNCHER" />
           </intent-filter>
       </activity>
   </application>

</manifest>

Este é oque eu tenho aqui do android.

___________________________________________________________________________________________________________________

Não sei se fiz o post corretamente, caso não tenha feito pesso desculpas, pois acabei de criar a conta aqui neste forúm. Vlw pessoal

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom Dia Amigo

 

Vou tentar ajudar com pouco que sei, eu mexo amis com Java porem deixa eu te perguntar, acredito que isso seja padrão em Ws mas tem a inovcação de port de execute? cao contrario seu Webservice não consegue receber o valor e manda Null e consome isso, to mandando exemplo em Java pra você ver se consegue entender

@WebService(serviceName = "Webservice")
public class Webservice{

 @WebService(serviceName = "execute_pttService", portName = "execute_pttPort", endpointInterface = "com.oracle.sca.soapservice.SistemasWebservice.webservice.entrada.ExecutePtt", targetNamespace = "http://oracle.com/sca/soapservice/SistemasWebservice/webservice/entrada", wsdlLocation = "WEB-INF/wsdl/SistemasWebservice/entradaWrapper.wsdl")
public class SistemaCliente {
   public void execute(Consulta request) {
       System.out.println("Parametro 1= " + request.getp1());
       System.out.println("Parametro 2= " + request.getp2());
       System.out.println("Parametro 1 = " + request.getp3());
       System.out.println("Parametro 4 = " + request.getp4());
       System.out.println("Valor recebido!!!");


       }
}

   /**
    * Sem esse metodo não é possível receber valores no webservice.
    */
   @WebMethod(operationName = "execute")
   public  Websercvice execute(@WebParam(name = "Webservice") Webservice WebserviceExecute) {
           System.out.println("PASSOU AQUI!!!!!!");//TODO write your implementation code here:
       return "Recebido valores!";
   }

 

 

Espero que esse exemplo ajude.

 

Sds

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Felipe,

 

Como está o código do clsPessoaFis? Esse é o cara responsável por gravar os dados na base, o WsClientes.Service1 apenas utiliza a clsPessoa e clsPessoaFis.

 

Além disso, parece que estão faltando alguns campos na sua tabela. O código de criação da tabela é a última versão que você tem?

 

Veja só:

 

[contatoId] [int] IDENTITY(1,1) NOT NULL,
[contatoNome] [varchar](100) NOT NULL,
[contatoEmail] [varchar](50) NOT NULL,

 

E sua entidade:

 

clsPessoaFis objPessoa = new clsPessoaFis();
objPessoa.Nome = nome;
objPessoa.Email = email;
objPessoa.Telefone = telefone;
objPessoa.Login = login;
objPessoa.Senha = senha;
objPessoa.Cpf = cpf;

 

Verificou também se os nomes estão corretos? Na tabela está contatoNome, sua entidade está como Nome. Poste o código de clsPessoa e clsPessoaFis, ficará mais fácil identificar o problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Felipe,

 

Como está o código do clsPessoaFis? Esse é o cara responsável por gravar os dados na base, o WsClientes.Service1 apenas utiliza a clsPessoa e clsPessoaFis.

 

Além disso, parece que estão faltando alguns campos na sua tabela. O código de criação da tabela é a última versão que você tem?

 

Veja só:

 

[contatoId] [int] IDENTITY(1,1) NOT NULL,
[contatoNome] [varchar](100) NOT NULL,
[contatoEmail] [varchar](50) NOT NULL,

 

E sua entidade:

 

clsPessoaFis objPessoa = new clsPessoaFis();
objPessoa.Nome = nome;
objPessoa.Email = email;
objPessoa.Telefone = telefone;
objPessoa.Login = login;
objPessoa.Senha = senha;
objPessoa.Cpf = cpf;

 

Verificou também se os nomes estão corretos? Na tabela está contatoNome, sua entidade está como Nome. Poste o código de clsPessoa e clsPessoaFis, ficará mais fácil identificar o problema.

 

Aki seguem os códigos

 

Classe pessoa.

using System;
using System.Collections.Generic;
using System.Collections;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;

namespace WsClientes
{
   public abstract class clsPessoa
   {
       private int _cod;
       private string _nome;
       private string _email;
       private string _telefone;
       private string _login;
       private string _senha;

       public int Cod
       {
           get { return _cod; }
           set { _cod = value; }
       }

       public string Nome
       {
           get { return _nome; }
           set { _nome = value; }
       }

       public string Email
       {
           get { return _email; }
           set { _email = value; }
       }

       public string Telefone
       {
           get { return _telefone; }
           set { _telefone = value; }
       }

       public string Login
       {
           get { return _login; }
           set { _login = value; }
       }

       public string Senha
       {
           get { return _senha; }
           set { _senha = value; }
       }

       //public class clsPessoa
       //{
       //}

       //public abstract void incluir();

       public abstract void alterar();

       public abstract DataSet obter();

       public virtual long autenticar()
       {

           String strConn = @"Data Source=FABIANO-PC;Initial Catalog=dbclientes;Integrated Security=True";
           SqlConnection _StrConn = new SqlConnection(strConn);
           String _Sql = string.Empty;


           _Sql = "SELECT clienteId FROM tbclientes WHERE clienteLogin = @clienteLogin AND clienteSenha = @clienteSenha";

           SqlParameter[] param = new SqlParameter[2];
           param[0] = new SqlParameter("@clienteLogin", this.Login);
           param[1] = new SqlParameter("@clienteSenha", this.Senha);

           SqlCommand sqlCmd = new SqlCommand();
           sqlCmd.Parameters.Add(param[0]);
           sqlCmd.Parameters.Add(param[1]);

           long ret = 0;
           try
           {
               _StrConn.Open();
               sqlCmd.Connection = _StrConn;
               sqlCmd.CommandType = CommandType.Text;
               sqlCmd.CommandText = _Sql.ToString();
               ret = Convert.ToInt64(sqlCmd.ExecuteScalar());
           }
           catch (SqlException ex)
           {
               throw new Exception("ERRO DE BANCO DE DADOS: " + ex.Message.ToString());
           }
           catch (Exception ex)
           {
               throw new Exception("ERRO: " + ex.Message.ToString());
           }
           finally
           {
               sqlCmd.Dispose();
               _StrConn.Close();
               _StrConn.Dispose();
           }
           return ret;
       }

       public virtual void excluir()
       {
           String strConn = @"Data Source=FABIANO-PC;Initial Catalog=dbclientes;Integrated Security=True";
           SqlConnection _StrConn = new SqlConnection(strConn);
           String _Sql = string.Empty;

           _Sql = "DELETE FROM tbclientes WHERE clienteId = @clienteId";
           SqlCommand sqlCmd = new SqlCommand();
           SqlParameter sqlParm = new SqlParameter("@clienteId", this.Cod);
           sqlCmd.Parameters.Add(sqlParm);

           try
           {
               _StrConn.Open();
               sqlCmd.Connection = _StrConn;
               sqlCmd.CommandType = CommandType.Text;
               sqlCmd.CommandText = _Sql.ToString();
               sqlCmd.ExecuteNonQuery();
           }
           catch (SqlException ex)
           {
               throw new Exception("ERRO DE BANCO DE DADOS: " + ex.Message.ToString());
           }
           catch (Exception ex)
           {
               throw new Exception("ERRO: " + ex.Message.ToString());
           }
           finally
           {
               _StrConn.Close();
               _StrConn.Dispose();
               sqlCmd.Dispose();
           }

       }
   }
}

 

Classe pessoa física

using System;
using System.Collections.Generic;
using System.Collections;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;

namespace WsClientes
{
   public class clsPessoaFis : clsPessoa
   {
       private string _cpf;

       #region "Encapsulando os dados"
       public string Cpf
       {
           get { return _cpf; }
           set { _cpf = value; }
       }
       #endregion

       #region "Herdando os dados da class Mãe clsPessoa"
       public clsPessoaFis()
       {
           this.Cod = 0;
           this.Email = "";
           this.Telefone = "";
           this.Login = "";
           this.Senha = "";
           this.Cpf = "";
       }
       #endregion

       #region "Definindo as propridades da class e sobrepondo os da class mãe"
       public clsPessoaFis(int cod, string nome, string email, string telefone, string login, string senha, string cpf)
       {
           this.Cod = cod;
           this.Nome = nome;
           this.Email = email;
           this.Telefone = telefone;
           this.Login = login;
           this.Senha = senha;
           this.Cpf = cpf;
       }
       #endregion

       #region"Manipulação de Dados de Pessoa Física"
       public void incluir(
           string nome,
           string email,
           string tel,
           string login,
           string senha,
           string cpf)
       {

           String strConn = @"Data Source=FABIANO-PC;Initial Catalog=dbclientes;Integrated Security=True";
           SqlConnection _StrConn = new SqlConnection(strConn);
           String _Sql = string.Empty;

           _Sql = "INSERT INTO tbclientes ([clienteNome], [clienteEmail], [clienteTel], [clienteLogin], [clienteSenha], [clienteCpf])" +
                                         "VALUES (@clienteNome, @clienteEmail, @clienteTel, @clienteLogin, @clienteSenha, @clienteCpf)";


           SqlCommand sqlCmd = new SqlCommand();

           sqlCmd.Parameters.Add(new SqlParameter("@clienteNome", nome));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteEmail", email));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteTel", tel));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteLogin", login));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteSenha", senha));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteCpf", cpf));

           //sqlCmd.Parameters.Add(new SqlParameter("@clienteNome", this.Nome));
           //sqlCmd.Parameters.Add(new SqlParameter("@clienteEmail", this.Email));
           //sqlCmd.Parameters.Add(new SqlParameter("@clienteTel", this.Telefone));
           //sqlCmd.Parameters.Add(new SqlParameter("@clienteLogin", this.Login));
           //sqlCmd.Parameters.Add(new SqlParameter("@clienteSenha", this.Senha));
           //sqlCmd.Parameters.Add(new SqlParameter("@clienteCpf",this.Cpf));

           try
           {
               _StrConn.Open();
               sqlCmd.Connection = _StrConn;
               sqlCmd.CommandType = CommandType.Text;
               sqlCmd.CommandText = _Sql.ToString();
               sqlCmd.ExecuteNonQuery();
           }
           catch (SqlException ex)
           {
               throw new Exception("ERRO DE BANCO DE DADOS: " + ex.Message.ToString());
           }
           catch (Exception ex)
           {
               throw new Exception("ERRO: " + ex.Message.ToString());
           }
           finally
           {
               _StrConn.Close();
               _StrConn.Dispose();
               sqlCmd.Dispose();
           }
       }

       public override void alterar()
       {
           String strConn = @"Data Source=FABIANO-PC;Initial Catalog=dbclientes;Integrated Security=True";
           SqlConnection _StrConn = new SqlConnection(strConn);
           String _Sql = string.Empty;

           _Sql = "UPDATE tbclientes SET clienteNome = @clienteNome, clienteEmail = @clienteEmail, clienteTel = @clienteTel, clienteLogin = @clienteLogin, clienteSenha = @clienteSenha, clienteCpf = @clienteCpf WHERE clienteCpf = @clienteCpf";

           SqlCommand sqlCmd = new SqlCommand();

           sqlCmd.Parameters.Add(new SqlParameter("@clienteNome", this.Nome));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteEmail", this.Email));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteTel", this.Telefone));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteLogin", this.Login));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteSenha", this.Senha));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteCpf", this.Cpf));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteId", this.Cod));

           try
           {
               _StrConn.Open();
               sqlCmd.Connection = _StrConn;
               sqlCmd.CommandType = CommandType.Text;
               sqlCmd.CommandText = _Sql.ToString();
               sqlCmd.ExecuteNonQuery();
           }
           catch (SqlException ex)
           {
               throw new Exception("ERRO DE BANCO DE DADOS: " + ex.Message.ToString());
           }
           catch (Exception ex)
           {
               throw new Exception("ERRO: " + ex.Message.ToString());
           }
           finally
           {
               _StrConn.Close();
               _StrConn.Dispose();
               sqlCmd.Dispose();
           }
       }

       public override DataSet obter()
       {
           String strConn = @"Data Source=FABIANO-PC;Initial Catalog=dbclientes;Integrated Security=True";
           SqlConnection _StrConn = new SqlConnection(strConn);
           String _Sql = string.Empty;

           _Sql = "SELECT clienteId, clienteNome, clienteEmail, clienteTel, clienteLogin, clienteSenha, clienteCpf FROM tbclientes WHERE clienteCpf = @clienteCpf";

           SqlCommand sqlCmd = new SqlCommand();

           SqlParameter sqlParm = new SqlParameter("@clienteCpf", this.Cpf);
           sqlCmd.Parameters.Add(sqlParm);

           try
           {
               _StrConn.Open();
               sqlCmd.Connection = _StrConn;
               sqlCmd.CommandText = _Sql.ToString();
               sqlCmd.CommandType = CommandType.Text;

               SqlDataAdapter da = new SqlDataAdapter(sqlCmd);
               DataSet ds = new DataSet();
               da.Fill(ds);
               return ds;
           }
           catch (SqlException ex)
           {
               throw new Exception("ERRO De BANCO DE DADOS: " + ex.Message.ToString());
           }
           catch (Exception ex)
           {
               throw new Exception("ERRO: " + ex.Message.ToString());
           }
           finally
           {
               _StrConn.Close();
               _StrConn.Dispose();
               sqlCmd.Dispose();
           }
       }
       #endregion
   }
}

 

Classe pessoa jurídica

using System;
using System.Collections.Generic;
using System.Collections;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;

namespace WsClientes
{
   public class clsPessoaJur : clsPessoa
   {
       private string _cnpj;
       private string _razaoSocial;

       #region "Encapsulando as propriedades";
       public string Cnpj
       {
           get { return _cnpj; }
           set { _cnpj = value; }
       }

       public string RazaoSocial
       {
           get { return _razaoSocial; }
           set { _razaoSocial = value; }
       }
       #endregion

       #region "Herdando os dados da class mãe"
       public clsPessoaJur()
       {
           this.Cod = 0;
           this.Email = "";
           this.Telefone = "";
           this.Login = "";
           this.Senha = "";
           this.Cnpj = "";
           this.RazaoSocial = "";
       }
       #endregion

       #region "Definindo as propridades da class e sobrepondo os da class mãe"
       public clsPessoaJur(int cod, string nome, string email, string telefone, string login, string senha, string cnpj, string razaoSocial)
       {
           this.Cod = cod;
           this.Nome = nome;
           this.Email = email;
           this.Telefone = telefone;
           this.Login = login;
           this.Senha = senha;
           this.Cnpj = cnpj;
           this.RazaoSocial = razaoSocial;
       }
       #endregion

       #region"Manipulação de Dados de Pessoa Jurídica"
       public void incluir()
       {
           String strConn = @"Data Source=FABIANO-PC;Initial Catalog=dbclientes;Integrated Security=True";
           SqlConnection _StrConn = new SqlConnection(strConn);
           String _Sql = string.Empty;

           _Sql = "INSERT INTO tbclientes ([clienteNome], [clienteEmail], [clienteTel], [clienteLogin], [clienteSenha], [clienteCnpj], [clienteRazaoSocial])" +
                                         "VALUES (@clienteNome, @clienteEmail, @clienteTel, @clienteLogin, @clienteSenha, @clienteCnpj, @clienteRazaoSocial)";


           SqlCommand sqlCmd = new SqlCommand();

           sqlCmd.Parameters.Add(new SqlParameter("@clienteNome", this.Nome));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteEmail", this.Email));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteTel", this.Telefone));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteLogin", this.Login));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteSenha", this.Senha));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteCnpj", this.Cnpj));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteRazaoSocial", this.RazaoSocial));


           try
           {
               _StrConn.Open();
               sqlCmd.Connection = _StrConn;
               sqlCmd.CommandType = CommandType.Text;
               sqlCmd.CommandText = _Sql.ToString();
               sqlCmd.ExecuteNonQuery();
           }
           catch (SqlException ex)
           {
               throw new Exception("ERRO DE BANCO DE DADOS: " + ex.Message.ToString());
           }
           catch (Exception ex)
           {
               throw new Exception("ERRO: " + ex.Message.ToString());
           }
           finally
           {
               _StrConn.Close();
               _StrConn.Dispose();
               sqlCmd.Dispose();
           }
       }

       public override void alterar()
       {
           String strConn = @"Data Source=FABIANO-PC;Initial Catalog=dbclientes;Integrated Security=True";
           SqlConnection _StrConn = new SqlConnection(strConn);
           String _Sql = string.Empty;

           _Sql = "UPDATE tbclientes SET clienteNome = @clienteNome, clienteEmail = @clienteEmail, clienteTel = @clienteTel, clienteLogin = @clienteLogin, clienteSenha = @clienteSenha, clienteCnpj = @clienteCnpj, clienteRazaoSocial = @clienteRazaoSocial  WHERE clienteCnpj = @clienteCnpj";

           SqlCommand sqlCmd = new SqlCommand();

           sqlCmd.Parameters.Add(new SqlParameter("@clienteNome", this.Nome));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteEmail", this.Email));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteTel", this.Telefone));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteLogin", this.Login));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteSenha", this.Senha));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteCnpj", this.Cnpj));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteRazaoSocial", this.RazaoSocial));
           sqlCmd.Parameters.Add(new SqlParameter("@clienteId", this.Cod));

           try
           {
               _StrConn.Open();
               sqlCmd.Connection = _StrConn;
               sqlCmd.CommandType = CommandType.Text;
               sqlCmd.CommandText = _Sql.ToString();
               sqlCmd.ExecuteNonQuery();
           }
           catch (SqlException ex)
           {
               throw new Exception("ERRO DE BANCO DE DADOS: " + ex.Message.ToString());
           }
           catch (Exception ex)
           {
               throw new Exception("ERRO: " + ex.Message.ToString());
           }
           finally
           {
               _StrConn.Close();
               _StrConn.Dispose();
               sqlCmd.Dispose();
           }
       }

       public override DataSet obter()
       {
           String strConn = @"Data Source=FABIANO-PC;Initial Catalog=dbclientes;Integrated Security=True";
           SqlConnection _StrConn = new SqlConnection(strConn);
           String _Sql = string.Empty;

           _Sql = "SELECT clienteId, clienteNome, clienteEmail, clienteTel, clienteLogin, clienteSenha, clienteCnpj, clienteRazaoSocial FROM tbclientes WHERE clienteCnpj = @clienteCnpj";

           SqlCommand sqlCmd = new SqlCommand();

           SqlParameter sqlParm = new SqlParameter("@clienteCnpj", this.Cnpj);
           sqlCmd.Parameters.Add(sqlParm);

           try
           {
               _StrConn.Open();
               sqlCmd.Connection = _StrConn;
               sqlCmd.CommandText = _Sql.ToString();
               sqlCmd.CommandType = CommandType.Text;

               SqlDataAdapter da = new SqlDataAdapter(sqlCmd);
               DataSet ds = new DataSet();
               da.Fill(ds);
               return ds;
           }
           catch (SqlException ex)
           {
               throw new Exception("ERRO De BANCO DE DADOS: " + ex.Message.ToString());
           }
           catch (Exception ex)
           {
               throw new Exception("ERRO: " + ex.Message.ToString());
           }
           finally
           {
               _StrConn.Close();
               _StrConn.Dispose();
               sqlCmd.Dispose();
           }
       }
       #endregion
   }
}

 

..... Até onde eu verifiquei os nomes dos campos e tal estão todos ok, o único problema mesmo que estou tendo é o de quando eu mando gravar os dados, emite a mensagem de que foi gravado porem no DB não aparece nada =/... Vlw eim

Compartilhar este post


Link para o post
Compartilhar em outros sites

..... Até onde eu verifiquei os nomes dos campos e tal estão todos ok, o único problema mesmo que estou tendo é o de quando eu mando gravar os dados, emite a mensagem de que foi gravado porem no DB não aparece nada =/... Vlw eim

 

Felipe, testei apenas o webservice aqui, e ele está okay. Não tenho como testar a base, pois não tenho SQL Server aqui (Linux...), mas faça o seguinte teste, fora do webservice, chamando diretamente:

 

clsPessoaFis objPessoa = new clsPessoaFis();
objPessoa.incluir("Fulano","email@dominio.com","99999999","login","senha","111.111.111-11");

 

O que ocorre? O registro é inserido na base?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Felipe, testei apenas o webservice aqui, e ele está okay. Não tenho como testar a base, pois não tenho SQL Server aqui (Linux...), mas faça o seguinte teste, fora do webservice, chamando diretamente:

 

clsPessoaFis objPessoa = new clsPessoaFis();
objPessoa.incluir("Fulano","email@dominio.com","99999999","login","senha","111.111.111-11");

 

O que ocorre? O registro é inserido na base?

 

 

 

Intão pelo que pude ver para realizar o teste do modo como você me aconselhou não adianta pois o método é outro, no android a biblioteca ksoap2 passa parametro por parametro. Segue abaixo o código completo do android que acabei de conseguir.

package br.ws;



import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;


import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.PropertyInfo;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapPrimitive;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;



import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;


public class WebService3Activity extends Activity {
   /** Called when the activity is first created. */
  //private  String SOAP_ACTION = "";
  //private  String METHOD_NAME = "";
  //private  String NAMESPACE = "";
   private static final String URL = "http://192.168.55.235/Service1.asmx";
   //private static final String URL = "http://aspspider.ws/fabianoacsx/Service1.asmx";
   TextView tv;
   Button btHelloWorld, btIncluir, btObterPF, btVaiObterPF, btIncluirPJ, btChamaIncluirPJ;
   EditText etNome, etEmail, etTelefone, etLogin, etSenha, etCpf, etObterPF;
   EditText etNomePJ, etEmailPJ, etTelefonePJ, etLoginPJ, etSenhaPJ, etCnpjPJ, etRZPJ, etObterPFPJ;
   ListView listaObter;
   @Override
   public void onCreate(Bundle savedInstanceState) {
   	Log.d("ERRO", "entrou no ONcreate");
       super.onCreate(savedInstanceState);
       setContentView(R.layout.main);
       tv=(TextView)findViewById(R.id.textView1);

       btHelloWorld = (Button) findViewById(R.id.btHelloWorld);
       btHelloWorld.setOnClickListener(new View.OnClickListener() {

		public void onClick(View v) {
			hello_world();

		}
	});

       btChamaIncluirPJ = (Button)findViewById(R.id.btChamaIncluirPJ);
       btChamaIncluirPJ.setOnClickListener(new View.OnClickListener() {

		public void onClick(View v) {
			chama_incluirPJ();

		}
	});

   	etNome = (EditText)findViewById(R.id.etNomeIncluir);
       etEmail = (EditText)findViewById(R.id.etEmailincluir);
       etTelefone = (EditText)findViewById(R.id.etTelefoneIncluir);
       etLogin = (EditText)findViewById(R.id.etLoginIncluir);
       etSenha = (EditText)findViewById(R.id.etSenhaIncluir);
       etCpf = (EditText)findViewById(R.id.etCpfIncluir);

   	etNomePJ = (EditText)findViewById(R.id.etLoginIncluirPJ);
       etEmailPJ = (EditText)findViewById(R.id.etEmailincluirPJ);
       etTelefonePJ = (EditText)findViewById(R.id.etTelefoneIncluirPJ);
       etLoginPJ = (EditText)findViewById(R.id.etLoginIncluirPJ);
       etSenhaPJ = (EditText)findViewById(R.id.etSenhaIncluirPJ);
       etCnpjPJ = (EditText)findViewById(R.id.etCnpjIncluirPJ);
       etRZPJ = (EditText)findViewById(R.id.etRZjIncluirPJ);



       listaObter = (ListView)findViewById(R.id.listViewObter);

       etObterPF = (EditText)findViewById(R.id.etCpfObertPF);

       btVaiObterPF = (Button)findViewById(R.id.btVaiObterPF);
       btVaiObterPF.setOnClickListener(new View.OnClickListener() {

		public void onClick(View v) {
			chama_obterPF();

		}
	});




       btIncluir = (Button) findViewById(R.id.btIncluir);
       btIncluir.setOnClickListener(new View.OnClickListener() {

		public void onClick(View v) {
			incluirPF();

		}
	});


   }    

   public void chama_obterPF()
   {
   	setContentView(R.layout.obterpf);
   	btObterPF = (Button)findViewById(R.id.btObterPF);
       btObterPF.setOnClickListener(new View.OnClickListener() {

		public void onClick(View v) {
			obterPF();

		}
	});
   }

   public void chama_incluirPJ()
   {
   	setContentView(R.layout.incluirpj);
   	btIncluirPJ = (Button)findViewById(R.id.btIncluirPJ);
       btIncluirPJ.setOnClickListener(new View.OnClickListener() {

		public void onClick(View v) {
			incluirPJ();
			mensagemAlert("Aviso", "Iniciou o Incluir");

		}
	});
   }



   public void obterPF()
   {
   	try {
   		String SOAP_ACTION = "http://s2b.org/obterPF";
   		String METHOD_NAME = "obterPF";
   		String NAMESPACE = "http://s2b.org/obterPF";

   		String obertPFCpf = etObterPF.getText().toString();

           SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);


           request.addProperty("cpf", obertPFCpf);

           SoapSerializationEnvelope envelope = new 

           SoapSerializationEnvelope(SoapEnvelope.VER11);
           envelope.dotNet=true;
           envelope.setOutputSoapObject(request);

           HttpTransportSE androidHttpTransport = new 	HttpTransportSE(URL);

           androidHttpTransport.call(SOAP_ACTION, envelope);

         //  SoapPrimitive s = (SoapPrimitive) envelope.getResponse(); // Transformo a resposta em um SoapPrimitive;
           //String results = s.toString();



           mensagemAlert("Aviso", "Operação com Sucesso!");
           //tv.setText( ""+results);
       }
       catch (Exception e) {
       	mensagemAlert("Aviso", ""+e.getMessage());
       	//tv.setText(e.getMessage());
       }
   }


   public void incluirPJ()
   {
   	try {

   		String nomePJ = etNomePJ.getText().toString();
           String emailPJ = etEmailPJ.getText().toString();
           String telefonePJ = etTelefonePJ.getText().toString();
           String loginPJ = etLoginPJ.getText().toString();
           String senhaPJ = etSenhaPJ.getText().toString();
           String cnpjPJ = etCnpjPJ.getText().toString();
           String RZPJ = etRZPJ.getText().toString();


           SoapObject requisicao = new SoapObject("http://s2b.org/incluirPJ", "incluirPJ"); // Cria um SoapObject passando os parâmetros;

           PropertyInfo pi = new PropertyInfo();
           pi.setName("nome");
           pi.setValue(nomePJ);
           pi.setType("String");
//            pi[1].setName("email");
//            pi[1].setValue(emailPJ);
//            pi[1].setType("String");
//            pi[2].setName("telefone");
//            pi[2].setValue(telefonePJ);
//            pi[2].setType("String");
//            pi[3].setName("login");
//            pi[3].setValue(loginPJ);
//            pi[3].setType("String");
//            pi[4].setName("senha");
//            pi[4].setValue(senhaPJ);
//            pi[4].setType("String");
//            pi[5].setName("cnpj");
//            pi[5].setValue(cnpjPJ);
//            pi[5].setType("String");

           requisicao.addProperty(pi);
//            requisicao.addProperty(pi[1]);
//            requisicao.addProperty(pi[2]);
//            requisicao.addProperty(pi[3]);
//            requisicao.addProperty(pi[4]);
//            requisicao.addProperty(pi[5]);

           requisicao.addProperty("nome", nomePJ); // Adiciona o valor do primeiro parâmetro do web service;
           requisicao.addProperty("email", emailPJ);
           requisicao.addProperty("telefone", telefonePJ);// Adiciona o valor do segundo parâmetro do web service;
           requisicao.addProperty("login", loginPJ);
           requisicao.addProperty("senha", senhaPJ);
           requisicao.addProperty("cnpj", cnpjPJ);
           requisicao.addProperty("razao", RZPJ);




           SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); // Cria o envelope;
           envelope.dotNet = true; // Especifica que o web service utilizado é um .NET;
           envelope.setOutputSoapObject(requisicao); // Envia a requisição ao web service;

           HttpTransportSE http = new HttpTransportSE(URL); // Cria a comunicação com o local do web service;
http.call("http://s2b.org/incluirPJ", envelope); // Chama o web service passando o nome do NAMESPACE da aplicação ASP.NET mais o nome do metódo e o envelope;

          // SoapPrimitive s = (SoapPrimitive) envelope.getResponse(); // Transformo a resposta em um SoapPrimitive;
           //String soma = s.toString(); // Converto a resposta em uma String;

           //texto.setText("Soma = " + soma); // Adiciono o resultado ao TextView criado e exibo na tela;

       } catch (Exception e) {
           e.printStackTrace();
       }
   }

   public void hello_world()
   {
       try {
           SoapObject request = new SoapObject("http://s2b.org/HelloWorld", "HelloWorld");

           SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
           envelope.dotNet=true;
           envelope.setOutputSoapObject(request);

           HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
           androidHttpTransport.call("http://s2b.org/HelloWorld", envelope);

           SoapPrimitive s = (SoapPrimitive) envelope.getResponse(); // Transformo a resposta em um SoapPrimitive;
           String results = s.toString();

           mensagemAlert("Aviso", ""+results);

       }
       catch (Exception e) {
       	mensagemAlert("Aviso", ""+e.getMessage());
      }
   }   


   public void incluirPF()//String nome, String email, String telefone, String login, String senha, String cpf
   {


       	String SOAP_ACTION1 = "http://s2b.org/incluirPF";
   		String METHOD_NAME1 = "incluirPF";
   		String NAMESPACE1 = "http://s2b.org/incluirPF";

   		try {
           String nomeIncluir = etNome.getText().toString();
           String emailIncluir = etEmail.getText().toString();
           String telefoneIncluir = etTelefone.getText().toString();
           String loginIncluir = etLogin.getText().toString();
           String senhaIncluir = etSenha.getText().toString();
           String cpfIncluir = etCpf.getText().toString();



           SoapObject request = new SoapObject(NAMESPACE1, METHOD_NAME1);

           request.addProperty("nome", nomeIncluir);
           request.addProperty("email", emailIncluir);
           request.addProperty("telefone", telefoneIncluir);
           request.addProperty("login", loginIncluir);
           request.addProperty("senha", senhaIncluir);
           request.addProperty("cpf", cpfIncluir);

           SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
           envelope.dotNet=true;
           envelope.setOutputSoapObject(request);

           HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
           androidHttpTransport.debug = true;            
           androidHttpTransport.call("http://s2b.org/incluirPF", envelope);


         //  SoapPrimitive s = (SoapPrimitive) envelope.getResponse(); // Transformo a resposta em um SoapPrimitive;
         //  String results = s.toString();

           mensagemAlert("Aviso", "Gravou com sucesso!");
           //tv.setText( ""+results);
       }
       catch (Exception e) {
       	mensagemAlert("Erro", ""+e);
       	//tv.setText(e.getMessage());
       }
   }

   public void mensagemAlert(String Titulo, String texto)
{
	AlertDialog.Builder mensagemErro = new AlertDialog.Builder(WebService3Activity.this);
	mensagemErro.setTitle(Titulo);
	mensagemErro.setMessage(texto);
	mensagemErro.setNegativeButton("Ok", null);
	mensagemErro.show();
}
}

 

Desculpe a demora para responder mas eu estava na faculdade. Valeu pela ajuda...

 

A só para destacar, esse código foi construído pela IDE Eclipse

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara faz o seguinte,

 

consegue transformar para String e pegar o que gera de XML ou ao menos salvar em um arquivo?

ai você Usa o SoapUI, conecta na webservice e ve se Consegue ler o Xml por la.

 

pode ser algum problema de escrutura do XML

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara faz o seguinte,

 

consegue transformar para String e pegar o que gera de XML ou ao menos salvar em um arquivo?

ai você Usa o SoapUI, conecta na webservice e ve se Consegue ler o Xml por la.

 

pode ser algum problema de escrutura do XML

 

Valeu pela resposta mano, ja consegui resolver aqui. Precisei troca o HTTP request e umas outras coisas aqui, valeu pela preocupação :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde

 

imaginei que fosse isso, geralmente quando errado de nao gravar é por que tem algo no Xml, rs

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.