Dicas J2ME

Eu estou participando de um projeto de iniciação Científica no Instituto Federal de São Paulo, onde tenho que desenvolver um sistema mobile para a biblioteca da instituição de ensino onde estudo.

O sistema deverá possibilitar que o usuário faça consultas de emprestimos, consulta de livros, verificar seu estado de pendência, além de fazer consulta, efetuar, cancelar e atualizar reservas de livros.

O problema, é que eu nunca vi J2ME na minha vida O.O e estou tendo que aprender tudo sozinha.

GOstaria que os mais experientes no assunto me dessem dicas sobre a ferramenta, me falassem onde posso baixar tutoriais para estudo e tudo que fosse me ajudar a desenvolver o projeto, principalmente, como pegar os dados de um banco através do servlet.

Se vocês pudessem me fazer este favor, eu ficaria muito agradecida.
Apesar de iniciante, sou muito esforçada e estou muito interessada em aprender.

Abraço. :-o

Documentação do MIDP 2.0
http://java.sun.com/javame/reference/apis/jsr118/

Developer Resources
http://developer.sonyericsson.com
http://www.forum.nokia.com/
http://developer.lgmobile.com/
http://innovator.samsungmobile.com/
http://developer.motorola.com/

Tutorials
http://developers.sun.com/mobility/learning/tutorial/

Bom, sobre ferramentas vc pode usar o NetBenas como MobilyPack ou o Eclipse com o WTK. Segue um link para configuração do Eclipse com WTK:
http://imasters.uol.com.br/artigo/2779/javamobile/configurando_o_eclipse_para_trabalhar_com_j2me/
E uma boa apostila pra vc que está iniciando:
http://www.cin.ufpe.br/~ragpl/pdf/Tutorial_J2ME.pdf

Bons estudos!

Fiquei super interessada com o envento realizado pelo motodev em são paulo… --> http://developer.motorola.com/eventstraining/summit/brazil10/register/
Obrigada pela dica Deivid
Estou querendo ir _

Pena que a maioria dos sites que vc me enviou estão em inglês…
Se vc conhecer algumas versões em português, me ajudaria ainda mais, mesmo assim, meu muito obrigada…

Obrigada Também Jonny…
A apostila que vc me enviou parece ser boa…=D
Estou usando como ferramenta o Net Beans mesmo…[a que me disponibilizaram aqui]

Tenham uma boa semana…

Como já disse, estou com desenvolvendo um projeto mobile para a biblioteca onde faço curso tecnico.

Ao compilar meu progrma, está aparecendo erro no seguinte método:

[b]public void method5() {

     switch (choiceGroup2.getSelectedIndex()) {
         case 0:

            //Chamando o ormulário para efetuar reserva:
             switchDisplayable(null, getFmEfetRes());
            
             break;
         case 1:

             try {

	//Aqui estou chamando o método para consultar reserva de livros
                consultarReserva(); 
            } catch (IOException ex) {
                ex.printStackTrace();
            }

            if (true) {
        		
		//estou chamando o formulário para listar reservas
         		switchDisplayable(null, getFmListarReserva());
        		
     	} else {
        

	//Chamando alerta para mostrar que não há reservas efetuadas
         switchDisplayable(null, getAlErroListarResAtual());
        
     }

             //respConRes é a variável que está verificando se há reservas

		 if(respConRes == true){
		//estou colocando as reservas em um choiceGroup Exclusive (eu irei tratar isto depois)
//str é a variável que recebe a string com os dados do servlet
                      cgListAtuaRes.append(str, null);

                    }else
			//Configurando a mensagem do alerta.
                      alErroListarResAtual.setString("Você ainda não efetuou nenhuma reserva");

             break;
         
         
     }
         }[/b]

Eu preciso também devolver os dados no choiceGroup. Sei que o que fiz está errado[veja o método acima], e não tenho ideia de como fazer isto. Alguém poderia me ajudar por favor? Ficaria muitíssimo agradecida… _

E qual o erro?

Aparece a seguinte mensagem no console do net beans:

TRACE: <at java.lang.NullPointerException: 0>, Exception caught in Display class
java.lang.NullPointerException: 0
[color=red]at Biblioteca.VisualMIDlet.method5(VisualMIDlet.java:1858)
at Biblioteca.VisualMIDlet.commandAction(VisualMIDlet.java:475)[/color]
at javax.microedition.lcdui.Display$ChameleonTunnel.callScreenListener(), bci=46
at com.sun.midp.chameleon.layers.SoftButtonLayer.processCommand(), bci=74
at com.sun.midp.chameleon.layers.SoftButtonLayer.soft2(), bci=173
at com.sun.midp.chameleon.layers.SoftButtonLayer.keyInput(), bci=78
at com.sun.midp.chameleon.CWindow.keyInput(), bci=38
at javax.microedition.lcdui.Display$DisplayEventConsumerImpl.handleKeyEvent(), bci=17
at com.sun.midp.lcdui.DisplayEventListener.process(), bci=277
at com.sun.midp.events.EventQueue.run(), bci=179
[color=darkred]at java.lang.Thread.run(Thread.java:619)[/color]

