Capítulo 14 - LoginMidlet2.java - Desenvolvendo Aplicações com

Propaganda
Java para Dispositivos Móveis - Desenvolvendo Aplicações com J2ME
Capítulo 14 - LoginMidlet2.java
/*
Java para Dispositivos Móveis - Desenvolvendo aplicações com J2ME
por Thienne M. Johnson
Novatec Editora LTDa
ISBN: 978-85-7522-143-3
*/
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;
import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.AlertType;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.TextBox;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.MIDlet;
public class LoginMidlet2 extends MIDlet implements CommandListener, Runnable {
private Display display;
private Form tlogin;
private TextField nome;
private TextField senha;
private TextBox tlogado;
private Alert alertalogin;
private Alert alertaerro;
private Command cancelar;
private Command login;
private String resposta = null;
private Thread t = null;
String URL = "http://localhost:8080/MyServlets/LoginServlet2";
public LoginMidlet2() {
tlogin = new Form("Login do Aplicativo");
tlogado = new TextBox("Usuario Validado","", 20, TextField.ANY);
cancelar = new Command("Cancelar", Command.EXIT, 0);
login = new Command("OK", Command.OK, 1);
alertaerro = new Alert("Login Incorreto", "Tente Novamente", null, AlertType.ERROR);
nome = new TextField ("Nome:", "", 20, TextField.ANY);
senha = new TextField ("Senha:", "", 10, TextField.PASSWORD);
}
public void startApp() {
display = Display.getDisplay(this);
tlogin.append(nome);
tlogin.append(senha);
tlogin.addCommand(cancelar);
tlogin.addCommand(login);
tlogin.setCommandListener(this);
display.setCurrent(tlogin);
tlogado.addCommand(cancelar);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
notifyDestroyed();
http://j2me.datamazon.com
Fornecido por Joomla!
Produzido em: 28 May, 2017, 07:42
Java para Dispositivos Móveis - Desenvolvendo Aplicações com J2ME
}
public void tenteNovamente() {
alertaerro.setTimeout(Alert.FOREVER);
nome.setString("");
senha.setString("");
display.setCurrent(alertaerro, tlogin);
}
public void chamaServlet() throws IOException {
HttpConnection conexao = null;
OutputStream OS = null;
InputStream IS = null;
StringBuffer buff = new StringBuffer();
try {
conexao = (HttpConnection)Connector.open(URL);
conexao.setRequestMethod(HttpConnection.POST);
conexao.setRequestProperty("IF-Modified-Since", "20 Jan 2001 16:19:14 GMT");
conexao.setRequestProperty("User-Agent","Profile/MIDP-1.0 Configuration/CLDC-1.0");
conexao.setRequestProperty("Content-Language", "en-CA");
OS = conexao.openOutputStream();
byte mensagemPost[] = (nome.getString()+","+senha.getString()).getBytes();
for(int i=0;i<mensagemPost.length;i++) {
OS.write(mensagemPost[i]);
}
OS.flush();
IS = conexao.openInputStream();
int dadosEntrada;
while ((dadosEntrada = IS.read()) != -1) {
buff.append((char) dadosEntrada);
}
resposta = buff.toString();
if (resposta.startsWith("validado")) { //usuario cadastrado
alertalogin = new Alert ("Login","Usuário validado!",null, AlertType.CONFIRMATION);
alertalogin.setTimeout(Alert.FOREVER);
tlogado.setString("Bem vindo(a)!");
tlogado.setCommandListener(this);
display.setCurrent(alertalogin,tlogado);
} else { //usuario não encontrado
tenteNovamente();
}
} finally {
if(OS!= null) {
OS.close();
}
if(IS!= null) {
IS.close();
}
if(conexao != null) {
conexao.close();
}
}
}
private void connectThread(){
t = new Thread(this);
t.start();
}
public void run(){
try{chamaServlet();}catch (Exception e){}
}
public void commandAction(Command c, Displayable d) {
String label = c.getLabel();
http://j2me.datamazon.com
Fornecido por Joomla!
Produzido em: 28 May, 2017, 07:42
Java para Dispositivos Móveis - Desenvolvendo Aplicações com J2ME
if(label.equals("Cancelar")) {
destroyApp(true); // fecha a aplicação
}else if(label.equals("OK")) {
connectThread();
}
}
}
http://j2me.datamazon.com
Fornecido por Joomla!
Produzido em: 28 May, 2017, 07:42
Download