From the Seam Forums:
Using JFreeChart with Seam can be quite useful:
package example.chartprocesser;
@Name("chartprocesser")
public class ChartProcesserBean {
    @In
    EntityManager em; // Entity Manager to access the database
    byte[] chart; // chart image (.png) as a byte array
    @Factory(value="chart")
    public void createChart() {
        DefaultCategoryDataset ds = this.getData;
        JFreeChart chart = ChartFactory.createLineChart(
                "TITLE",
                "Category Label",
                "Axis Lable",
                ds,
                PlotOrientation.HORIZONTAL,
                false,
                false,
                false
                );
        try{
     	    this.chart = ChartUtilities.encodeAsPNG(chart.createBufferedImage(400, 400));
        } catch (IOException e){
	    e.printStackTrace();
        }
    }
    private DefaultCategoryDataset getData(){
        //get the data and put into DefaultCategoryDataset
        //Then return it.
    }
}
In your JSF page:
<s:graphicImage value="#{chartprocesser.chart}" />
	
Brilliant!!! Thanks man!
Hi Elengado,
When I copy your source code and deploy application it display error that couldn’t find library of jfreechart but when I remove @Name(“chartprocesser”) then it didn’t display error.
Can you help me resolve it because I have copied jfreechart and jcommon into java classpath
Sorry, but I don’t do support. Pay the JFreeChart guy for that.
so, what’s the point of this article then? Just to show that you was able to render a jfreechart on Seam?!
Congratulations dude!!!!
ps: lehoa, do you have those two libraries on both EAR project and the WEB project?
Yup, that’s the point. This is a quick reference to how I would do this again without having to sift through irrelevant documentation.