2013-05-11 3 views
0

나는 다음 코드로, 서버에서 이미지를로드하기 위해 노력하고있어 :Java에서 BufferedImage가 완료되었는지 확인하는 방법은 무엇입니까?

BufferedImage img;  
do{ 
    try { 
     URL url = new URL(myUrl); 
     img = ImageIO.read(url); 
    }catch (IOException e){} 
}while(img == null); 
아이디어는 이미지가 발견 될 때까지이 업로드되기 때문에 코드가 실행 중에, 소스를 cheking 유지하는 것입니다

. 문제는 이미지가 여전히 서버에로드 될 때 코드가 멈추고 이미지의 일부만 표시한다는 것입니다. 왜냐하면 loger null이 없지만 아직 완료되지 않았기 때문에 이미지가 완료되었는지 어떻게 확인할 수 있습니까? 무엇을 수정해야하는 서버처럼

MediaTracker mediaTracker = new MediaTracker(this); 
Image image = getImage(getDocumentBase(), "image-filename.png"); 
mediaTracker.addImage(image, 0); 
try { 
    mediaTracker.waitForAll(); 
} catch (InterruptedException interuptedException) { 
    interuptedException.printStackTrace(); 
} 
+2

것 같습니다 : 애플릿 내에서 –

+0

계속해서 무시하고 계속하는'IOException'을 던지면서 동일한 작업을 다시 실행하는 것은 완전히 쓸데없는 일입니다. 처음으로 작동하지 않는다면 왜 두 번째 및 후속 작업을 수행할까요? (a) 예외의 스택 추적을 인쇄하고 (b) 여기에 게시 하시겠습니까? 게시물로 편집하십시오. – EJP

답변

0

는이 같은 이미지 로딩을 처리하는 이미지가 완전히 업로드 된 때까지 404 찾을 수 없음으로 응답해야합니다. 그런 다음에 만 서비스를 시작해야합니다.
관련 문제