Dynamisches p:graphicimage im Datagrid

Templarthelast

Bekanntes Mitglied
Hallo zusammen,

für Webinterface auf einem JBoss eines real gespielen Tombolaspiels will ich alle automatisch generieren Karten als Grafiken in einem Primefaces Datagrid ausgeben.

Allerdings stoße ich bei diesem Vorhaben auf diese Exception:
Code:
[org.primefaces.application.PrimeResourceHandler] (http-localhost-127.0.0.1-8081-1) Error in streaming dynamic resource.

Da man die generierten Bilder sowieso nicht mit der var ausgeben gehe ich über den <f:param> wert mit dem ich dann die Bild liste durchgehe.

Das Datagrid:
HTML:
<p:dataGrid value="#{main.game.cards}" var="cad" columns="3"
								rows="12" paginator="true"
					 			paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
								rowsPerPageTemplate="5,10,25, 50, 100"> 
								<p:panel header="Nr. #{cad.id}">
								 		
									<p:graphicImage cache="true" value="#{main.fileContent}">
									 	<f:param name="image_id" value="#{cad.id}"></f:param>
									</p:graphicImage>	 

								</p:panel>
							</p:dataGrid>


Die Funktion für die Bilder:

Java:
public StreamedContent getFileContent() {
		logger.trace("Entered method getFileContent.");
		ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext();
		String photoId = externalContext.getRequestParameterMap().get("image_id");
		System.out.println("image: " + photoId);
		if (photoId == null || photoId.equals("")) {
			fileContent = defaultFileContent;
			logger.info("Id was null or empty. Retrieved default file content.");
		} else {
			int parsedId = Integer.parseInt(photoId);
			logger.info("parseid: " + parsedId);
			int id = parsedId;
			
			
			BufferedImage image = game.getCards().get(id).getImage();
			 System.out.println("id " + id);
			 ByteArrayOutputStream os = new ByteArrayOutputStream();
			 try {
			 ImageIO.write(image, "png", os);
			 } catch (IOException e) {
			 // TODO Auto-generated catch block
			 e.printStackTrace();
			 }
			 fileContent = new DefaultStreamedContent(new
			 ByteArrayInputStream(os.toByteArray()), "image/png");

			

		}
		logger.trace("Exited method getFileContent.");
		return fileContent;
	}
 
Zuletzt bearbeitet:

JimPanse

Bekanntes Mitglied
[XML]
<p:graphicImage cache="true" value="#{main.getFileContent(cad.id)}">
</p:graphicImage>
[/XML]

Java:
public StreamedContent getFileContent(String photoId ) {
...
}

Greetz
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Unterschied: Polymorphie und Dynamisches Binden Allgemeine Java-Themen 8
kodela Dynamisches Array in einer Klasse Allgemeine Java-Themen 5
N Eclipse Dynamisches-Web-Project auf anderen Rechner transportieren Allgemeine Java-Themen 5
looparda Dynamisches Konsolenprogramm Allgemeine Java-Themen 3
C Dynamisches und sortiertes Auslesen von Properties Allgemeine Java-Themen 2
P Dynamisches Binden Allgemeine Java-Themen 7
X Dynamisches hinzufügen von Panles Allgemeine Java-Themen 4
A Dynamisches Enum? Allgemeine Java-Themen 2
S dynamisches Array für Primfaktorzerlegung Allgemeine Java-Themen 13
S Dynamisches Manipulieren/Laden von Klassen Allgemeine Java-Themen 4
Z Dynamisches JPanel Allgemeine Java-Themen 10
hdi Dynamisches Instantiieren (Reflections) Allgemeine Java-Themen 4
H2SO3- dynamisches anlegen der dimensionaltität eines arrays Allgemeine Java-Themen 6
reibi Klassenpfad mal anders - dynamisches Laden einer Klasse Allgemeine Java-Themen 7
lumo "Exzessiv" dynamisches generieren Allgemeine Java-Themen 6
P dynamisches Array / Vector Allgemeine Java-Themen 2
R Dynamisches Laden von JNI-Bibliotheken Allgemeine Java-Themen 4
N Mehrdimensionales dynamisches Array Allgemeine Java-Themen 3
T Dynamisches laden von java Klassen Allgemeine Java-Themen 2
B Dynamisches Linken Allgemeine Java-Themen 15
M Dynamisches ausführen von methoden unbekannter klassen Allgemeine Java-Themen 6
V dynamisches laden von klassen Allgemeine Java-Themen 8
C Dynamisches Nachladen von JARs (Plugin) Allgemeine Java-Themen 3
S Dynamisches Casten Allgemeine Java-Themen 5
M Statisches und dynamisches Binden? Allgemeine Java-Themen 2
S Dynamisches Feld generieren. Allgemeine Java-Themen 10
E Dynamisches Instanziieren Allgemeine Java-Themen 2
B dynamisches Laden aller Klassen in einem Ordner ?? Allgemeine Java-Themen 5

Ähnliche Java Themen

Neue Themen


Oben