J2ME - Execução no Ceular

Olá Pessoal, bom dia.

Estou desenvolvendo umas aplicações em J2ME que acessam um servidor remoto e este retorna uma mensagem qualquer (só para teste).

Comecei usando socket, no emulador funcionou perfeitamente e quando passei a aplicação para o celular não deu certo. Depois vi em num fórum que não existe conexão socket para celular que possuem o cldc 1.0 (não sei se é verdade, gostaria de saber).

Então, fiz outra aplicação com conexão HTTP que acessa uma página JSP e esta envia uma mensagem de volta para o celular. Aconteceu a mesma coisa, no emulador funcionou 100% e quando passei para o celular também não deu certo. Mas dessa vez não deu erro como no socket…ele conectou a pagina…mostrou os bytes enviados…mas a mensagem de retorno não apareceu.

Fiz outra aplicação usando Servlet. E também não tive sucesso. Como sempre no emulador funcionou…e quando passei para o celular aconteceu como no exemplo do http (enviava os bytes e a mensagem de retorno do servidor não aparecia no celular)

Estou achando que o problema não é na aplicação e sim no celular. Gostaria de saber se tem alguma configuração e tals. Já mexi nas sessões web (alterei de tudo quanto é forma e também não deu certo)

Estou usando um Motorola V3 e um Morola V185 (ambos cldc 1.0 e MIDP 2.0)

Ambos os celulares mostram os mesmos erros.

Se alguém puder me ajudar.

Obrigado !!!

Ola td blz, eu tbm estou iniciando com Java e tbm com J2ME eu fiz um teste com um aplicativo onde eu forneco um CPF e ele faz uma conexao HTTP ao meu servidor e retorna o nome da pessoa a qual o CPF pertence e ta funcionando direitinho.

Meu celular e um Nokia 6100 da BrasilTelecom

Obs.:No servidor eu uso PHP para responder para o aplicativo java.

qualquer se puder ajudar da uma alo meu E-Mail aroldocf@yahoo.com.br

[quote=aroldocf]Ola td blz, eu tbm estou iniciando com Java e tbm com J2ME eu fiz um teste com um aplicativo onde eu forneco um CPF e ele faz uma conexao HTTP ao meu servidor e retorna o nome da pessoa a qual o CPF pertence e ta funcionando direitinho.

Meu celular e um Nokia 6100 da BrasilTelecom

Obs.:No servidor eu uso PHP para responder para o aplicativo java.

qualquer se puder ajudar da uma alo meu E-Mail aroldocf@yahoo.com.br[/quote]

Olá Aroldo, obrigado por responder.
Vou fazer o seguinte: Eu poderia te mandar o meu arquivo .jar para você? Aí você executaria em seu celular para ver se dá certo. Pois o servidor fica on line direto.

Valeu !!!

Beleza kra manda sim com as intrucoes do que vc quer que eu teste para vc e eu faco o teste para vc.

Se vc souber de alguma classe que implemente float e Real para CLDC 1.0 me manda ou da um alo, por favor.

Abracos t+

Ola Thiago

Olha eu nao fiz nehuma configuracao no meu celular OBS ( ele usa o .jar e nao o .jad ) eu sempre disponibilizo os dois para download + ele pega .jar

Nao esquenta com o esquema dos creditos… kra… esses teste sao importantes para nos todos e para a comunidade.

Manda ai o que vc precisa e os teste que vc quer e se funcionar no meu Nokia 6100 ta na fita kra.

Grande abraco t+

Fala Aroldo !!

Então cara, consegui fazer rodar. hehe…apanhei bastante mas consegui. Eu estava testando com o chip da tim da empresa que trabalho.
Mas eu estava em casa e coloquei creditos no meu “Claro” e comecei a fazer os testes. A princípio não funcionou também…mas dei uma olhada na sessões web e alterei o gprs para claro.com.br (estava wap.claro.com) e passou a funcionar. Mas agora deu um outro problema que eu estou tentando resolver, eu fiz um exemplo parecido com o seu, mas no meu eu digito o numero de um telefone e ele me traz o nome da pessoa…quando eu envio 1 vez, ele manda para o link ex: http://xxx.xxx.xxx.xxx:8084/Servlet/ConsultaRamal depois ele complementa com o parâmetro que estou mandando e o link fica: http://xxx.xxx.xxx.xxx:8084/Servlet/ConsultaRamal?numero=5510
E depois ele irá retornar o nome da pessoa que tem esse ramal. Mas depois da 2 vez, ele cria uma sessão e o link fica como:
http://xxx.xxx.xxx.xxx:8084/Servlet/ConsultaRamal;jsessionid=CCB518CC5EE587EB362F70E72A157B89?numero=5514

E depois que aparece a sessão o resultado não volta mais…hehehe…

