Olá pessoal.
Estou com o seguinte problema:
A minha aplicacao j2me conecta ao servidor para pegar alguns dados.
A conexão é realizada normalmente mas no final apresenta o seguinte erro:
Uncaught exception: java.lang.OutOfMemoryError
e não passa o argumento para a função que trata os dados.
import java.io.IOException;
import java.io.InputStream;
import java.util.Vector;
import javax.microedition.io.Connector;
import javax.microedition.io.HttpConnection;
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
* @author cm
*/
public class AcessoWeb implements Runnable{
private HttpConnection objHttpConnection;
private String url;
private InputStream objInputStream;
private Pessoa objPessoa;
private Thread thread;
private Vector vectorDados;
public AcessoWeb(Pessoa objPessoa) {
this.objPessoa = objPessoa;
}
public void run() {
url = "http://localhost:8080/EstoqueWeb-war/ListaPessoas.jsp";
System.out.println("Entrou no run");
try {
vectorDados = new Vector();
String[] stringDados = new String[3];
objHttpConnection = (HttpConnection) Connector.open(url);
System.out.println("Entrou no try");
if (objHttpConnection.getResponseCode() == HttpConnection.HTTP_OK) {
objInputStream = objHttpConnection.openInputStream();
int caracterLido = objInputStream.read();
StringBuffer objStringBuffer = new StringBuffer();
while (caracterLido != '^') {
while (caracterLido != ',') {
objStringBuffer.append((char) caracterLido);
caracterLido = objInputStream.read();
}
System.out.println(objStringBuffer.toString().trim());
stringDados[0] = objStringBuffer.toString().trim();
objStringBuffer.delete(0, objStringBuffer.length());
caracterLido = objInputStream.read();
while (caracterLido != ',') {
objStringBuffer.append((char) caracterLido);
caracterLido = objInputStream.read();
}
System.out.println(objStringBuffer.toString().trim());
stringDados[1] = objStringBuffer.toString().trim();
objStringBuffer.delete(0, objStringBuffer.length());
caracterLido = objInputStream.read();
while (caracterLido != '#') {
objStringBuffer.append((char) caracterLido);
caracterLido = objInputStream.read();
}
System.out.println(objStringBuffer.toString().trim());
stringDados[2] = objStringBuffer.toString().trim();
objStringBuffer.delete(0, objStringBuffer.length());
caracterLido = objInputStream.read();
}
} else {
System.out.println("Sem conexão");
}
} catch (IOException io) {
} catch (SecurityException se) {
}
}
public void iniciaThread() {
thread = new Thread(this);
thread.start();
}
}
o erro é este:
Uncaught exception: java.lang.OutOfMemoryError
(stack trace incomplete)