Java 2 Platform, Micro Edition (J2ME)

Tamanho: px
Começar a partir da página:

Download "Java 2 Platform, Micro Edition (J2ME)"

Transcrição

1 Java 2 Platform, Micro Edition () Alcione de Paiva DPI Granbery Partes deste material foram adaptadas de Mauro Nacif Masha Gutkhen Keren Gazit

2 Conteúdo O que é? conceitos básicos Configurações (CLDC, CDC) Profiles (MIDP) MIDlet, MIDlet Suite Classes básicas da API Uso e instalação Exemplos Exercícios 2

3 Introdução Dispositivos de informação inteligentes são uma necessidade em nossa moderna. Tais dispositivos podem ser: Telefones celulares smart cards PDAs Palmtops Dispositivos eletrônicos em geral Estes dispositivos tendem a ser direcionados para um propósito específico, com recurso limitado, conectados em rede. 3

4 Motivações Years to Reach 25% Market Penetration Years Telephone PC Cellular Internet Mobile internet Category => penetração de 25% do mercado da Internet móvel em quatro anos (Forrester) 4

5 Requisitos de ambiente É necessário um ambiente adaptado para dispositivos com recursos limitados As limitações são: Memória extremamente limitada Tamanho de tela pequena Métodos de entrada alternativos Processadores lentos 5

6 Qual é a solução? Devido à grande demanda a Sun decidiu desenvolver uma edição especial de Java: (Java 2 Micro Edition). 6

7 7

8 Penetração da Tecnologia Java Developers.sun.com (February 14-17, 2005) 110 operadoras no mundo permitem deployments em Java Usados em mais de 400 modelos de mais de 40 fabricantes diferentes Usada em mais de 750 milhões de smartcards. 8

9 Penetração da Tecnologia Java Enterprise Developer News (Tuesday, April 12, 2005) O desenvolvimento em cresceu 33% em apenas seis meses É mais efetivo em termos de custo o desenvolvimento em uma vez que não é necessário reescrever a aplicação para dispositivos diferentes. 9

10 Edições de Java Dispositivos diferentes têm exigências diferentes e expectativas diferentes de Java. Uma plataforma (solução) não pode abarcar todos os segmentos do mercado (servidor web, vídeo games etc.) Usuários/desenvolvedores querem flexibilidade. 10

11 Edições de Java A Plataforma Java 2 é dividida em três edições. Cada edição fornece um ambiente completo para executar aplicações baseadas em java, inclusive a máquina virtual Java (VM) e classes de tempo de execução. As três edições abordam tipos diferentes de aplicações que executam em tipos diferentes de dispositivos. 11

12 Edições de Java Plataforma Java 2 Java2 Standard Edition (J2SE ) Java2 Enterprise Edition (J2EE ) Aplicações desktop & Aplicações workstation Aplicações empresariais de alto desempenho Java2 Micro Edition ( ) Dispositivos com Limitações de memória e processamento 12

13 Edições de Java Cada edição define conjuntos diferentes de bibliotecas de classe. Existem milhares de classes básicas de J2SE, ocupando megabytes de espaço. fornece um número J2EE menor de classes. J2SE 13

14 PersonalJava e EmbeddedJava não é a primeira tentativa de adaptar Java para ambientes restritos. PersonalJava Usa as classes básicas de Java 1.1 com algumas características de Java 2. A implementação ainda exige para 2 megabytes de memória e um processador rápido para executar. 14

15 PersonalJava e EmbeddedJava EmbeddedJava Cada comportamento da JVM e das classes runtime são opcionais o implementador pode escolher exatamente que classes e métodos são requeridos. Perda da portabilidade. 15

16 Profile Plataforma mínima requerida para um grupo de dispositivos Profile Libraries Atende necessidades específicas de uma certa família de dispositivos Java Language Pacotes opcionais Java Virtual Machine Configuration Configuration Profiles Conceitos básicos Sistema operacional 16

17 Conceitos básicos J2EE J2SE PDA Profile Mobile Internet dispositiv o Other Profile Standard Library CLDC Person Profile Enterprise Services CDC Foundatio n Profile Application Server JavaCard CLDC Core API CLDC Core API JavaCard API KVM JCRE Java Language JVM (HotSpot) CVM 17

18 Conceitos básicos Java Card Class file(s) Cerca de 50K de memória Três componentes: Runtime environment Converter JCVM, JCRE, JC API 2 diferentes VMs: Conversor Interpretador On-card installer Interpreter CAP files Smart card Off-card installation program CAD PC ou workstation 18

19 Conceitos básicos JavaTV Applications & Applets Baseado em J2SE VM no receptor de TV & executa byte code Aplicações sobdemanda Application layer Java TV API Java Platform Java technology layer Real Time OS Device Drivers Digital TV Receiver RTOS layer Hardware layer 19

20 Conceitos básicos está baseada em 3 conceitos básicos: Configurations Profiles Pacotes opcionais 20

21 Configurações Uma configuration é um ambiente Java completo, consistindo de: Uma Java virtual machine (VM) para executar Java bytecode Código nativo para interagir com o sistema subjacente Um conjunto de classes básicas Java de tempo de execução Para usar uma configuration, um dispositivo deve atender alguns requerimentos mínimos. 21

22 Configurações O conjunto de classes básicas e pequeno e deve ser expandido com classes adicionais fornecidas pelo profiles ou pelo implementador da configuration. Configurations não define classes de interface com o usuário. 22

23 Configurações Configuration CLDC CDC Connected Limited Device Configuration Connected Device Configuration 23

24 CLDC vs. CDC CLDC Para dispositivos muito limitados KB de memória total Processador de 16-bit ou 32-bit Baixo consumo de energia, com possível uso de bateria Conectividade com largura de banda limitada CDC 2 MB ou mais de memória Processador de 32bit Conectividade com banda larga, com o uso freqüente de TCP/IP 24

25 CLDC vs. CDC - VM Características ausentes na CLDC VM: Tipos de Ponto flutuante (1.0) Finalização de objetos JNI ou reflection Thread groups ou daemon threads Class loaders para usuário O CDC suporta uma máquina virtual Java 2 completa Mudanças na verificação/ pre-verificação 25

26 KVM e CVM KVM - Java virtual machines para o CLDC CVM - Java virtual machines para o CDC Escritas para trabalhar especificamente em ambientes limitados e para serem facilmente portadas para diferentes plataformas. 26

27 CLDC vs. CDC J2SE Subset CLDC inclui classes da: CDC inclui 17 pacotes java.lang java.io java.util Somente classes selecionadas de cada pacote foram incluídas. 27

28 CLDC vs. CDC J2SE Subset J2SE CDC CLDC 28

29 Lidando com I/O J2SE inclui várias classes para realizar I/O. Existe um número grande de classes I/O e elas tendem a encapsular modelos de I/O que não são necessariamente encontrados em todos os dispositivos. Por exemplo, alguns dispositivos handheld não possuem sistemas de arquivo. Suporte a Socket, também não é universal. 29

30 Lidando com I/O em CLDC CLDC define um conjunto novo de APIs para I/O chamado de Generic Connection Framework. O GCF, parte do novo pacote javax.microedition.io, define interfaces para os diferentes tipos de I/O que são possíveis. O CLDC não define, de fato, qualquer implementação de I/O. Isto fica a cargo do profiles e/ou do fabricante do dispositivo. 30

