Hola,
tengo un problema con una aplicacion J2ME que estoy realizando.
Tengo una midlet que conecta via HttpConnection a un servlet. separe la conexion de la midlet porque necesitaba dos threads distintos sino se bloqueaba. Es decir,...
MIDLET:
public class HelloMidlet extends MIDlet implements CommandListener {
/** Creates a new instance of HelloMidlet */
public HelloMidlet() {
}
private Conexion con; //en la midlet hay un objeto conexion
...
public void commandAction(...)
{
...
con= new Conexion();
con.start();
con.enviarMensaje("hola");
con.leerRespuesta();
con.cerrarConexion();
}
...
}
CONEXION
public class Conexion implements Runnable {
private HttpConnection c;
static final String URLProxy ="...";
public void run(){
try{
c = (HttpConnection)Connector.open(URLProxy);
c.setRequestMethod(HttpConnection.POST);
c.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
c.setRequestProperty("Connection", "close");
}catch(IOException e){}
}
public void enviarMensaje(String msg)throws IOException{...}
public void leerRespuesta(){...}
public void cerrarConexion() throws IOException{...}
}
El problema es que en la midlet cuando llama al metodo "con.enviarMensaje("hola");" me da una nullpointerexception. en cambio si hago el "enviarMensaje" dentro del start() si me funciona. Se pierde el objeto Conexion al pasar a la midlet despues del start()???????