2013-07-10 5 views
0

나는 안드로이드에서 Soap 객체를 사용하여 매우 이상한 문제에 직면 해있다. 나는 주기적으로 서버에 데이터를 보내는 것을 처리 할 백그라운드 스레드를 실행 중이다. 여기에 나는 데이터를 보내기 위해 Soap 웹 서비스를 사용하고있다. 서버에 데이터를 보내는 동안 서버에서 중복 요청 (동일한 데이터를 두 번 전송)이 발생합니다. 이 문제를 극복하는 방법은 무엇입니까? 도와주세요 ...soap 객체에서 중복 요청을 방지하는 방법은 무엇입니까?

미리 감사드립니다 ...

답변

0

먼저 오류의 원인이되는 루프/조건이 있는지 확인하십시오.

둘째, 항상 HTTP 요청이 포함될 때마다 스레드 내에서 동기화되고 요청이 실행될 때마다 부울을 설정합니다. 응답이 성공적으로 수신 된 부울 값을 재설정하고 다음 요청을 시작합니다.

이러한 동기화 요청은 목록에 대기열에 올릴 수 있으며 성공적인 응답을받은 목록에서 요청을 제거하고 다른 요청을 꺼내어 필요에 따라 배치합니다 (논리적으로 마지막에 - 다른 요청에도 하나가 반복적으로 실패한다면).

+0

예 이미이 방법을 사용했습니다. 그러나이 문제는 발생했습니다. –

+0

문제가 발생하는 부분 코드를 가질 수 있습니까 – Kanak

+0

사실 sqlite에 많은 데이터를 저장했습니다. 그런 다음 do-while 루프를 사용하여 각 행을 추출하고 해당 데이터를 서버에 게시합니다. 동일한 루프에서 응답을 얻고 응답을 확인합니다. 긍정적 인 경우 DB에서 행을 삭제했습니다. 그게 전부 다. 거기에 잘못이있는 것입니다. –

관련 문제