<h: graphicImage> wird in JSF nicht aktualisiert

Ich möchte eine Grafik in einer jsf-Webanwendung aus einer xhtml-Datei anzeigen, die sich bei jedem Lauf ändert. Ich zeige ein Bild an, sobald der Upload abgeschlossen ist. Nach dem Hochladen eines Bildes wird jedoch immer das Bild angezeigt, das ich zum ersten Mal hochgeladen habe. Beim Aktualisieren wird das zuletzt hochgeladene Bild angezeigt. Warum wird immer ein Bild angezeigt, das ich beim ersten Versuch hochgeladen habe? Wie könnte ich das zuletzt hochgeladene Bild mit anzeigen?h:graphicImage. Ich verwende Servlet, um ein Bild anzuzeigen. Kann mir jemand weiterhelfen ... ???

Hier ist mein Code zum Anzeigen eines Bildes:

public void displayImage(byte[] image,HttpServletResponse response) { 
      ServletOutputStream out;
      if ( image != null ) {
      BufferedImage bufferedImage; 
           try {
                      bufferedImage = ImageIO.read(new ByteArrayInputStream(image)); 
                out = response.getOutputStream(); 
                ImageIO.write(bufferedImage, "png",out);
           } catch (IOException e) { 
                logger.info("Exception in reading the image" + e);
           }
      } else {     
           logger.info("No bytes present ");    
      }  

Das ist meine eigentliche Anforderung ... Im ersten Fenster habe ich eine Signaturbox. Sobald der Upload abgeschlossen ist, zeige ich ein Fenster (2) mit einem hochgeladenen Bild, in dem ich das Bild so zuschneiden kann, dass ich es im Unterschriftenfeld des ersten Fensters speichern kann. es funktioniert gut. Was aber passiert, wenn ich das 2. Fenster abbrich / schließe, ist, dass das Signaturfeld von 1. leer bleibt. Der Benutzer kann also ein anderes Bild hochladen. Wenn ich in diesem Fall versuche, ein Bild hochzuladen, wird es erfolgreich hochgeladen, aber im zweiten Fenster wird es nicht angezeigt. Es zeigt trotzdem das Bild, das ich beim ersten Versuch hochgeladen habe. Wie repariere ich das ... ???

Antworten auf die Frage(1)

Ihre Antwort auf die Frage