Mandando/Recebendo dados via HTTP

Olá Pessoal,

Há 2 dias que quebro a cuca tentando resolver um [size=18]mistério[/size]: uma aplicaçãozinha minha, em j2me, que até outro dia mandava dados “de boa” pra um servidor (Linux+Apache+PHP) simplesmente parou de enviar…!

E isso aconteceu +/- depois da Locaweb me trocar de servidor.

Para o programa PHP que recebe o POST, é como se não chegasse nada… :shock:

(mas se eu enviar através de um formulário html, vai que vai!)

Alguém já ouviu falar de alguma incompatibilidade de Apache, recebendo dados de um j2ME ??? :?:

Bem, vou colocar aqui o código pra ver se alguém consegue enxergar alguma coisa que eu não consegui depois de HORAS em cima disso:

(GENTE, peloamordedeus, de dêem um help! Olha a hora que eu tô indo dormir, com os zóio cheio de areia, pra tentar achar a solução desse pobrema… rssssss)

[code]public class HttpHandler extends Thread {

String url="http://www.servidor.com.br/sistema/java/j2me_rec.php";
protected StringBuffer buff=new StringBuffer();
String rep=null;
public String sendData=null;
HttpListener hListener = null;

public HttpHandler(HttpListener h){
    hListener = h;
}

synchronized public void run(){
    try{
        HttpConnection hc = (HttpConnection)Connector.open(url);            
        hc.setRequestMethod(HttpConnection.POST);
        hc.setRequestProperty("User-Agent", "Profile/MIDP-1.0 Configuration/CLDC-1.0");
        //hc.setRequestProperty("User-Agent", "Profile/MIDP-2.0 Configuration/CLDC-1.1");
        hc.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
        DataOutputStream dos=hc.openDataOutputStream();             
        dos.write(sendData.getBytes());
        dos.flush();
        dos.close();
        
	if (hc.getResponseCode()==hc.HTTP_OK) {
		// You have successfully connected.
		DataInputStream dis = hc.openDataInputStream();
		// Now Process your request.                       
                    int ch = dis.read();
                    while (ch!=-1){
                        buff.append((char)ch);
                        ch = dis.read();
                    }
                   rep=buff.toString();
                   hListener.processRequest(rep);
                   dis.close();                         
            }
            }catch(SecurityException se){
                se.printStackTrace();
            }
             catch(IOException ioe){
                System.out.println(ioe.getMessage());
            }
} 

}
[/code]

Agradeço Antecipadamente!

::Marcello Capelati::

Cara não sei resolver seu problema. Mas eu estava usando o mesmo esquema que você. Era meio estranho e direto dava pau. Daí resolvi mudar para webservice. Melhorou bastante. Eu usei tomcat + axis + ksoap2. Muito fácil de usar. Mas enfim, só uma dica.

t+

Acho que eu não poderia usar isso lá na Locaweb…

O fato estranho é:

= Vou seguindo pelo debug, e as informações estão todas lá, do jeito que devem ser enviadas.
= A chamada ao PHP é feita (vejo pelo LOG do Apache)
= Mas as variáveis do POST não são enviadas (tento receber pelo PHP, pelos $_POST[] da vida, e nada!)

Poderia ser alguma “configuração” no próprio NetBeans (6.5.1), que está gerando um código com algo faltando?