IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JSF Java Discussion :

problem avec rich:paint2D


Sujet :

JSF Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2008
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 158
    Points : 93
    Points
    93
    Par défaut problem avec rich:paint2D
    Bonjour tout le monde, j'essaye d'utiliser rich:paint2d afin de générer une image 2d (un histogramme en réalité).
    J'ai suivit les consignes de JBoss http://www.jboss.org/file-access/def...l/paint2D.html mais a chaque fois et après de nombreux testes il me retourne la même erreur qui n'est pas référencés sur google. Je précis que j'ai réussit une fois à le faire marcher correctement (par magie) et je suis incapable de retrouver cette formule magique.

    voici tous les objets intervenant:
    la jsp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <%@taglib uri="http://java.sun.com/jsf/html" prefix="html"%>
    <%@taglib uri="http://java.sun.com/jsf/core" prefix="core"%>
    <%@taglib uri="http://richfaces.org/a4j" prefix="a4j"%>
    <%@taglib uri="http://richfaces.org/rich" prefix="rich"%> 
    <%@taglib uri="http://sourceforge.net/projects/jsf-comp/acegijsf" prefix="acegijsf"%>
    <html>
    <body>
    <core:view>
    	<html:form>
    		<core:loadBundle basename="com.langue.tableaudebord" var="tdb" />
    		<%@ include file="/pages/entete.jsp"%>
    		<%@ include file="/pages/parametrestilisateur.jsp"%>
    		<rich:dataGrid value="#{BeanTableauDeBord.listDepartement}" var="periodique" columns="3">
    			<rich:panel bodyClass="pbody">
    				<core:facet name="header">
    					<html:outputText value="#{tdb.departement} #{periodique.nom}" />
    				</core:facet>
    				<br/>
    				<rich:paint2D paint="#{BeanDessin.paint}" data="#{periodique.donnees}" format="png" cacheable="false"/>
     
    				<html:inputTextarea value="#{periodique.resumer}" readonly="false"/>
    				<br>
    				<html:commandButton value="#{tdb.modification}" action="#{BeanTableauDeBord.changerResumer}">
    					<core:setPropertyActionListener value="#{periodique}" target="#{BeanTableauDeBord.selectionInputText}"/>
    				</html:commandButton>
    			</rich:panel>
    		</rich:dataGrid>
    		<%@ include file="/pages/piedPage.jsp"%>
    	</html:form>
    </core:view>
    </body>
    </html>
    la classe java de dessin (qui correspond au paintBean.java dans l'exemple)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    package com.fonction.dessin;
    import java.awt.Graphics2D;
     
     
    public class BeanDessin
    {
     
    	public void paint(Graphics2D g2, Object obj)
    	{
    		DonneeDessin data = (DonneeDessin) obj;
    		g2.drawRect(0, 0, data.Width, data.Height);
    		}
    }
    Je précise qu'il plante avant même d'accéder à cette classe et qu'elle est déclaré dans le face-config

    la classe de données (qui est definie dans la classe périodique)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    package com.fonction.dessin;
    import java.io.Serializable;
    import com.modele.donnees.Periodique;
     
    public class DonneeDessin implements Serializable
    {
    	private static final long serialVersionUID = 1L;
    	Integer Width=100;
    	Integer Height=50;
    	private Periodique periodique;
     
    	public DonneeDessin(Periodique per)
    	{
    		this.periodique = per;
    	}
    }
    Cette classe ne semble pas planter car ma jsp la lie parfaitement

    et biensur la trace de la pile:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    GRAVE: "Servlet.service()" pour la servlet Faces Servlet a généré une exception
    java.lang.NullPointerException
    	at org.richfaces.renderkit.html.Paint2DResource.isCacheable(Paint2DResource.java:81)
    	at org.ajax4jsf.resource.InternetResourceService.serviceResource(InternetResourceService.java:164)
    	at org.ajax4jsf.resource.InternetResourceService.serviceResource(InternetResourceService.java:141)
    	at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:500)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
    	at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
    	at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
    	at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
    	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
    	at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
    	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
    	at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
    	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
    	at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
    	at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    	at java.lang.Thread.run(Thread.java:613)
    Si quelqu'un pouvait me sauver la vie. En attendant je continu a chercher, je vais bien la retrouver cette formule magique pour le faire marcher.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Août 2008
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 158
    Points : 93
    Points
    93
    Par défaut
    Je viens de comprendre se qui ne marche pas. Etant donné que DonneeDessin est en serializable je ne peut faire se bout de code:

    private Periodique periodique;

    public DonneeDessin(Periodique per)
    {
    this.periodique = per;
    }

    Du moins des que je le met ca plante.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problem avec rich:picklist
    Par lastrecrue dans le forum JSF
    Réponses: 14
    Dernier message: 10/07/2009, 12h18
  2. Probleme avec Rich:calendar
    Par hector_le_dresseur dans le forum JSF
    Réponses: 7
    Dernier message: 07/05/2009, 17h02
  3. Probleme avec <rich:fileUpload>
    Par hibao dans le forum JSF
    Réponses: 10
    Dernier message: 16/10/2008, 12h26
  4. Probleme avec Rich:panelMenu
    Par midos dans le forum JSF
    Réponses: 1
    Dernier message: 08/09/2008, 08h29
  5. Probleme avec rich:fileupload
    Par solarien dans le forum JSF
    Réponses: 6
    Dernier message: 21/08/2008, 17h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo