2011-05-02 7 views
0

Blackberry의 HttpConnection을 통해 서버에 일부 값을 게시하려고합니다. 나는 내가 노력하고있는 해결책에 더 가깝다고 생각한다. 하지만 일단 연결을 설정하고 getResponseCode() 메서드를 사용했습니다. 그것은 아무것도 돌려주지 않습니다. 나는 디버그 옵션도 시도했다. 하지만 나는 무엇을 반환 찾을 수 없습니다. 그 명령은 그 진술까지 부드럽게 진행됩니다. 그 특정 문장에 도달하면 디버그 모드에서 빠져 나옵니다. 아래에 제가 첨부 한 발췌 문장입니다, 제게 당신의 제안을 알려주세요.HTTPConnection 개체가 아무 것도 반환하지 않습니다.

// MyHttpConnectionService.java

........ 
........ 
........ 
OutputStream _outputStream = _connection.openOutputStream(); 
try { 
     int rc = _connection.getResponseCode(); // My control is getting lost here 
     System.out.println("Response Code :" + rc); 
     System.out.println("Response Code   :" + rc + " if HTTP OK    :" 
       + (rc == HttpConnection.HTTP_OK)); 


......... 
......... 

}catch(Exception e){ 
     e.printStackTrace(); 
    } 

그것은 어떤 예외도 발생하지 않습니다.

도움을 주시면 감사하겠습니다.

답변

0

documentation for HTTPConnection을 보면 _outputStream에 값을 쓰고 outputStream.flush()으로 전화해야한다고 생각합니다.

_connection.getResposeCode()을 호출 할 때 제어가 손실되었다고 언급했는데,이 방법은 몇 가지 작업을 수행하기 때문에 발생한다고 생각합니다. 예제 소스 코드의 주석에서 :

응답 코드를받는 것은 연결을 열고 요청을 보내고 HTTP 응답 헤더를 읽습니다. 헤더는 요청 될 때까지 저장됩니다.

서버에 연결하는 데 문제가 있으면 연결 문자열과 관련이있을 수 있습니다. 연결 문자열을 올바르게 설정하고 있습니까?

+0

예,'HttpConnection.getResposeCode()'는 연결을 열고, 요청을 보내고, HTTP 응답 헤더를 읽습니다. 그래서 스트림을 열기 전에 먼저 호출해야합니다. –

+0

안녕하세요, 이것은 내 자신의 게시물에 대한 해결책입니다. 나는 코드를 실행하는 동안 MDS 시뮬레이터를 사용했다. 그것은 잘 작동합니다. 지원해 주셔서 감사합니다. –

관련 문제