Pela mensagem, seu Display está nulo!

vlw… Muito obrigada mais uma vez…

Ahhh gente, estou precisando ler uma string com o delimitador “|”. Quando eu encontrar o delimitador, eu jogo o dado em um outro vetor de strings.
Alguém em ideia de como fazer isto? Me falaram pra utilizar o método StringTokenizer, mas eu não sei implementá-lo. Split também não funciona no MIDP 2.1.

Se puderem me ajudar, ficaria muitíssimo agradecida. tenham um bom dia e fiquem com Deus.

Como eu to bonzinho hj né?
Lá vai o split:

public final static String[] split( String str, char separatorChar ) {
	      if (str == null) {
	         return null;
	      }
	      int len = str.length();
	      if(len == 0) {
	         return null;
	      }
	      Vector list = new Vector();
	      int i = 0;
	      int start = 0;
	      boolean match = false;
	      while(i < len) {
	         if(str.charAt(i) == separatorChar ) {
	            if(match) {
	               list.addElement(str.substring(start, i).trim());
	               match = false;
	            }
	            start = ++i;
	            continue;
	         }
	         match = true;
	         i++;
	      }
	      if (match) {
	         list.addElement(str.substring(start, i).trim());
	      }
	      String[] arr = new String[list.size()];
	      list.copyInto(arr);
	      return arr;
	}

Você é sempre muito bonzinho comigo… =D

Por isso que eu adoro você… hehe

Obrigada…

Antes da sua ajuda, estava tentando resolver meu problema com este método aqui:

public static Vector split(String s)
{
String c="|";
Vector parts = new Vector();
if ( s != null )
{int lastfound = 0;
int pos = 0;
while ( (lastfound = s.indexOf(c,pos)) != - 1 )
{
parts.addElement(s.substring(pos,lastfound));
pos = lastfound+1;
}
if ( pos < s.length() ) parts.addElement(s.substring(pos));
}
return parts;}

mas nem deu tempo de compilar, nem sei se está funcionando. o.O

[quote=angelitah]Você é sempre muito bonzinho comigo… =D

Por isso que eu adoro você… hehe

Obrigada…

Antes da sua ajuda, estava tentando resolver meu problema com este método aqui:

public static Vector split(String s)
{
String c="|";
Vector parts = new Vector();
if ( s != null )
{int lastfound = 0;
int pos = 0;
while ( (lastfound = s.indexOf(c,pos)) != - 1 )
{
parts.addElement(s.substring(pos,lastfound));
pos = lastfound+1;
}
if ( pos < s.length() ) parts.addElement(s.substring(pos));
}
return parts;}

mas nem deu tempo de compilar, nem sei se está funcionando. o.O

[/quote]

Uau, fiquei tímido :oops:

Bom, n testei o seu código tbm, mas esse método que te passei eu uso e funciona :lol:

.<

Muitíssimo obrigada mais uma vez… tenha um ótimo fim de semana e que o Senhor abençoe muitíssimo você… =*

Fazendo uma pesquisa de rotina para desenvolver meu projeto eu encontrei este site aqui:

http://j2me.datamazon.com/index.php?option=com_frontpage&Itemid=1

Lá tem vários códigos fontes que podem ajudar muito quem está começando, vale a pena conferir.

O pessoal me ajudou e ajuda quando preciso, agora chegou minha vez de ajudar… :smiley:

Abraço

Oi gente…

O sistema que fiz para a biblioteca do meu curso tecnico está habilitado para fazer login no sistema daqui.

O problema é que, antes de aparecer a tela de login, aparece a seguinte tela:

Esta tela perguntando se quero ir para o formulário de login é normal?
Pergunto isto porque não fui eu quem comecei o projeto. Iniciaram bomba e largaram pra mim… hehehehe

Tem como “retirar” esta tela? Deixando, assim, a tela de login como tela principal?

Desde já agradeço pela atenção de todos… Abraço

Se vc estiver usando o NetBeans, é normal essa tela.
Teste num celular pra ver…

Realmente estou usando o net beans.

No celular também fica aparecendo esta tela.

Obrigada mais uma vez J0nny… FIque com Deus

Já tentou no Application Descriptor setar a sua Midlet?

Não… como eu faço isto?