Olá pessoal!
Estou tentando montar um sistema de login pra um app meu em J2ME, estou utilizando um banco interno.
O problema é que não estou conseguindo alterar a senha de um determinado usuário, meu metodo de atualizar senha simplesmente parece nao funcionar, ou o problema está no metodo que carrega os dados do banco?
me ajudem, por favor.
Aqui se encontra o código:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package hello;
import java.io.*;
import java.util.Vector;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
import javax.microedition.rms.RecordEnumeration;
import javax.microedition.rms.RecordStore;
import javax.microedition.rms.RecordStoreNotOpenException;
/**
* @author cleiton
*/
public class Midlet extends MIDlet {
String ladmin,sadmin,adminid;
String llimpeza,slimpeza,limpezaid;
String lseguranca,sseguranca,segurancaid;
String lmanutencao,smanutencao,manutencaoid;
String latividades,satividades,atividadesid;
String lsegredo,ssegredo,segredoid;
String mbanco;
int perfil = 89;
private RecordStore rs;
private RecordEnumeration re;
private Vector vetor = new Vector();
private int indice,indice2;
private boolean novo;
private int defaultindex,defaultindex2;
private int flag = 0;
int contador=0;
String[] global = new String[5];
private Display display;
private Form principal = new Form("principal");
String lista = "";
public void startApp() {
display = Display.getDisplay(this);
display.setCurrent(principal);
criaBD();
insereRegDefault("|adin|admin|1|ad123|adfim|");
insereRegDefault("|liin|limpeza|2|li123|lifim|");
insereRegDefault("|main|manutencao|3|ma123|mafim|");
insereRegDefault("|sein|seguranca|4|se123|sefim|");
insereRegDefault("|atin|atividades|5|at123|atfim|");
insereRegDefault("|inicio|SEGREDO|fim|");
carregaRegDefault();
login("admin","ad123");
atualizaSenha("12345");
login("admin","12345");
carregaRegDefault();
System.out.println(mbanco);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void criaBD(){
try{
rs = RecordStore.openRecordStore("bdCONTASSS",true);
System.out.println("Banco de Dados criado/aberto com sucesso!");
System.out.println("Nome do Banco: " + rs.getName());
System.out.println("Qtd Registros: " + rs.getNumRecords());
System.out.println("Tam. Ocupado : " + rs.getSize());
System.out.println("Espaço Disp. : " + rs.getSizeAvailable());
}catch(Exception erro){
System.out.println("Não foi possivel criar o BD!");
}
}
public void carregaRegDefault(){
try{
lista = "";
ByteArrayInputStream inputStream29 = null;
DataInputStream dataStream29 = null;
re = rs.enumerateRecords(null,null,false);
int id=0;
byte [] dados = null;
vetor.removeAllElements();
while(re.hasNextElement()){
id = re.nextRecordId();
vetor.addElement(""+ id);
dados = rs.getRecord(id);
inputStream29 = new ByteArrayInputStream(dados);
dataStream29 = new DataInputStream(inputStream29);
mbanco = mbanco +"@id "+id+"@"+dataStream29.readUTF().toString();
}
//lista = lista + "\nLogin: "+dataStream29.readUTF() + "\nSenha: "+ dataStream29.readUTF();
System.out.println("Logon: "+mbanco.substring(mbanco.indexOf("|atin|")+6,mbanco.indexOf("|5|"))+" - Senha: "+mbanco.substring(mbanco.indexOf("|5|")+3,mbanco.indexOf("|atfim|")));
latividades = mbanco.substring(mbanco.indexOf("|atin|")+6,mbanco.indexOf("|5|"));
satividades = mbanco.substring(mbanco.indexOf("|5|")+3,mbanco.indexOf("|atfim|"));
System.out.println("Logon: "+mbanco.substring(mbanco.indexOf("|sein|")+6,mbanco.indexOf("|4|"))+" - Senha: "+mbanco.substring(mbanco.indexOf("|4|")+3,mbanco.indexOf("|sefim|")));
lseguranca = mbanco.substring(mbanco.indexOf("|sein|")+6,mbanco.indexOf("|4|"));
sseguranca = mbanco.substring(mbanco.indexOf("|4|")+3,mbanco.indexOf("|sefim|"));
System.out.println("Logon: "+mbanco.substring(mbanco.indexOf("|main|")+6,mbanco.indexOf("|3|"))+" - Senha: "+mbanco.substring(mbanco.indexOf("|3|")+3,mbanco.indexOf("|mafim|")));
lmanutencao = mbanco.substring(mbanco.indexOf("|main|")+6,mbanco.indexOf("|3|"));
smanutencao = mbanco.substring(mbanco.indexOf("|3|")+3,mbanco.indexOf("|mafim|"));
System.out.println("Logon: "+mbanco.substring(mbanco.indexOf("|liin|")+6,mbanco.indexOf("|2|"))+" - Senha: "+mbanco.substring(mbanco.indexOf("|2|")+3,mbanco.indexOf("|lifim|")));
llimpeza = mbanco.substring(mbanco.indexOf("|liin|")+6,mbanco.indexOf("|2|"));
slimpeza = mbanco.substring(mbanco.indexOf("|2|")+3,mbanco.indexOf("|lifim|"));
System.out.println("Logon: "+mbanco.substring(mbanco.indexOf("|adin|")+6,mbanco.indexOf("|1|"))+" - Senha: "+mbanco.substring(mbanco.indexOf("|1|")+3,mbanco.indexOf("|adfim|")));
ladmin=mbanco.substring(mbanco.indexOf("|adin|")+6,mbanco.indexOf("|1|"));
sadmin=mbanco.substring(mbanco.indexOf("|1|")+3,mbanco.indexOf("|adfim|"));
inputStream29.close();
dataStream29.close();
}catch(Exception erro){
System.out.println("Erro ao ler dados" + erro);
}
}
public void insereRegDefault(String login){
try{
System.out.println("Entrei InseriReg");
ByteArrayOutputStream bStream = new ByteArrayOutputStream();
DataOutputStream dStream = new DataOutputStream(bStream);
dStream.writeUTF(login);
dStream.flush();
byte [] dados = bStream.toByteArray();
System.out.println("Adiciona");
rs.addRecord(dados, 0, dados.length);
System.out.println("Adiciona OK");
bStream.close();
dStream.close();
}catch(Exception erro){
System.out.println("Erro ao inserir dados : " + erro);
}
}
public void login(String login, String senha){
int bandeira = 0;
if(login.equals(ladmin) && senha.equals(sadmin)){
System.out.println("LOGOU!");
perfil = 1;
bandeira = 1;
}
if(login.equals(llimpeza) && senha.equals(slimpeza)){
System.out.println("LOGOU!");
perfil = 2;
bandeira = 1;
}
if(login.equals(lmanutencao) && senha.equals(smanutencao)){
System.out.println("LOGOU!");
perfil = 3;
bandeira = 1;
}
if(login.equals(lseguranca) && senha.equals(sseguranca)){
System.out.println("LOGOU!");
perfil = 4;
bandeira = 1;
}
if(login.equals(latividades) && senha.equals(satividades)){
System.out.println("LOGOU!");
perfil = 5;
bandeira = 1;
}
if(login.equals(lsegredo) && senha.equals(ssegredo)){
System.out.println("LOGOU!");
perfil = 6;
bandeira = 1;
}
if(bandeira == 0){
System.out.println("NAO LOGOU!");
}
}
public void atualizaSenha(String senha){
try{
System.out.println("Entrei InseriReg");
ByteArrayOutputStream bStream = new ByteArrayOutputStream();
DataOutputStream dStream = new DataOutputStream(bStream);
if(perfil == 1){
dStream.writeUTF("|adin|admin|1|"+senha+"|adfim|");
dStream.flush();
}
if(perfil == 2){
dStream.writeUTF("|liin|limpeza|2|"+senha+"|lifim|");
dStream.flush();
}
if(perfil == 3){
dStream.writeUTF("|main|manutencao|3|"+senha+"|mafim|");
dStream.flush();
}
if(perfil == 4){
dStream.writeUTF("|sein|seguranca|4|"+senha+"|sefim|");
dStream.flush();
}
if(perfil == 5){
System.out.println("|atin|atividades|5|"+senha+"|atfim|");
dStream.flush();
}
byte [] dados = bStream.toByteArray();
System.out.println("ENTREI NA EDICAO!");
System.out.println("Edita");
rs.setRecord(Integer.parseInt(vetor.elementAt(perfil-1).toString()),dados,0,dados.length);
bStream.close();
dStream.close();
}catch(Exception erro){
System.out.println("Erro ao inserir dados : " + erro);
}
}
}