Olá a todos… Estou com o seguinte problema quanto a integraçao do JFreeChart com o Struts2:
Quando mando gerar a imagem e retornar para a página em questão mas a imagem parece que fica armazenada em cache quando gerada pela primeira vez…
Quando executo novamente a exibiçao do grafico para um outro item, a imagem que é exibida é a imagem antiga…
Segue os Códigos:
Struts.xml
<action name="viewChart" class="jChartAction">
<result name="success" type="chart">
<param name="type">jpg </param>
<param name="width">400</param>
<param name="height">300</param>
</result>
</action>
Action
public String execute() throws Exception {
// chart creation logic...
XYSeries dataSeries = new XYSeries(new Integer(1)); //pass a key for this serie
for (int i = 0; i <= 10; i++) {
dataSeries.add(i, RandomUtils.nextInt());
}
XYSeriesCollection xyDataset = new XYSeriesCollection(dataSeries);
ValueAxis xAxis = new NumberAxis("Publico");
ValueAxis yAxis = new NumberAxis("Gasto em reais");
// set my chart variable
chart =
new JFreeChart(
"Crescimento de valor",
JFreeChart.DEFAULT_TITLE_FONT,
new XYPlot(
xyDataset,
xAxis,
yAxis,
new StandardXYItemRenderer(StandardXYItemRenderer.LINES)),
false);
chart.setBackgroundPaint(java.awt.Color.white);
return Action.SUCCESS;
}
Já tentei inserir o cabeçalho na pagina retornada mas mesmo assim continua este problema…
<%
response.setHeader("Cache-Control", "no-cache"); //HTTP 1.1
response.setHeader("Pragma", "no-cache"); //HTTP 1.0
response.setDateHeader("Expires", 0); //prevents caching at the proxy server
%>