Estou fazendo com servlet.

Obrigado por responder…abraços !!! t++

Ola Thiago!. Blz?

Oh! No meu exemplo isso nao acontece nao kra, eu pso fazer qntas consultas eu quiser. Mais o servidor que me responde eh Apache+PHP+MYSQL.

Pergunta tola mais vai la! Vc lembrou-se de fechar a conexao?

O Codigo que eu uso eh o seguinte:

void buscaGET() throws IOException {

    HttpConnection connection = null;
    InputStream is = null;
    OutputStream os = null;
    StringBuffer stringBuffer = new StringBuffer();
    String url = "http://127.0.0.1/buscaGET.php?CPF=" + textField1.getString();
    
    try {
      connection = (HttpConnection)Connector.open(url);
      connection.setRequestMethod(HttpConnection.GET);
      connection.setRequestProperty("IF-Modified-Since","20 Jan 2001 16:19:14 GMT");
      connection.setRequestProperty("User-Agent","Profile/MIDP-2.0 Confirguration/CLDC-1.0");
      connection.setRequestProperty("Content-Language", "en-CA");
      connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
      os = connection.openOutputStream();
      is = connection.openDataInputStream();
      int ch;
      while ((ch = is.read()) != -1) {
        stringBuffer.append((char) ch);
      }
      stringItem1.setText(stringBuffer.toString());
    } finally {
       if(is!= null) {
          is.close();
       }
       if(os != null) {
          os.close();
       }
       if(connection != null) {
          connection.close();
       }
    }
    
    display = Display.getDisplay(this);
}        

Lembrando somente que este codigo nao eh de minha autoria eu so implementei minima alteracao para o que eu precisava.

Este codigo eu peguei na InterNet so peco desculpas ao Author pq nao me lembro do seu nome.

Espero ter contribuido. t++

Fala Aroldo…consegui arrumar de novo…mas eu tive que tirar as sessoes…
Então, essa parte que vc postou

[code]

finally {
if(is!= null) {
is.close();
}
if(os != null) {
os.close();
}
if(connection != null) {
connection.close();
}
} [/code]

O meu tambem tem, só que nesta parte da rotina, ele esta rodando dentro de uma Thread e não dava para eu colocar o finally (pois dava uma mensagem de erro e tals), tirei o finally e coloquei o catch, nao sei se era por isso que a mensagem não voltava…

Para resolver o meu problema:

Neste trecho:


      String URLwithID = http.getHeaderField("Custom-newURL");
        //    if(URLwithID != null)
         //        url = URLwithID;

Ele joga para a variavel URLwithID o numero da sessão que esta sendo usada e depois ele complementa na url principal.

Bom, eu comentei essa parte que ele incorpora a sessao para a url.
e ele fica só com o link: http://xxx.xxx.xxx.xxx:8084/Servlet/ConsultaRamal?numero=5510
E deu certo, agora posso fazer quantas pesquisas eu quiser…mas o unico problema é que não tem mais sessão, pois eu acho que com a sessão fica mais seguro e tals…nao sei tb…hehe…mas acho que fica…
O bom é que eu fiz uma pancada de consulta e o custo foi de apenas 0,06 hehehee…

Muito obrigado Aroldo…abraços !!! t++

vou começar a ver esse tipo de aplicação aqui tb, qual emulador vc está usando?

[]s

Estou usando o netbeans 5.0 com o pacote mobility pack 5.0

Ola Maquina_V8, td bem?

Tbem desenvolvi uma aplicação em j2me que faz conexões http. Já testei a aplicação em um celular Siemens CF62. Vi nas suas mensagens que vc testou em um Motorola V3. Como vc consegui instalar no V3? Qual aplicativo usou? Qual cabo? ou vc transferiu via download?
Gostaria de instalar em V3 de um colega, mas ele disse que não sabe como fazer e não cabos. Com a sua resposta poderemos decidir se compraremos o cabo e o que mais for necessário.

Abraços,

Lourival

Ola Maquina_V8!.

Vc poderia me enviar em E-Mail eu perdi o seu.

Precisamos falar sobre este esquema do Celular tenho novas informacoes que gostaria de compartilhar com vc.

Se mais alguem tiver precisando desenvolver tbm pd enviar o E-Mail.

So nao posto aqui pq nao tem haver com J2ME.

Aguardo retorno

Abracos t+

Puts desculpe o email eh aroldocf@yahoo.com.br

Pessoal!
sou iniciante no J2ME e estou prescisando de uma grande ajuda
como faço para que oq eu digitar o aplicação do cel a origem, e o destino, mandar pra essa página, http://paginas.terra.com.br/informatica/integradorgoogle/
e ele me retornar a resposta assim como no site?
vlw pessoal
trabalho de aula pessoal
vlw