Frage

Wenn ich versuche, jpeg Kamera zu verbinden, funktioniert diese Verbindung richtig. Aber wenn ich zu einem Mjpeg (JPEG-Stream) Kamera anschließen, kann ich nicht zeigen „System.out.println (“ onreturn öncesi“          + HttpConnection.getResponseCode ());“auf Ausgabekonsole.  Ich verwende Emulator und MDS. Ich kann zeigen, auf MDS, ... Strom kommt.

url = getUrl();
queryString = encodeURL(queryString);    
byte postmsg[] = queryString.getBytes("UTF-8");
httpConnection = (HttpConnection) Connector.open(url
+ ";deviceside=false", Connector.READ_WRITE);
httpConnection.setRequestMethod(HttpConnection.GET);
httpConnection.setRequestProperty("Authorization", getBase64Encode());
os = httpConnection.openDataOutputStream(); 

for (int i = 0; i < postmsg.length; i++) {
os.write(postmsg[i]);
}
{
 if (!cancel) {
     System.out.println(httpConnection.getURL()+ 
         " *****"+httpConnection.getPort());
     System.out.println("onreturn oncesi"
         + httpConnection.getResponseCode());
     onReturn(httpConnection.getResponseCode(), httpConnection
         .openInputStream(),(int) httpConnection.getLength());

     System.out.println("onreturn sornrası");
 }
 os.close();
 httpConnection.close();
}
} catch (Exception e) {
System.out.println("hata " + e.getMessage());
try {
    httpConnection.close();
    Thread.sleep(60);
} catch (Exception ie) {
}
onError(e);
}
War es hilfreich?

Lösung

Ein Problem ist, Ihre Anfrage nicht Header richtig einstellen.

Ihre Buchungsdaten, so sollten httpConnection.setRequestMethod(HttpConnection.GET); nicht httpConnection.setRequestMethod(HttpConnection.POST); sein.

Und Sie sollten auch die Content-Length-Set : httpConnection.setRequestProperty("Content-Length", Integer.toString(postmsg.length));

Und wenn wir schon dabei sind, würde ich voran gehen und setzen diese:

Inhaltstyp : vielleicht als "image / jpeg". Nicht sicher, was es sollte für MJPEG sein ... httpConnection.setRequestProperty("Content-Type", "image/jpeg");

Useragent die ich gefunden habe, dass einige Websites, um den Standard-User-Agent in RIM (Java / xxx) blockieren, dachte, es ist eine Spinne, so dass ich den Benutzer einstellen möchten agent.httpConnection.setRequestProperty("User-Agent", "MyCoolApp/V1 (App_RIM)");

Welche Version des JDE verwenden Sie? Ist das über HTTPS? Ich frage, weil auf ältere Versionen wie 4.5 Sie http und https anders zu schaffen hatte. In den neueren Versionen sollten Sie den neuen ConnectionFactory- verwenden, statt Connector.

Viel Glück und ich hoffen, dass Sie es herausfinden !!!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top