从数据库中检索blob图像,并使用javascript将其打印为图像

从数据库中检索blob图像,并使用javascript将其打印为图像,javascript,jsf,primefaces,Javascript,Jsf,Primefaces,这是我在javascript中的ui:repeat <ui:repeat value="#{testController.allItems}" var="item"> image = '<p:graphicImage width='50px' value='#{imageStreamer.image}' ><f:param name='id' value='#{item.id}' /></p:graphicImage>';

这是我在javascript中的
ui:repeat

 <ui:repeat value="#{testController.allItems}" var="item">
        image = '<p:graphicImage width='50px' value='#{imageStreamer.image}' ><f:param name='id' value='#{item.id}' /></p:graphicImage>';
        point = new google.maps.LatLng(#{item.latitude},#{item.longitude});
        createMarker(point, '#{item.name}', '#{item.address}', image);
 </ui:repeat>
一切正常。我的地图上有标记,单击标记时,它会显示图像和名称+地址。但问题是,当我再次单击标记时,图像消失,图像显示断开的链接


是否有其他方法可以从数据库中检索blob图像并使用javascript将其打印为图像,而不是使用
p:graphicImage

是否使用Primefaces?是的,我使用Primefaces
p:graphicImage
是一个,您正在使用Primefaces的Gmap组件?当您有错误时,您应该使用浏览器的Inspect element功能来获取错误。我没有任何错误。只是在我第二次单击标记时,图像显示为断开的链接
function createMarker(latlng, name, address, image) {   
    var html = image+'<br/> <b>' + name + '</b> <br/>' + address;
    var marker = new google.maps.Marker({
        map: map,
        position: latlng
    });
    google.maps.event.addListener(marker, 'click', function() {
        infoWindow.setContent(html);
        infoWindow.open(map, marker);
    });
    markers.push(marker);
}