Как отобразить изображение в формате .png из ответа ajax? - PullRequest
2 голосов
/ 12 сентября 2009

Я отправляю ajax response.getOutputStream (). Write (encoder.pngEncode ()) изображение в байтах, я хочу, чтобы отобразить изображение во время выполнения в моем JSP от ответа AJAX это возможно? Можете ли вы, пожалуйста, кто-нибудь может решить эту проблему.

В классе сервлетов:

chartImage = chart.createBufferedImage(400, 300);       
        PngEncoder encoder = new PngEncoder(chartImage, false, 0, 9);

        resp.setContentType("image/png"); 
        resp.setHeader("Cache-Control", "no-cache");
        resp.getOutputStream().write(encoder.pngEncode());

В JSP:

if (bbyHttpRequest.readyState == 4) 
    { 
        if(bbyHttpRequest.status == 200) 
        { 
        alert("inside ajax call");

        var respone=bbyHttpRequest.responseText;

        alert("respone----------->"+respone);

        //var i = new Image();
        //i.src = respone;

           //document.getElementById("imgChart1").innerHTML = '<%=request.getContextPath() + "/CreateOMSMonitorScreenTest" %>';
          // document.getElementById("imgChart1").value = '<%=request.getContextPath() + "/CreateOMSMonitorScreenTest" %>';
          document.getElementById("imgChart1").value=respone;

        } 
        else 
        {
        alert(' Dynamic call to web server failed.Please refresh the page. ');
        } 
    }   

Ответы [ 2 ]

2 голосов
/ 12 сентября 2009

Если у вас есть сервер, который возвращает изображения в формате PNG, вам не нужно использовать ajax, вы можете использовать простой HTML:

<img src='myServer.thing?param=value' alt='Loading Failed' />

Вы можете использовать JavaScript для обработки ошибок тега img.

1 голос
/ 12 сентября 2009

Имеется URL-адресов данных , поэтому вы можете создать тег типа image

Однако IE6 не поддерживает это, что может или не может быть проблемой для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...