31 GCF - exemplo import java.io.*; import javax.microedition.io.*; StreamConnection conn = null; InputStream is = null; String url = "socket://somewhere.com:8909"; try { conn = (StreamConnection) Connector.open( url ); is = conn.openinputstream();... // etc. etc. } 31

32 Lidando com I/O em CDC Uma vez que CDC é um superconjunto do CLDC, ele inclui o GCF. CDC também requer suporte GCF para dois tipos específicos de conexões: arquivos e datagramas. A razão: CDC inclui as classes dos pacotes java.io e java.net. 32

33 Conceitos básicos está baseada em 3 conceitos básicos: Configurations Profiles Pacotes opcionais 33

34 Profiles Adiciona classes específicas do domínio para uma configuration: Para adicionar funcionalidade ausentes Para suportar usos específicos do dispositivo A maioria de profiles define classes de interface com o usuário para construir aplicações interativas. Para usar um profile, o dispositivo deve atender um mínimo de requisitos da configuration e do profile. 34

35 Profiles Profile MIDP Mobile Information device PDAP Personal Digital Assistant Profile FP Foundation Profile PBP PP Personal Basis Profile Personal Profile 35

36 MIDP MID Profile MIDP é direcionada para uma classes de dispositivos conhecidos como mobile information devices (MIDs). Características Mínimas do MIDs: Memória suficiente para executar aplicações MIDP Visor com pelo menos 96 X 56 pixels, monocromático ou colorido Um keypad, teclado, ou tela sensível ao toque Capacidade de rede sem fio bi-direcional 36

37 MIDP - Especificação Existem duas versões de MIDP: MIDP 1.0 lançado em Setembro de Muitos dispositivos disponíveis no mercado suportam esta versão. MIDP 2.0 lançado em Dezembro de Grande parte dos dispositivos o suportam. 37

38 MIDP - Especificação O MIDP adiciona APIs às APIs básicas definidas pelo CLDC. As novas características incluem: Suporte para gerência do ciclo de vida da aplicação de modo similar aos applets no J2SE. Armazenamento persistente de dados. Conectividade baseada no HTTP no GCF. Suporte simples às interface com o usuário, com flexibilidade suficiente para construção de jogos e aplicações de negócio. 38

39 MIDP - Especificação A especificação MIDP 2.0 inclui novas APIs em relação a versão 1.0, sendo as principais: classe responsável por lidar com push registry (um MIDlet responder a um evento externo sem estar ativo). javax.microedition.lcdui.game pacote responsável por estender as capacidades do MIDP para jogos 2D, lidando com layers, sprites e transparências. javax.microedition.io.pushregistry 39

40 MIDP - Especificação Outros avanços da MIDP 2.0: Ampliação da capacidade de interface com o usuário. Suporte a mídia (wav) Ampliação da capacidade de conectividade (HTTPS, datagram, sockets, server sockets e comunicação com a porta serial) Suporte Over-the-air (OTA) instalação automática pelo ar. 40

41 MIDP Limitações das aplicações Memória é um recurso particularmente escasso. Os primeiros celulares Motorola habilitados para limitavam o tamanho de uma aplicação a 50K. 41

42 Conceitos básicos está baseada em 3 conceitos básicos: Configurations Profiles Pacotes opcionais 42

43 Pacotes opcionais Conjunto de APIs para suportar comportamentos adicionais comuns. Possui dependências específicas com uma configuration particular e/ou um ou mais profiles. Exemplos de pacotes opcionais : RMI Bluetooth JDBC 43

44 Pacotes opcionais JCP APIs suportadas no Wireless Toolkit JSR API Name JSR 139 CLDC 1.1 Connected Limited Device Configuration JSR 118 MIDP 2.0 Mobile Information Device Profile JSR 185 JTWI 1.0 Java Technology for the Wireless Industry JSR 205 WMA 2.0 Wireless Messaging API JSR 135 MMAPI 1.1 Mobile Media API JSR 75 PIM and File PDA Optional Packages for the Platform JSR 82 Bluetooth and OBEX Java APIs for Bluetooth JSR 172 Web Services Specification JSR 184 3D Graphics Mobile 3D Graphics API for 44

45 Em resumo Configuration, profile e pacotes opcionais devem ser selecionados. profiles baseados em CDC tornam o desenvolvimento mais simples, mas não é adequado para dispositivos low-end. profiles baseados em CLDC tornam o desenvolvimento mais difícil, especialmente quando é necessário diminuir o tamanho de uma aplicação para executar em muitos dispositivos. 45

46 46

47 MIDlets o coração de Do mesmo modo que os Applets e os Servlets as aplicações MIDP são executadas em um ambiente. As aplicação são denominadas de MIDlet, a qual é uma aplicação MID Profile. 47

48 MIDlets o coração de Toda aplicação deve estender a classe javax.microedition.midlet.midlet para permitir que o programa gerente de aplicação (AMS): controle o MIDlet. Seja capaz de acessar as propriedades do descritor da aplicação. Notificar e requisitar mudanças de estado. 48

49 MIDlets o coração de A classe que estende a classe MIDlet é a classe principal da aplicação. A classe MIDlet define métodos abstratos que devem ser implementados pela subclasse (por exemplo: startapp(), destroyapp(), notifydestroyed()). 49

50 MIDlets o coração de 50

51 MIDlet Suite Um ou mais MIDlets são empacotados juntos em uma MIDlet suite, composta de: Arquivo JAR (Java archive) Arquivo JAD (Java Application Descriptor) Todas as classes definidas pelo usuário e recursos requeridos pelos MIDlets na suite devem estar no arquivo JAR. 51

52 MIDlet Suite O arquivo JAR file deve também incluir um manifest que descreve os MIDlets na suite. O descritor da aplicação (JAD) contém informação similar, e é usado por dispositivos para obter informação sobre uma MIDlet suite sem ter que baixar e instalar o MIDlet suite primeiro. 52

53 Criando um MIDlet 53

54 Criando um MIDlet Importando pacotes específicos do MIDP import javax.microedition.lcdui.*; import javax.microedition.midlet.*; 54

55 Criando um MIDlet Extends MIDlet Implements CommandListener public class HelloMIDlet extends MIDlet implements CommandListener { 55

56 Criando um MIDlet Criando um form, adicionando Commands public HelloMIDlet() { mmainform = new Form("HelloMIDlet"); mmainform.append(new StringItem(null, "Hello, Seminar Software Design!")); mmainform.addcommand(new Command("Exit", Command.EXIT, 0)); mmainform.setcommandlistener(this); } 56

57 Exemplos de classes da API MIDP MIDlet Form Command CommandListener ItemCommandListener Item 57

58 Exemplos de classes da API MIDlet Base class Form Command CommandListener ItemCommandListener Item 58

59 MIDlet class API protected abstract void startapp() protected abstract void pauseapp() protected abstract void destroyapp(boolean unconditional) public final String getappproperty(string key) public final void notifydestroyed() 59

60 Exemplos de classes da API MIDlet Form Command CommandListener ItemCommandListener Item 60

61 Classe Form Um Form é uma Screen (tela) que contém uma mistura arbitrária de itens: imagens, campos de texto read-only, campos de texto editáveis, campos de data editáveis, medidores, grupos de escolha e itens adaptados. De modo geral, qualquer subclasse da classe Item pode estar contida em um form. A implementação lida com o layout, navegação e rolamento (scrolling). 61

62 Classe Form API Gerência de Item public int append(item item) public Item get(int itemnum) Layout public void setitemstatelistener(itemstate Listener ilistener) 62

63 Exemplos de classes da API MIDlet Form Command CommandListener ItemCommandListener Item 63

64 Classe Command A classe Command representa o significado de uma ação. Objetos Command estão presentes na interface com o usuário. A ação é, de fato, implementada em um objeto CommandListener. O objeto CommandListener é associado com um objeto Displayable ou um Item. Uma vez que o Comando é acionado, o CommandListener é invocado e a ação é realizada. 64

65 Classe Command Command label public String getlabel() Command type public int getcommandtype() Command priority public int getpriority() 65

66 Classe Command tipo Label prioridade new Command( Compre", Command.ITEM, 1); new Command("Info", Command.ITEM, 1); new Command( voltar", Command.BACK, 1); 66

67 Classe Command Tipo BACK CANCEL EXIT HELP ITEM OK SCREEN STOP Comando navigacional para retornar à tela anterior. Comando padrão de cancelamento. Comando padrão de saída da aplicação. Comando para solicitação de ajuda on-line. Comando relacionado com itens na tela ou elementos de escolha. Comando padrão de resposta positiva a um dialogo. Especifica um comando definido pela aplicação que pertence à tela corrente. Comando para parar o processo em execução no momento. 67

68 Classe Command Prioridade A aplicação usa o valor de prioridade para descrever a importância deste comando relativamente a outros comandos na mesma tela. Valores de prioridade são inteiros, onde um número menor indica maior importância. Tipicamente, a implementação escolhe a colocação de um comando primeiro baseado no tipo de comando e então comandos semelhantes em lugares baseado em uma ordem de prioridade. Isto poderia significar que o comando com a prioridade mais alta é colocado de forma que usuário pode ativá-lo diretamente e o comando com mais baixa prioridade é colocado em um menu. 68

69 classe CommandListener API O objeto é um listener para Commands que estão associados à Displayable. public void commandaction(command c, Displayable d) 69

70 classe ItemCommandListener API Quando um command (associado a um Item) é invocado, a aplicação é notificada por meio da chamada ao método commandaction() de um objeto ItemCommandListener que foi associado ao Item. public void commandaction(command c, Item item) 70

71 Exemplos de classes da API MIDlet Form Command CommandListener ItemCommandListener Item 71

72 Classe Item Uma superclasse para componentes que podem ser adicionados a um Form. Todos os objetos Item possuem um campo label Escolha o layout, tamanho e aparência do Item Associe Commands 72

73 Classe Item API public void setdefaultcommand(command cmd) public void setitemcommandlistener(itemcommandlistener listener) public void notifystatechanged() public int getpreferredwidth() 73

74 Iniciando Passo 1: Baixe Wireless Toolkit da sun: ownload-2_2.html Passo 2: Instale J2SE SDK Passo 3: Instale o Toolkit. 74

75 Após a instalação. Atalhos estão disponíveis no menu iniciar. Novos diretórios são criados 75

76 Usando KToolbar 76

77 Criando uma nova Aplicação Clique New Project. Entre o nome do projeto e o nome da MIDlet. Novos diretórios serão criados automaticamente. 77

78 Onde colocar os arquivos? /apps/{proj} fontes, recursos, e arquivos binários /apps/{proj}/bin JAR, JAD, arquivos manifest descompactados. /apps/{proj}/lib Bibliotecas de classes externas, (JAR ou ZIP) para um projeto específico /apps/{proj}/res Arquivos de recursos /apps/{proj}/src Arquivos fonte /apps/lib Bibliotecas de classes externas, (JAR ou ZIP) para todos projetos KToolbar. 78

79 Depois? Escolha a plataforma Escreva seu código grave Build (Compilar + Preverify) execute 79

80 Distribuição para dispositivos reais Crie um pacote Coloque o pacote em algum lugar da Internet. Atualize o arquivo.jad Download a aplicação para o celular Execute 80

81 Exemplos OlaMundo Ola2 Envio de mensagem e registro Push Comunicação HTTP 81

82 Exemplo: OlaMundo import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class OlaMundoMIDlet extends MIDlet implements CommandListener { private Command exitcommand; // The exit command private Display display; // The display for this MIDlet Comando de tela para sair public OlaMundoMIDlet() { display = Display.getDisplay(this); exitcommand = new Command( Sair", Command.SCREEN, 2); } 82

83 Exemplo: OlaMundo public void startapp() { TextBox t = new TextBox("Ola Mundo", "Ola mundo!", 256, 0); t.addcommand(exitcommand); Cria a caixa de texto t.setcommandlistener(this); Relaciona o comando com o texto display.setcurrent(t); } Define quem vai escutar o comando public void pauseapp() { } Mostra a tela public void destroyapp(boolean unconditional) { } public void commandaction(command c, Displayable s) { if (c == exitcommand) { destroyapp(false); notifydestroyed(); Implementa a saída da } aplicação } } Se verdadeiro o MIDlet deve liberar todos os recursos. Se falso o MIDlet pode lançar MIDletStateChangeException para indicar que não quer ser destruído neste momento. 83

84 Exemplo: OlaMundo Criando o projeto no WTK 84

85 Exemplo: OlaMundo Criando o projeto no WTK Edite o código fonte e o grave em {toolkit}\apps\olamundo\src\olamundo.java Build Execute 85

86 Exemplo: OlaMundo Simulando o OTA (Over The Air) para deployment 86

87 Exemplo: OlaMundo Simulando o OTA (Over The Air) para deployment 87

88 Exemplo: OlaMundo Simulando o OTA (Over The Air) para deployment 88

89 Exemplo: OlaMundo Simulando o OTA (Over The Air) para deployment 89

90 Exemplo: OlaMundo Simulando o OTA (Over The Air) para deployment 90

91 Exemplo: OlaMundo Simulando o OTA (Over The Air) para deployment 91

92 Exemplo: OlaMundo Simulando o OTA (Over The Air) para deployment 92

93 Exemplo: OlaMundo (outra versão) import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class OlaMundoMIDlet extends MIDlet implements CommandListener { public void startapp() { Display display = Display.getDisplay(this); Form mainform = new Form("OlaMundoMIDlet"); mainform.append("ola Mundo!"); Command exitcommand = new Command("Exit", Command.EXIT, 0); mainform.addcommand(exitcommand); mainform.setcommandlistener(this); display.setcurrent(mainform); } 93

94 Exemplo: OlaMundo public void pauseapp() { } public void destroyapp(boolean unconditional) { } public void commandaction(command c, Displayable s) { if (c.getcommandtype() == Command.EXIT ) { notifydestroyed(); } } } 94

95 Exemplo: OlaMundo no NetBeans Mobile Edition Novo Projeto 95

96 Exemplo: OlaMundo no NetBeans Mobile Edition Desmarque o Create Hello MIDlet 96

97 Exemplo: OlaMundo no NetBeans Mobile Edition Pressione Finish 97

98 Exemplo: OlaMundo no NetBeans Mobile Edition Selecione New File 98

99 Exemplo: OlaMundo no NetBeans Mobile Edition Pressione Finish 99

100 Exemplo: OlaMundo no NetBeans Mobile Edition Copie o conteúdo da transparência para o MIDLet Execute o projeto 100

101 Exemplos OlaMundo Ola2 Envio de mensagem e registro Push Comunicação HTTP 101

102 Exemplo: Ola2 import javax.microedition.midlet.*; import javax.microedition.lcdui.*; // Ola que pergunta o nome do usuário public class Ola2Midlet extends MIDlet implements CommandListener { private Command exitcommand = new Command("Sair", Command.EXIT, 1); private Command okcommand = new Command("OK", Command.OK, 1); private Form mainform; private Display display; public Ola2Midlet() { mainform = new Form("Ola"); } 102

103 Exemplo: Ola2 public void startapp() { display = Display.getDisplay(this); mainform.append( new TextField("Entre com seu nome", "", 15, TextField.ANY)); mainform.addcommand(exitcommand); mainform.addcommand(okcommand); display.setcurrent(mainform); mainform.setcommandlistener(this); Indica o tipo do TextField: ANY, DECIMAL, ADDR, INITIAL_CAPS_SENTENCE, INITIAL_CAPS_WORD, NON_PREDICTIVE, NUMERIC, PHONENUMBER, PASSWORD, SENSITIVE, UNEDITABLE, URL } public void pauseapp() { } protected void destroyapp(boolean unconditional) { } 103

104 Exemplo: Ola2 public void commandaction(command c, Displayable s) { if (c == exitcommand) { destroyapp(false); notifydestroyed(); } else if (c == okcommand) { TextField t = (TextField)mainForm.get(0); mainform.append( new TextField("", "Ola "+ t.getstring(), 15, TextField.ANY)); } } } 104

105 Exemplos OlaMundo Ola2 Envio de mensagem e registro Push Comunicação HTTP 105

106 Exemplos: Envio de mensagens O Wireless Toolkit suporta a Wireless Messaging API (WMA) com um ambiente sofisticado de simulação. WMA 1.1 (JSR 120) permite que os MIDlets enviem e recebam mensagens SMS (Short Message Service) ou CBS (Cell Broadcast Service). WMA 2.0 (JSR 205) também inclui suporte para mensagens MMS (Multimedia Message Service). 106

107 Exemplos: Envio de mensagens No entanto, para se beneficiar completamente do uso de mensagens, seria útil que a aplicação pudesse ser despertada automaticamente, a partir da chegada de uma mensagem ou de um outro evento, como um evento de timer. Este é o conceito capturado pelo registro push, especificado pelo na MIDP 2.0 (JSR 118). 107

108 Exemplos: Envio de mensagens Deste modo poderemos ter aplicações que recebem e tratam os dados automaticamente, como por exemplo uma aplicação que gera um gráfico das ações da bolsa. Ou uma aplicação que atualiza automaticamente um roteiro de visitas para trabalhadores na rua, em função da chegada de pedidos. 108

109 Exemplos: Envio de mensagens 109

110 Exemplos: Envio de mensagens 110

111 Exemplos: Envio de mensagens O registro de uma aplicação para ser acordada por tempo ou por mensagens pode ser dinâmico ou estático. Dinâmico em tempo de execução, por meio de chamadas a métodos: registerconnection(string connection, String midlet, String filter) registeralarm(string midlet, long time) Estático pela definição no arquivo JAD MIDlet-Push-<n>: <ConnectionURL>,<MIDletClassName>, <AllowedSender> MIDlet-Push-2: socket://:100, corej2me.newslink, * 111

112 Exemplos: Envio de mensagens Neste exemplo faremos um MIDLet que é ativado automaticamente pela chegada de uma mensagem sms, e que exibe seu conteúdo no display. O registro será estático. 112

113 Exemplos: Envio de mensagens import javax.microedition.midlet.*; import javax.microedition.lcdui.*; import javax.microedition.io.*; import javax.wireless.messaging.*; import java.io.ioexception; public class PushTeste extends MIDlet implements CommandListener { private Display display; private Command cmexit; private Alert alertamen; int porta = 1000; MessageConnection conexao = null; // Conexao para receber a mensagem Message mensagem; 113

114 Exemplos: Envio de mensagens public void pauseapp() { } public void destroyapp(boolean unconditional) { } public PushTeste() { display = Display.getDisplay(this); alertamen = new Alert("Mensagem recebida!"); alertamen.settimeout(alert.forever); cmexit = new Command("Sair", Command.EXIT, 1); alertamen.addcommand(cmexit); alertamen.setcommandlistener(this); } 114

115 Exemplos: Envio de mensagens public void startapp() { String connectlist[]; connectlist = PushRegistry.listConnections(true); if (connectlist == null connectlist.length == 0) { // iniciado pelo usuario, sair destroyapp(false); notifydestroyed(); } else { // iniciado por conexao try { conexao = (MessageConnection) Connector.open("sms://:" + porta); mensagem = conexao.receive(); if(mensagem!= null && mensagem instanceof TextMessage) { alertamen.settitle("enviado por: " + mensagem.getaddress()); alertamen.setstring(((textmessage)mensagem).getpayloadtext()); display.setcurrent(alertamen); } } 115

116 Exemplos: Envio de mensagens catch(ioexception e) { System.out.println("Exceção!"); } } } public void commandaction(command c, Displayable s) { if (c == cmexit) { destroyapp(false); notifydestroyed(); } } } 116

117 Exemplos: Envio de mensagens Teste e Instalação Registro estático (alteração no JAD) 117

118 Exemplos: Envio de mensagens Teste e Instalação Inserindo permissões 118

119 Exemplos: Envio de mensagens Teste e Instalação Criando o pacote Executando via OTA Enviando mensagens por meio do WMA console 119

120 Exemplos: Envio de mensagens Teste e Instalação Criando o pacote Executando via OTA Enviando mensagens por meio do WMA console 120

121 Exemplos: Envio de mensagens Teste e Instalação Criando o pacote Executando via OTA Enviando mensagens por meio do WMA console 121

122 Exemplos: Envio de mensagens Teste e Instalação Criando o pacote Executando via OTA Enviando mensagens por meio do WMA console 122

123 Exemplos: Envio de mensagens Teste e Instalação Criando o pacote Executando via OTA Enviando mensagens por meio do WMA console 123

124 Exemplos OlaMundo Ola2 Envio de mensagem e registro Push Comunicação HTTP 124

125 Exemplos: comunicação HTTP Os MIDlets podem comunicar por meio do protocolo HTTP Neste exemplo o MIDlet faz uma conexão com um Servlet e recebe a contagem de quantas vezes o Servlet foi requisitado 125

126 Exemplos: comunicação HTTP O Servlet import javax.servlet.http.*; import javax.servlet.*; import java.io.*; public class HitServlet extends HttpServlet { private int mcount; public void doget(httpservletrequest request, HttpServletResponse response) throws ServletException, IOException { String message = "Hits: " + ++mcount; response.setcontenttype("text/plain"); response.setcontentlength(message.length()); response.getwriter().println(message); } } 126

127 Exemplos: comunicação HTTP O arquivo web.xml <?xml version="1.0" encoding="iso "?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <servlet> <servlet-name>bob</servlet-name> <servlet-class>hitservlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>bob</servlet-name> <url-pattern>/hits</url-pattern> </servlet-mapping> </web-app> 127

128 Exemplos: comunicação HTTP A instalação 128

129 Exemplos: comunicação HTTP O MIDlet import java.io.*; import javax.microedition.io.*; import javax.microedition.lcdui.*; import javax.microedition.midlet.*; public class HitMIDlet extends MIDlet implements CommandListener { private Display mdisplay; private Form mmainform; private StringItem mmessageitem; private Command mexitcommand, mconnectcommand; public void pauseapp() {} public void destroyapp(boolean unconditional) {} 129

130 Exemplos: comunicação HTTP O MIDlet public void startapp() { mdisplay = Display.getDisplay(this); mdisplay.setcurrent(mmainform); } public HitMIDlet() { mmainform = new Form("HitMIDlet"); mmessageitem = new StringItem(null, ""); mexitcommand = new Command("Exit", Command.EXIT, 0); mconnectcommand = new Command("Connect", Command.SCREEN, 0); mmainform.append(mmessageitem); mmainform.addcommand(mexitcommand); mmainform.addcommand(mconnectcommand); mmainform.setcommandlistener(this); } 130

131 Exemplos: comunicação HTTP O MIDlet public void commandaction(command c, Displayable s) { if (c == mexitcommand) notifydestroyed(); else if (c == mconnectcommand) { Form waitform = new Form("Waiting..."); mdisplay.setcurrent(waitform); Thread t = new Thread() { public void run() { connect(); } }; t.start(); } } 131

132 Exemplos: comunicação HTTP O MIDlet private void connect() { HttpConnection hc = null; InputStream in = null; String url = getappproperty("hitmidlet.url"); try { hc = (HttpConnection)Connector.open(url); in = hc.openinputstream(); int contentlength = (int)hc.getlength(); byte[] raw = new byte[contentlength]; int length = in.read(raw); in.close(); hc.close(); 132

133 Exemplos: comunicação HTTP O MIDlet String s = new String(raw, 0, length); mmessageitem.settext(s); } catch (IOException ioe) { mmessageitem.settext(ioe.tostring()); } mdisplay.setcurrent(mmainform); } } 133

134 Exemplos: comunicação HTTP A configuração 134

135 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Fazer um MIDLet onde o usuário digite uma temperatura em Fahrenheit e o programa transforme para o equivalente em celcius. C = (F-32)*5/9 135

136 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Novo Projeto 136

137 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Novo MIDLet visual 137

138 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Novo MIDLet visual 138

139 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans 139

140 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Criar dois formulários e alterar os nomes 140

141 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Inserir comandos para a navegação e execução 141

142 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Criar a navegação 142

143 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Desenhar as telas 143

144 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Desenhar as telas 144

145 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Desenhar as telas 145

146 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Inserir o código para conversão Colocar o código aqui 146

147 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Inserir o código para conversão 147

148 Exemplo:Desenvolvimento de uma aplicação visualmente pelo NetBeans Resultado 148

149 e Web Services O que é um Web Services É uma aplicação que existe em um ambiente distribuído, como a Internet. Um Web service aceita uma requisição, realiza a função requisitada e retorna uma resposta. Tanto a requisiçao quanto a pergunta, usualmente, são registradas em um documento XML (SOAP), e enviada sobre um protocolo de rede, como o HTTP. É uma nova forma de RPC. 149

150 e Web Services O que é um Web Services A codificação XML para as mensagens obedecem a especificação SOAP. SOAP: Simple Object Access Protocol. Um protocolo leve com o objetivo de trocar informação estruturada em um ambiente descentralizado e distribuído. Ele provê, por meio de XML, um meio de construir mensagens que podem ser trocadas sobre uma variedade de protocolos. 150

151 e Web Services Universal Description, Discovery, and Integration 151

152 e Web Services Java fornece uma api para manipular mensagens SOAP: JAX-RPC. JAX-RPC é uma tecnologia para construir Web services e clientes que usam chamadas remotas a procedimentos e XML. Com JAX-RPC, o desenvolvedor não precisa lidar com SOAP. JAX-RPC cria uma camada que elimina esta complexidade. 152

153 e Web Services No lado do servidor, o desenvolvedor especifica procedimentos remotos por meio da definição de métodos e interfaces Java. O desenvolvedor também codifica uma ou mais classes que implementam esses métodos. No lado cliente uma proxy é criada (um objeto local representando o serviço) o programa cliente invoca os método da proxy. 153

154 e Web Services WS-I Basic Profile Provê Compatibilidade Requer: HTTP binding for SOAP HTTP posts WSDL 1.1 RPC/literal ou document/literal 154

155 e Web Services WSA (Web Services API) JSR 172: Web Services API (WSA) Estende plataforma para suporte a WS através de duas características: Remote Service Invocation XML parsing 155

156 e Web Services WSA (Web Services API) Requer Conformidade ao WS-I Basic Profile. Suporta SOAP

157 e Web Services WSA não suporta: SOAP Message Attachments Message Handlers Bibliotecas para service end points UDDI (Universal Description, Discovery and Integration) 157

158 e Web Services WSA 158

159 e Web Services WSA 159

160 e Web Services Exemplo: Primeiramente desenvolveremos um WS, que será acessado posteriormente por uma aplicação. 160

161 e Web Services Exemplo: Passo: Criar uma aplicação Web 161

162 e Web Services Exemplo: Passo: Criar uma aplicação Web 162

163 e Web Services Exemplo: Passo: Criar um Web service 163

164 e Web Services Exemplo: Passo: Criar um Web service 164

165 e Web Services Exemplo: Passo: Adicionar um serviço 165

166 e Web Services Exemplo: Passo: Adicionar um serviço 166

167 e Web Services Exemplo: Passo: Adicionar um serviço 167

168 e Web Services Exemplo: Passo: testar o serviço 168

169 e Web Services Exemplo: Passo: Criar uma aplicação movel 169

170 e Web Services Exemplo: Passo: Criar uma aplicação movel 170

171 e Web Services Exemplo: Passo: Criar uma aplicação movel 171

172 e Web Services Exemplo: Passo: criar o cliente do Web Service 172

Uma Introdução ao. Computação Móvel (MAC5743/MAC330) Prof. Alfredo Goldman Monitores: Rodrigo Barbosa Daniel Cordeiro

Uma Introdução ao. Computação Móvel (MAC5743/MAC330) Prof. Alfredo Goldman Monitores: Rodrigo Barbosa Daniel Cordeiro Uma Introdução ao J2ME Computação Móvel (MAC5743/MAC330) DCC-IME-USP Prof. Alfredo Goldman Monitores: Rodrigo Barbosa Daniel Cordeiro Visão Geral do Java 2 (1) A plataforma Java 2 engloba três elementos:

Leia mais

Desenvolvimento de Sistemas Móveis em Java com J2ME/MIDP. Jorge H. C. Fernandes

Desenvolvimento de Sistemas Móveis em Java com J2ME/MIDP. Jorge H. C. Fernandes Desenvolvimento de Sistemas Móveis em Java com J2ME/MIDP Jorge H. C. Fernandes Desenvolvimento J2ME/MIDP Agenda Plataforma e Edições Java 2 J2ME - Java 2 Micro Edition MIDP - Mobile Information Device

Leia mais

Programação para Celular com Java

Programação para Celular com Java 1/13 Programação para Celular com Java Objetivo: Capacitar o aluno a desenvolver aplicações com o Sun Java Wireless Toolkit for CLDC. Sumário 1. Introdução:... 2 2. Como criar um novo Projeto?... 2 3.

Leia mais

Programação para Dispositivos Móveis. Prof. Wallace Borges Cristo

Programação para Dispositivos Móveis. Prof. Wallace Borges Cristo Programação para Dispositivos Móveis Prof. Wallace Borges Cristo Acesso a informação Notícias, Ringtones, Vídeos Messenger/Chat Jogos Acesso a instituições financeiras M-commerce (Mobile Commerce) Aplicações

Leia mais

Roteiro. Linguagens, plataformas e ambientes de Desenvolvimento. Desenvolvimento de Aplicações para DM. Java. Linguagem C

Roteiro. Linguagens, plataformas e ambientes de Desenvolvimento. Desenvolvimento de Aplicações para DM. Java. Linguagem C Desenvolvimento de Aplicações para Dispositivos Móveis José de Ribamar Martins Bringel Filho Mestre em Ciência da Computação (UFC) bringel@cenapadne.br Roteiro Overview das Plataformas e Linguagens J2ME

Leia mais

Arquitetura Java ME (J2ME) & Tecnologias Java Embarcadas Relacionadas

Arquitetura Java ME (J2ME) & Tecnologias Java Embarcadas Relacionadas Arquitetura Java ME (J2ME) & Tecnologias Java Embarcadas Relacionadas INF-455/655 Computação Móvel Universidade Federal de Viçosa Departamento de Informática Conteúdo 3 sabores para as plataformas Java

Leia mais

J2ME, Uma Platarfoma de programação para Dispositivos Móveis

J2ME, Uma Platarfoma de programação para Dispositivos Móveis J2ME, Uma Platarfoma de programação para Dispositivos Móveis Jesseildo F. Gonçalves 07/10/2010 Jesseildo F. Gonçalves () 07/10/2010 1 / 50 1 Introdução ao J2ME História Arquitetura do J2ME MIDLets 2 RMS:

Leia mais

Tutorial J2ME Parte 3

Tutorial J2ME Parte 3 Introdução Tutorial J2ME Parte 3 Como pudemos aprender nos tutoriais anteriores, os dispositivos celulares podem implementar em seu sistema o KVM, a máquina virtual que roda aplicações J2ME. A API de programação

Leia mais

Programação Gráfica Parte 1 Versão em Java 2006 PUCPR Tutoria de Jogos 1º Ano

Programação Gráfica Parte 1 Versão em Java 2006 PUCPR Tutoria de Jogos 1º Ano Programação Gráfica Parte 1 Versão em Java 2006 PUCPR Tutoria de Jogos 1º Ano Paulo V. W. Radtke pvwradtke@gmail.com http://www.ppgia.pucpr.br/~radtke/jogos/ AVISO IMPORTANTE!! Esta versão é dedicada exclusivamente

Leia mais

Java 2 Micro Edition (J2ME)

Java 2 Micro Edition (J2ME) Java 2 Micro Edition (J2ME) por Filipe Gonçalves Barreto de Oliveira Castilho Departamento de Engenharia Informática Universidade de Coimbra 3030 Coimbra, Portugal fgonc@student.dei.uc.pt Resumo: Apresenta-se

Leia mais

DESENVOLVIMENTO DE SOFTWARE PARA DISPOSITIVOS MÓVEIS DEVELOPMENT OF SOFTWARE FOR MOBILE DEVICES 8º CICLO DE PALESTRAS DE INFORMÁTICA DA FAI

DESENVOLVIMENTO DE SOFTWARE PARA DISPOSITIVOS MÓVEIS DEVELOPMENT OF SOFTWARE FOR MOBILE DEVICES 8º CICLO DE PALESTRAS DE INFORMÁTICA DA FAI DESENVOLVIMENTO DE SOFTWARE PARA DISPOSITIVOS MÓVEIS DEVELOPMENT OF SOFTWARE FOR MOBILE DEVICES ROBERTO JUNDI FURUTANI 1 JOSÉ LUIZ VIEIRA DE OLIVEIRA 2 8º CICLO DE PALESTRAS DE INFORMÁTICA DA FAI Resumo

Leia mais

UMA ABORDAGEM SOBRE J2ME

UMA ABORDAGEM SOBRE J2ME UMA ABORDAGEM SOBRE J2ME Júlio César Jardim Júnior 1, Elio Lovisi Filho (Orientador) 1 1 Ciência da Computação Universidade Presidente Antônio Carlos (UNIPAC) Rua Palma Bageto Viol, s/n Barbacena - MG.

Leia mais

Java ME e suas principais tecnologias de conectividade. Gracieli Begia Mateus

Java ME e suas principais tecnologias de conectividade. Gracieli Begia Mateus Java ME e suas principais tecnologias de conectividade Gracieli Begia Mateus Telefones Celulares no Mundo Fonte: UIT e Wireless Intelligence (Ovum/GSM Association) Posição do Brasil no Mundo Principais

Leia mais

DESENVOLVIMENTO DE UMA FERRAMENTA UTILIZANDO A TECNOLOGIA J2ME

DESENVOLVIMENTO DE UMA FERRAMENTA UTILIZANDO A TECNOLOGIA J2ME DESENVOLVIMENTO DE UMA FERRAMENTA UTILIZANDO A TECNOLOGIA J2ME Ana Paula A. ZANELATO 1 Eliezer Gomes Paraganba FILHO 2 Emerson Silas DÓRIA 3 RESUMO: Este artigo pretende apresentar a tecnologia J2ME (linguagem

Leia mais

Introducão à Tecnologia Móvel 1 UFU - BACALÁ

Introducão à Tecnologia Móvel 1 UFU - BACALÁ Introducão à Tecnologia Móvel 1 História do Celular 1921 (0G) O Departamento de polícia de Detroit instala rádios móveis operando em cerca de 2 MHz, nos carros. Problemas com o sistema devido a grande

Leia mais

Computação Móvel J2ME

Computação Móvel J2ME Computação Móvel J2ME Java 2 Platform (1) Java 2 Standard Edition (J2SE) Desktop applications Java 2 Enterprise Edition (J2EE) Server applications Java 2 Micro Edition (J2ME) Handheld/embedded devices

Leia mais

BrokerCell: programando celular com J2ME para cotar papéis na Bovespa

BrokerCell: programando celular com J2ME para cotar papéis na Bovespa BrokerCell: programando celular com J2ME para cotar papéis na Bovespa Nairon Neri Silva 1, Luís Augusto Mattos Mendes(Orientador) 1 1 Ciência da Computação - Universidade Presidente Antônio Carlos (UNIPAC)

Leia mais

Como dito anteriormente, a JCP especificou dois grupos para a J2ME conforme as necessidades dos dispositvos, chamadas Configurações:

Como dito anteriormente, a JCP especificou dois grupos para a J2ME conforme as necessidades dos dispositvos, chamadas Configurações: 1 TECNOLOGIA J2ME A J2ME, Java Micro Edition, é uma tecnologia que permite o desenvolvimento de aplicações Java para dispositivos com poder de processamento, vídeo e memória limitados. Possui uma coleção

Leia mais

J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS

J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS Ana Paula Carrion 1, Késsia Rita da Costa Marchi 1, Jaime Willian Dias 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil anapaulacarrion@hotmail.com,

Leia mais

ruirossi@ruirossi.pro.br

ruirossi@ruirossi.pro.br Java ME Introdução Rui Rossi dos Santos ruirossi@ruirossi.pro.br Mediador: Rui Rossi dos Santos Slide 1 Fundamentos Edições do Java JSE JEE JME JSE JEE MIDP Nível de Perfil CDC CLDC Nível de Configuração

Leia mais

DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION

DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION DESENVOLVIMENTO DE APLICATIVOS PARA CELULAR JAVA 2 MICRO EDITION Robison Cris Brito Centro Federal de Educação Tecnológica do Paraná Unidade de Pato Branco robison@pb.cefetpr.br RESUMO Engana-se quem acha

Leia mais

Marcus Vinicius Cruz Xavier. Rascunho do trabalho de conclusão de curso

Marcus Vinicius Cruz Xavier. Rascunho do trabalho de conclusão de curso Universidade Federal de Santa Catarina Departamento de Informática e Estatística Curso de Bacharelado em Ciências da Computação Marcus Vinicius Cruz Xavier Rascunho do trabalho de conclusão de curso Título

Leia mais

Conexão Socket na MIDP

Conexão Socket na MIDP Conexão Socket na MIDP A comunicação entre diferentes sistemas é comum na programação, e esta regra não desaparece na construção de aplicativos para pequenos dispositivos e, consequentemente, com o Java

Leia mais

INTEGRANDO A TECNOLOGIA J2ME NO ÂMBITO ACADÊMICO

INTEGRANDO A TECNOLOGIA J2ME NO ÂMBITO ACADÊMICO INTEGRANDO A TECNOLOGIA J2ME NO ÂMBITO ACADÊMICO Ramon R. Rabello, Pedro J. Treccani, Thienne M Johnson Universidade da Amazônia, Av Alcindo Cacela, 287, Belém, PA CEP 66092-010 ramon.rabello@gmail.com,

Leia mais

Arquitectura de Sistemas Computacionais

Arquitectura de Sistemas Computacionais Arquitectura de Sistemas Computacionais Práticas 2004-2005 Prof. Dr. Paulo Sampaio psampaio@uma.pt Departamento de Matemática e Engenharias UNIVERSIDADE DA MADEIRA O ambiente J2ME MIDlets Bluetooth 1 Pacotes

Leia mais

CONECTIVIDADE. Desenvolvimento de Sistemas WEb Computação Móvel

CONECTIVIDADE. Desenvolvimento de Sistemas WEb Computação Móvel CONECTIVIDADE Desenvolvimento de Sistemas WEb Computação Móvel Conectividade em Java ME Conectividade( redes) em Java ME: Flexível para suportar uma variedade de dispositivos Muitos dispositivos específicos

Leia mais

APIs PARA J2ME. JSR 120 (SMS), JSR 205 (WMAPI 2.0) e JSR 180 (SIP) TÓPICOS EM ENGENHARIA DE COMPUTAÇÃO V. Prof. José Mario De Martino

APIs PARA J2ME. JSR 120 (SMS), JSR 205 (WMAPI 2.0) e JSR 180 (SIP) TÓPICOS EM ENGENHARIA DE COMPUTAÇÃO V. Prof. José Mario De Martino APIs PARA J2ME JSR 120 (SMS), JSR 205 (WMAPI 2.0) e JSR 180 (SIP) TÓPICOS EM ENGENHARIA DE COMPUTAÇÃO V Prof. José Mario De Martino ALUNO: Julian Mauricio Prada Sanmiguel RA: 079928 Grupo 6 1 ÍNDICE. ÍNDICE

Leia mais

Prime: uma solução Java para acesso móvel a informações utilizando GSM/GPRS

Prime: uma solução Java para acesso móvel a informações utilizando GSM/GPRS Prime: uma solução Java para acesso móvel a informações utilizando GSM/GPRS RENATO BARBOSA MIRANDA VALESKA PIVOTO PATTA MARCONDES Inatel - Instituto Nacional de Telecomunicações ICC - Inatel Competence

Leia mais

Prática de Programação J2ME (15) Especialização em Desenvolvimento Web com Interfaces Ricas www.especializacao.info

Prática de Programação J2ME (15) Especialização em Desenvolvimento Web com Interfaces Ricas www.especializacao.info Prática de Programação J2ME (15) Especialização em Desenvolvimento Web com Interfaces Ricas www.especializacao.info Crie a aplicação correspondente aos itens seguintes. Execute o programa e observe os

Leia mais

Arquitectura de Sistemas Computacionais

Arquitectura de Sistemas Computacionais Arquitectura de Sistemas Computacionais Práticas 2004-2005 Prof. Dr. Paulo Sampaio Departamento de Matemática e Engenharias UNIVERSIDADE DA MADEIRA A plataforma Nokia Series 60 Optimizado para Symbian

Leia mais

DESENVOLVIMENTO DE SOFTWARE PARA DISPOSITIVOS MÓVEIS

DESENVOLVIMENTO DE SOFTWARE PARA DISPOSITIVOS MÓVEIS DESENVOLVIMENTO DE SOFTWARE PARA DISPOSITIVOS MÓVEIS Aluno: Fábio Bicalho de Araujo Orientador: Marco Antonio Grivet Matoso Maia Introdução Um fato da atualidade: o mundo está se tornando cada vez mais

Leia mais

Programação para Celular com Java Tipos de Tela

Programação para Celular com Java Tipos de Tela Programação para Celular com Java Tipos de Tela 1/18 Objetivo: Capacitar o aluno a desenvolver aplicações para celular utilizando janelas dos tipos Alert List Item : ChoiceGroup, DateField e ImageItem

Leia mais

Capítulo 15 - VendaRemota.java

Capítulo 15 - VendaRemota.java Capítulo 15 - VendaRemota.java /* Java para Dispositivos Móveis - Desenvolvendo aplicações com J2ME por Thienne M. Johnson Novatec Editora LTDa ISBN: 978-85-7522-143-3 */ package principal; import conexao.getpostregistros;

Leia mais

UNIDADE II JAVA SERVLETS

UNIDADE II JAVA SERVLETS UNIDADE II JAVA SERVLETS INTERNET É uma rede de redes, reunindo computadores do Governo, de universidades e empresas fornecendo infra-estrutura para uso de bancos de dados, correio eletrônico, servidores

Leia mais

Extensões MIDP para Web Services

Extensões MIDP para Web Services Extensões MIDP para Web Services INF-655 Computação Móvel Universidade Federal de Viçosa Departamento de Informática MIDP Architecture MIDP = Mobile Information Device Profile Connection Framework HttpConnection

Leia mais

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas Conteúdo Programático Nomeclaturas JDK JRE JEE JSE JME JVM Toolkits Swing AWT/SWT JDBC EJB JNI JSP Conteúdo Programático Nomenclatures

Leia mais

Um pouco mais que Hello World

Um pouco mais que Hello World Um pouco mais que Hello World Leonardo Gall Este artigo tem como objetivo preparar não só um ambiente de desenvolvimento J2ME de uma maneira simples e prática, mostrando e explicando passo a passo tudo

Leia mais

FINAL: CÓDIGO-FONTE DA MIDLET

FINAL: CÓDIGO-FONTE DA MIDLET FINAL: CÓDIGO-FONTE DA MIDLET Para fins de conferência, seguem os códigos-fontes alterados. Este código-fonte encontra-se no arquivo chamado ColetorMIDlet.java: package coletor; import br.edu.estacio.produto;

Leia mais

Arcabouços de Software para Desenvolvimento de Aplicações Embarcadas. Herman Martins Gomes - hmg@dsc.ufcg.edu.br

Arcabouços de Software para Desenvolvimento de Aplicações Embarcadas. Herman Martins Gomes - hmg@dsc.ufcg.edu.br Arcabouços de Software para Desenvolvimento de Aplicações Embarcadas Herman Martins Gomes - hmg@dsc.ufcg.edu.br Ementa Introdução a Dispositivos Móveis Portáteis, Aplicações Embarcadas e J2ME, Interface

Leia mais

Felipe Guimarães (luiz.guimaraes@unibratec.edu.br)

Felipe Guimarães (luiz.guimaraes@unibratec.edu.br) Programação Mobile Luiz Felipe S. L. Guimarães luiz.guimaraes@unibratec.edu.br Tópicos Abordados Desafios do mundo mobile Tecnologias móveis, vantagens e desvantagens Introdução ao Java ME Ambiente de

Leia mais

UNIJUI - UNIVERSIDADE REGIONAL DO NOROESTE DO ESTADO DO RIO GRANDE DO SUL DETEC DEPARTAMENTO DE TECNOLOGIA

UNIJUI - UNIVERSIDADE REGIONAL DO NOROESTE DO ESTADO DO RIO GRANDE DO SUL DETEC DEPARTAMENTO DE TECNOLOGIA UNIJUI - UNIVERSIDADE REGIONAL DO NOROESTE DO ESTADO DO RIO GRANDE DO SUL DETEC DEPARTAMENTO DE TECNOLOGIA AMBIENTE PARA DESENVOLVIMENTO DE APLICATIVOS PARA DISPOSITIVOS MÓVEIS COM SISTEMA OPERACIONAL

Leia mais

DESENVOLVIMENTO DE SOFTWARE PARA DISPOSITIVOS MÓVEIS

DESENVOLVIMENTO DE SOFTWARE PARA DISPOSITIVOS MÓVEIS DESENVOLVIMENTO DE SOFTWARE PARA DISPOSITIVOS MÓVEIS Aluno: Fábio Bicalho de Araujo Orientador: Marco Antonio Grivet Matoso Maia Introdução Um fato da atualidade: o mundo está se tornando cada vez mais

Leia mais

Arquitetura de uma Webapp

Arquitetura de uma Webapp Arquitetura de uma Webapp Arquitetura J2EE Containers e componentes MVC: introdução Frederico Costa Guedes Pereira 2006 fredguedespereira@gmail.com Plataforma J2EE World Wide Web e a Economia da Informação

Leia mais

JSR 120 (SMS), JSR 205 (WMAPI 2.0) JULIAN PRADA SANIMIGUEL Grupo 6

JSR 120 (SMS), JSR 205 (WMAPI 2.0) JULIAN PRADA SANIMIGUEL Grupo 6 JSR 120 (SMS), JSR 205 (WMAPI 2.0) e JSR 180 (SIP) JULIAN PRADA SANIMIGUEL Grupo 6 Protocolo SIP Desenho do Protocolo Funcionamento do Protocolo API JSR 180 (SIP) Exemplos Protocolo de iniciação de sessão

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel A linguagem JAVA A linguagem Java O inicio: A Sun Microsystems, em 1991, deu inicio ao Green Project chefiado por James Gosling. Projeto que apostava

Leia mais

4 MODELAGEM DA APLICAÇÃO J2ME

4 MODELAGEM DA APLICAÇÃO J2ME 4 MODELAGEM DA APLICAÇÃO J2ME O Sistema de Apoio Policial tem como objetivo facilitar o trabalho da Polícia Militar. Utilizando tecnologias recentes descritas nos capítulos anteriores, este sistema propõe

Leia mais

Manual de Operação Aplicativo ClickIt

Manual de Operação Aplicativo ClickIt Manual de Operação Aplicativo ClickIt Rev. 1.1 Agosto/2010 GSControl Automação Ltda. Rua Washington Luiz, 675 ITC Conjunto 1101 Centro Porto Alegre RS CEP 90010-460 Telefone: (51)3026-0945 / (51)3287-2167

Leia mais

KLEBER MORO SAMPAIO ACESSO A BANCO DE DADOS EM DISPOSITIVOS MÓVEIS UTILIZANDO J2ME

KLEBER MORO SAMPAIO ACESSO A BANCO DE DADOS EM DISPOSITIVOS MÓVEIS UTILIZANDO J2ME FUNDAÇÃO DE ENSINO EURÍPIDES SOARES DA ROCHA CENTRO UNIVERSITÁRIO EURÍPIDES DE MARÍLIA UNIVEM BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO KLEBER MORO SAMPAIO ACESSO A BANCO DE DADOS EM DISPOSITIVOS MÓVEIS UTILIZANDO

Leia mais

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04 Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04 Agenda 1. 2. Web Container TomCat 2 3 J2EE permite criar aplicações Web dinâmicas (com conteúdo dinâmico)

Leia mais

ANDRÉ LUIS GUIMARÃES CRUZ UM FRAMEWORK JAVA PARA DISPOSITIVOS WIRELESS

ANDRÉ LUIS GUIMARÃES CRUZ UM FRAMEWORK JAVA PARA DISPOSITIVOS WIRELESS FUNDAÇÃO DE ENSINO EURÍPIDES SOARES DA ROCHA CENTRO UNIVERSITÁRIO EURÍPIDES DE MARÍLIA UNIVEM BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO ANDRÉ LUIS GUIMARÃES CRUZ UM FRAMEWORK JAVA PARA DISPOSITIVOS WIRELESS

Leia mais

Tecnologia Java. Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br

Tecnologia Java. Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Tecnologia Java Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Origem da Tecnologia Java Projeto inicial: Oak (liderado por James Gosling) Lançada em 1995 (Java) Tecnologia

Leia mais

Daniel Ricardo dos Santos Diogo de Campos Mauricio Oliveira Haensch. Desenvolvendo Jogos com Java ME

Daniel Ricardo dos Santos Diogo de Campos Mauricio Oliveira Haensch. Desenvolvendo Jogos com Java ME Daniel Ricardo dos Santos Diogo de Campos Mauricio Oliveira Haensch Desenvolvendo Jogos com Java ME Daniel Ricardo dos Santos Diogo de Campos Mauricio Oliveira Haensch Desenvolvendo Jogos com Java ME PET

Leia mais

Marco Aurélio malbarbo@din.uem.br. Uma Visão Geral Sobre Plataforma Java

Marco Aurélio malbarbo@din.uem.br. Uma Visão Geral Sobre Plataforma Java RedFoot J Dukes Uma Visão Geral Sobre Plataforma Java Marco Aurélio malbarbo@din.uem.br 1 Roteiro Objetivos Plataforma Java Linguagem de Programação Maquina Virtual Tecnologias Conclusão 2 Objetivos Geral

Leia mais

Interfaces Dinâmicas e Adaptativas para Celulares

Interfaces Dinâmicas e Adaptativas para Celulares Interfaces Dinâmicas e Adaptativas para Celulares Flavio Henrique Cardoso de Freitas, Silvano Maneck Malfatti Faculdade Católica do Tocantins (FACTO) Palmas TO Brasil {flaviohcf,silvanomalfatti}@hotmail.com

Leia mais

TRABALHO DE FINAL DE CURSO TECNOLOGIA J2ME: JAVA 2 MICRO EDITION

TRABALHO DE FINAL DE CURSO TECNOLOGIA J2ME: JAVA 2 MICRO EDITION TRABALHO DE FINAL DE CURSO TECNOLOGIA J2ME: JAVA 2 MICRO EDITION SANDRO DINIZ VALENTE 2005 ii SANDRO DINIZ VALENTE TECNOLOGIA J2ME: JAVA 2 MICRO EDITION Trabalho de Fim de Curso apresentado à Uniminas,

Leia mais

UNIVERSIDADE. Sistemas Distribuídos

UNIVERSIDADE. Sistemas Distribuídos UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira Neto Web Services Web Services Existem diferentes tipos de comunicação em um sistema distribuído: Sockets Invocação

Leia mais

J2EE. Exemplo completo Utilização Servlet. Instrutor HEngholmJr

J2EE. Exemplo completo Utilização Servlet. Instrutor HEngholmJr J2EE Exemplo completo Utilização Servlet Instrutor HEngholmJr Page 1 of 9 AT09 Exemplo complete Utilização Servlet Version 1.1 December 5, 2014 Indice 1. BASEADO NOS EXEMPLOS DE CÓDIGO DESTA APOSTILA,

Leia mais

JavaNoroeste Grupo de Usuários Java do Noroeste Paulista. A tecnologia Java do mundo corporativo ao dispositivo móvel

JavaNoroeste Grupo de Usuários Java do Noroeste Paulista. A tecnologia Java do mundo corporativo ao dispositivo móvel JavaNoroeste Grupo de Usuários Java do Noroeste Paulista A tecnologia Java do mundo corporativo ao dispositivo móvel Carlos Fernando Gonçalves Mestre em Engenharia de Computação, área de concentração Engenharia

Leia mais

FACULDADE DE TECNOLOGIA SENAC PELOTAS CURSO TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS LUTHIANO RODRIGUES VENECIAN

FACULDADE DE TECNOLOGIA SENAC PELOTAS CURSO TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS LUTHIANO RODRIGUES VENECIAN FACULDADE DE TECNOLOGIA SENAC PELOTAS CURSO TECNÓLOGO EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS LUTHIANO RODRIGUES VENECIAN SISTEMA PARA GERENCIAMENTO DE COLABORADORES UTILIZANDO DISPOSITIVOS MÓVEIS PELOTAS

Leia mais

Consumindo um Web Service através de uma Aplicação Comercial em Android. Alex Malmann Becker www.alex.porthal.com.br alex@porthal.com.

Consumindo um Web Service através de uma Aplicação Comercial em Android. Alex Malmann Becker www.alex.porthal.com.br alex@porthal.com. Consumindo um Web Service através de uma Aplicação Comercial em Android Alex Malmann Becker www.alex.porthal.com.br alex@porthal.com.br 08/2014 Agenda Introdução Conceitos Web Service Por que utilizar

Leia mais

Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010

Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010 Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010 Primeira Dica Afirmação O que é Java? Características do Java Como Java Funciona Plataforma Java Edições Java Java SE Java EE Java ME

Leia mais

KATIA GOMES DA SILVA COMPARATIVO ENTRE AS PLATAFORMAS J2ME E.NET COMPACT FRAMEWOK PARA DESENVOLVIMENTO DE APLICAÇÕES PARA DISPOSITIVOS MÓVEIS

KATIA GOMES DA SILVA COMPARATIVO ENTRE AS PLATAFORMAS J2ME E.NET COMPACT FRAMEWOK PARA DESENVOLVIMENTO DE APLICAÇÕES PARA DISPOSITIVOS MÓVEIS KATIA GOMES DA SILVA COMPARATIVO ENTRE AS PLATAFORMAS J2ME E.NET COMPACT FRAMEWOK PARA DESENVOLVIMENTO DE APLICAÇÕES PARA DISPOSITIVOS MÓVEIS Palmas TO 2006 2 KATIA GOMES DA SILVA COMPARATIVO ENTRE AS

Leia mais

Desenvolvimento de Jogos para Celular usando Java ME: o Jogo Batalha Terrestre

Desenvolvimento de Jogos para Celular usando Java ME: o Jogo Batalha Terrestre Desenvolvimento de Jogos para Celular usando Java ME: o Jogo Batalha Terrestre Andrea Fernanda Fontes Bezerra Centro Federal de Educação Tecnológica da Paraíba Unidade Acadêmica de Informática e-mail:

Leia mais

Desenvolvendo Aplicações Web com NetBeans

Desenvolvendo Aplicações Web com NetBeans Desenvolvendo Aplicações Web com NetBeans Aula 3 Cap. 4 Trabalhando com Banco de Dados Prof.: Marcelo Ferreira Ortega Introdução O trabalho com banco de dados utilizando o NetBeans se desenvolveu ao longo

Leia mais

3 Serviços na Web (Web services)

3 Serviços na Web (Web services) 3 Serviços na Web (Web services) 3.1. Visão Geral Com base na definição do Word Wide Web Consortium (W3C), web services são aplicações autocontidas, que possuem interface baseadas em XML e que descrevem

Leia mais

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4 Sistemas Distribuídos Capítulos 3 e 4 - Aula 4 Aula passada Threads Threads em SDs Processos Clientes Processos Servidores Aula de hoje Clusters de Servidores Migração de Código Comunicação (Cap. 4) Fundamentos

Leia mais

Estudo comparativo entre tecnologias Java: Applet e JWS.

Estudo comparativo entre tecnologias Java: Applet e JWS. Estudo comparativo entre tecnologias Java: Applet e JWS. Clara Aben-Athar B. Fernandes¹, Carlos Alberto P. Araújo¹ 1 Centro Universitário Luterano de Santarém Comunidade Evangélica Luterana (CEULS/ULBRA)

Leia mais

Java para Desenvolvimento Web

Java para Desenvolvimento Web Java para Desenvolvimento Web Servlets A tecnologia Servlet foi introduzida pela Sun Microsystems em 1996, aprimorando e estendendo a funcionalidade e capacidade de servidores Web. Servlets é uma API para

Leia mais

Java Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da

Java Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da Java Laboratório Aula 1 Programação orientada a objetos Profa. Renata e Cristiane Introdução a Plataforma Java O que é Java? Tecnologia Linguagem de Programação Ambiente de Execução (JVM) Tudo isso é a

Leia mais

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse

Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse Como criar um EJB Criando um projeto EJB com um cliente WEB no Eclipse Gabriel Novais Amorim Abril/2014 Este tutorial apresenta o passo a passo para se criar um projeto EJB no Eclipse com um cliente web

Leia mais

Kassius Vargas Prestes

Kassius Vargas Prestes Kassius Vargas Prestes Agenda 1. Introdução Web Services 2. XML, SOAP 3. Apache Tomcat 4. Axis 5. Instalação Tomcat e Axis 6. Criação de um Web Service 7. Criação de um cliente Baixar http://www.inf.ufrgs.br/~kvprestes/webservices/

Leia mais

DESENVOLVIMENTO DE APLICATIVOS PARA DISPOSITIVOS MÓVEIS NA PLATAFORMA J2ME

DESENVOLVIMENTO DE APLICATIVOS PARA DISPOSITIVOS MÓVEIS NA PLATAFORMA J2ME DESENVOLVIMENTO DE APLICATIVOS PARA DISPOSITIVOS MÓVEIS NA PLATAFORMA J2ME Trabalho de Conclusão de Curso Engenharia da Computação Bruna Georgina Bunzen de Albuquerque Romeiro Orientador: Sérgio Castelo

Leia mais

Associação Carioca de Ensino Superior Centro Universitário Carioca

Associação Carioca de Ensino Superior Centro Universitário Carioca Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos

Leia mais

J2EE. J2EE - Surgimento

J2EE. J2EE - Surgimento J2EE Java 2 Enterprise Edition Objetivo: Definir uma plataforma padrão para aplicações distribuídas Simplificar o desenvolvimento de um modelo de aplicações baseadas em componentes J2EE - Surgimento Início:

Leia mais

Desenvolvimento de Aplicações Móveis com J2ME. Andrea foi a primeira colocada no I Concurso Teleco de Trabalhos de Conclusão de Curso (TCC) 2005.

Desenvolvimento de Aplicações Móveis com J2ME. Andrea foi a primeira colocada no I Concurso Teleco de Trabalhos de Conclusão de Curso (TCC) 2005. Desenvolvimento de Aplicações Móveis com J2ME Andrea Rodrigues de Amorim 1º Colocado I Concurso Teleco de TCC's 2005 Andrea foi a primeira colocada no I Concurso Teleco de Trabalhos de Conclusão de Curso

Leia mais

Aula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/

Aula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Aula 09 Introdução à Java Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Agenda da Aula Java: Sintaxe; Tipos de Dados; Variáveis; Impressão de Dados.

Leia mais

Algoritmos e Programação 2. Introdução à Programação Orientada a Objetos. Orientação a Objetos. O que é um paradigma de programação?

Algoritmos e Programação 2. Introdução à Programação Orientada a Objetos. Orientação a Objetos. O que é um paradigma de programação? Algoritmos e Programação 2 Baseado no material do Prof. Júlio Pereira Machado Introdução à Programação Orientada a Objetos O que é um paradigma de programação? É um padrão conceitual que orienta soluções

Leia mais

MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S. Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick

MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S. Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento

Leia mais

OSGi Um Sistema Dinâmico de Módulos para Java

OSGi Um Sistema Dinâmico de Módulos para Java OSGi Um Sistema Dinâmico de Módulos para Java Raoni Kulesza raoni@larc.usp.br MAC-5863 Sistemas de Middleware Avançados 2006/2 Prof. Dr. Francisco Reverbel IME-USP, 28/11/2006 Agenda Introdução Arquitetura

Leia mais

Curso de Java. Geração de Páginas WEB. TodososdireitosreservadosKlais

Curso de Java. Geração de Páginas WEB. TodososdireitosreservadosKlais Curso de Java Geração de Páginas WEB Aplicação WEB Numa aplicação WEB de conteúdo dinâmico As páginas são construídas a partir de dados da aplicação (mantidos num banco de dados). Usuários interagem com

Leia mais

Desenvolvimento de Aplicativos Móveis com Bluetooth Utilizando a Plataforma Java Micro Edition

Desenvolvimento de Aplicativos Móveis com Bluetooth Utilizando a Plataforma Java Micro Edition Desenvolvimento de Aplicativos Móveis com Bluetooth Utilizando a Plataforma Java Micro Edition Índice 1. Introdução 1.1. Desafios no Desenvolvimento de Aplicativos para Celular 1.2. O que é Java Micro

Leia mais

Otimização de Código na Criação de Animação Gráfica para Dispositivos Móveis, utilizando J2ME

Otimização de Código na Criação de Animação Gráfica para Dispositivos Móveis, utilizando J2ME Otimização de Código na Criação de Animação Gráfica para Dispositivos Móveis, utilizando J2ME Fábio Ottoni Júlio 1, Lívia Márcia Silva 1 1 Departamento de Ciência da Computação DCC Universidade Presidente

Leia mais

Digifort Mobile Manual Version 1.0 Rev. A

Digifort Mobile Manual Version 1.0 Rev. A Digifort Mobile Manual Version 1.0 Rev. A 2 Digifort Mobile - Versão 1.0 Índice Parte I Bem vindo ao Manual do Digifort Mobile 1.0 5 1 Screen... Shots 5 2 A quem... se destina este manual 5 3 Como utilizar...

Leia mais

Tutorial Java ME. Deixe o JME surpreender você também! Porque programar com 1 GB de RAM é fácil!! Neto Marin

Tutorial Java ME. Deixe o JME surpreender você também! Porque programar com 1 GB de RAM é fácil!! Neto Marin Deixe o JME surpreender você também! Porque programar com 1 GB de RAM é fácil!! Neto Marin Apresentação Experiência com Java desde 2002 (SCJP): Atuando com mobilidade desde 2005 P&D do Mobile Sys da Softway

Leia mais

Criando e Entendendo o Primeiro Servlet Por: Raphaela Galhardo Fernandes

Criando e Entendendo o Primeiro Servlet Por: Raphaela Galhardo Fernandes Criando e Entendendo o Primeiro Servlet Por: Raphaela Galhardo Fernandes Resumo Neste tutorial serão apresentados conceitos relacionados a Servlets. Ele inicial como uma breve introdução do funcionamento

Leia mais

Introdução a Linguagem

Introdução a Linguagem Introdução a Linguagem Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 03 Introdução a Linguagem Java 1 Conteúdo Máquina Virtual (JVM) Histórico de Java Case Sensitive Tipos Primitivos Tipo String

Leia mais

PADRÕES DE PROJETOS NO DESENVOLVIMENTO DE APLICAÇÕES J2ME

PADRÕES DE PROJETOS NO DESENVOLVIMENTO DE APLICAÇÕES J2ME PADRÕES DE PROJETOS NO DESENVOLVIMENTO DE APLICAÇÕES J2ME Trabalho de Conclusão de Curso Engenharia da Computação Filipe da Silva Regueira Orientador: Prof. Dr. Márcio Lopes Cornélio Recife, 3 de julho

Leia mais

FAMINAS BH - FACULDADE DE MINAS CURSO DE SISTEMAS DE INFORMAÇÃO ALEXSANDRO GOMES DA SILVA CEZAR AUGUSTO SANTOS DE OLIVEIRA VAGNER JOSÉ DE SOUZA

FAMINAS BH - FACULDADE DE MINAS CURSO DE SISTEMAS DE INFORMAÇÃO ALEXSANDRO GOMES DA SILVA CEZAR AUGUSTO SANTOS DE OLIVEIRA VAGNER JOSÉ DE SOUZA FAMINAS BH - FACULDADE DE MINAS CURSO DE SISTEMAS DE INFORMAÇÃO ALEXSANDRO GOMES DA SILVA CEZAR AUGUSTO SANTOS DE OLIVEIRA VAGNER JOSÉ DE SOUZA O CRESCIMENTO DA MOBILIDADE E O ESTUDO DA TECNOLOGIA JAVA

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 1: Introdução MEEC@IST Java 1/27 História versões (1) [1995] Versão 1.0, denominada Java Development Kit (JDK) 212 classes em 8 pacotes Lento, muitos bugs, mas com Applets

Leia mais

SyncEasy Aplicativo para sincronização de arquivos entre dispositivos móveis e computadores utilizando metadados

SyncEasy Aplicativo para sincronização de arquivos entre dispositivos móveis e computadores utilizando metadados SyncEasy Aplicativo para sincronização de arquivos entre dispositivos móveis e computadores utilizando metadados Acadêmico: Bernardo Marquardt Müller Orientador: Prof. Dr. Mauro Marcelo Mattos Roteiro

Leia mais

Programação Web Aula 12 - Java Web Software

Programação Web Aula 12 - Java Web Software Programação Web Aula 12 - Java Web Software Bruno Müller Junior Departamento de Informática UFPR 25 de Maio de 2015 1 Java 2 Java Web Software 3 Servlets Modelo de Trabalho Funcionamento API Java Código

Leia mais

Fundamentos de Java. Prof. Marcelo Cohen. 1. Histórico

Fundamentos de Java. Prof. Marcelo Cohen. 1. Histórico Fundamentos de Java Prof. Marcelo Cohen 1. Histórico 1990 linguagem Oak; desenvolvimento de software embutido para eletrodomésticos S.O. para o controle de uma rede de eletrodomésticos o surgimento da

Leia mais

Desenvolvimento Web com JSP/Servlets

Desenvolvimento Web com JSP/Servlets Desenvolvimento Web com JSP/Servlets Requisitos Linguagem Java; Linguagem SQL; Noções de HTML; Noções de CSS; Noções de Javascript; Configuração do ambiente JDK APACHE TOMCAT MySQL Instalando o JDK Instalando

Leia mais

UNIVERSIDADE FEDERAL DE VIÇOSA CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS DEPARTAMENTO DE INFORMÁTICA. Pizzaria Manão

UNIVERSIDADE FEDERAL DE VIÇOSA CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS DEPARTAMENTO DE INFORMÁTICA. Pizzaria Manão UNIVERSIDADE FEDERAL DE VIÇOSA CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS DEPARTAMENTO DE INFORMÁTICA Pizzaria Manão Emilio Gonçalves 41281 Fabrício Luís Santos da Silva 50293 Filipe Ribeiro Nalon 50295

Leia mais

Desenvolvimento Web TCC-00.226 Turma A-1

Desenvolvimento Web TCC-00.226 Turma A-1 Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Arquitetura de Aplicações Distribuídas na Web Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226

Leia mais

Plataforma para Agentes

Plataforma para Agentes Plataforma para es JATLite - Java Template, Lite O que é o JATLite? http://java.stanford.edu/ http://www.fe.up.pt/~eol/aiad/jatlite/doc/index.html Pacote de programas em Java permitindo: rápida criação

Leia mais

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. Servlets A,L,F,M

PadrãoIX. Módulo II JAVA. Marcio de Carvalho Victorino. Servlets A,L,F,M JAVA Marcio de Carvalho Victorino 1 Servlets 2 1 Plataforma WEB Baseada em HTTP (RFC 2068): Protocolo simples de transferência de arquivos Sem estado (não mantém sessão aberta) Funcionamento (simplificado):

Leia mais

PROTÓTIPO DE UM SISTEMA DE CONTROLE E MONITORAÇÃO RESIDENCIAL UTILIZANDO J2ME

PROTÓTIPO DE UM SISTEMA DE CONTROLE E MONITORAÇÃO RESIDENCIAL UTILIZANDO J2ME UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS TECNOLÓGICAS CURSO DE ENGENHARIA DE TELECOMUNICAÇOES BACHARELADO PROTÓTIPO DE UM SISTEMA DE CONTROLE E MONITORAÇÃO RESIDENCIAL UTILIZANDO J2ME ANDERSON

Leia mais

Diamond Powder - um framework Java ME para coleta de dados

Diamond Powder - um framework Java ME para coleta de dados Artigo GUJ.com.br Diamond Powder - um framework Java ME para coleta de dados Autor Renato Bellia: é formado em Engenharia de Computadores, trabalha com Java EE a mais de 08 anos, e atualmente está utilizando

Leia mais