Oi Pessoal tudo bem?
Seguinte, acho que essa duvida pode ser de um monte de gente.
De acordo com um topico analisado aqui mesmo no GUJ Forum, vimos que é possivel gerar grafico com JSF e isso da seguinte maneira.
é só acrencentar em seu codigo isso:
"sujestão é que vc faça um metodo para gerar o array de bytes,"a imagem do grafico", e seu servlet retorne para a aplicação este array"...
public class ServletGrafico extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 7525881554438222L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
try {
String attribute = request.getParameter("attribute");
byte[] image = null;
image = (byte[]) request.getSession().getAttribute(attribute);
response.getOutputStream().write(image);
} catch (IOException e) {
e.printStackTrace();
}
}
}
E depois la seu MB
vc cria o grafico normalmente so que vc tem que setar a imagem na sessao ai vc faz assim:
[quote]byte[] imagem = ChartUtilities.encodeAsPNG(chart.createBufferedImage(1000, 500));
setSessionValue(“nomeDoMeuGrafico”, imagem);[/quote]
AGORA pergunto como ficaria na veiw? seria como esse codigo ???:
[code]
<?xml version="1.0" encoding="UTF-8"?>
<jsp:root version=“2.1” xmlns:f=“http://java.sun.com/jsf/core” xmlns:h=“http://java.sun.com/jsf/html” xmlns:jsp=“http://java.sun.com/JSP/Page” xmlns:webuijsf=“http://www.sun.com/webui/webuijsf” xmlns:cewolf="/WEB-INF/cewolf.tld">
<jsp:directive.page contentType=“text/html;charset=UTF-8” pageEncoding=“UTF-8”/>
<f:view>
<webuijsf:page binding="#{Page1.page1}" id=“page1”>
<webuijsf:html binding="#{Page1.html1}" id=“html1”>
<webuijsf:head binding="#{Page1.head1}" id=“head1”>
<webuijsf:link binding="#{Page1.link1}" id=“link1” url="/resources/stylesheet.css"/>
</webuijsf:head>
<webuijsf:body binding="#{Page1.body1}" id=“body1” style="-rave-layout: grid">
<webuijsf:form binding="#{Page1.form1}" id=“form1”>
<jsp:useBean id=“pageViews” class=“sagw.PageViewCountData”/>
<cewolf:chart
id="line"
title="Page View Statistics"
type="line"
xaxislabel="Page"
yaxislabel="Views">
<cewolf:data>
<cewolf:producer id="pageViews"/>
</cewolf:data>
</cewolf:chart>
<cewolf:img chartid="line" renderer="cewolf" width="400" height="300"/>
</webuijsf:form>
</webuijsf:body>
</webuijsf:html>
</webuijsf:page>
</f:view>
</jsp:root>
[/code]
ALGUEM podeia me dar uma sujestão ?
Aguardamos reposta então de alguma sujestão ....