Also tried implementing the SessionAware. However the same thing.
dynamicd wrote: > > This is cool.. I tried it out. However once the > chart_display.jsp is called the first time through the image tag. it does > not call the DisplayChart.action again to refresh the image with a new one > when clicked on the DrawChart.action. (I added the println statement in > the display method to find out that the div is not refreshing) I have to > log out and log in (invalidate session) to get the new chart. I am missing > something > > > > public String display() throws Exception { > System.out.println("I AM IN THE DISPLAY NOW "); > Map attributes = ActionContext.getContext().getSession(); > this.chart = (JFreeChart) attributes.get("CHART"); > > if(chart == null) { > return Constants.FORWARD_INVALIDACTION; > } > return Constants.FORWARD_SUCCESS; > } > > > private void setChart(JFreeChart chart){ > Map attributes = ActionContext.getContext().getSession(); > attributes.put("CHART", null); > this.chart = chart; > attributes.put("CHART", this.chart); > } > > public JFreeChart getChart() { > return chart; > } > > > > Leena Borle wrote: >> >> Hello, >> See if this helps you. >> I have a form with remote DIV which displays chart after user clicks on >> submit. >> Trick here is to generate chart object, store it in session and display >> it >> in separate JSP. Remove the form part if you want to display just the >> dynamic-DIV using Chart image. >> >> Form.jsp [ >> <s:form> >> <s:url id="display_chart" value="DrawChart_draw.action" >> namespace="/user" /> >> >> <s:submit value="Draw chart" href="%{display_chart}" >> theme="ajax" targets="*chart_div*" /> >> <br /> >> </s:form> >> >> <h4>Your Running Chart</h4> >> <div id="*chart_div*"> >> </div> <!-- End display chart --> >> </div> >> >> ] >> >> >> display_chart.jsp [ >> <body> >> >> /MyApp/user/DrawChart_display.action >> </body> >> >> ] >> >> >> struts.xml[ >> <package name="user" extends >> ="struts-default,jfreechart-default"> >> <!-- Separate method to draw and display due to Remote >> DIV/Button tag contsraints. >> --> >> <action name="DrawChart_input" method="input" >> class=".xxx.DrawChart"> >> <result name="input">form.jsp </result> >> </action> >> >> <action name="DrawChart_draw" method="draw" >> class="xxx..DrawChart"> >> <result name="success">/jsp/display_chart.jsp >> </result> >> </action> >> <action name="DrawChart_display" method="display" >> class="xxx.DrawChart"> >> <result name="success" type="chart"> >> 400 >> 300 >> </result> >> </action> >> >> </package> >> ] >> >> >> DrawChart.java [ >> JFreeChart chart; >> public String draw() throws Exception { >> //chart creation logic. >> //generate chart object >> chart = .... >> session = .... >> session.put("CHART", chart); >> return success; >> } >> >> /** >> * returns chart obejct from the session. >> This methos is used by display_chart.jsp >> */ >> public String display() throws Exception { >> session = ...get session ... >> this.chart = (JFreeChart) session.get("CHART"); >> if(chart == null) { >> addActionError(getText("error.nochart")); >> return ERROR; >> } >> return SUCCESS; >> } >> >> // this method will get called if we specify chart >> public JFreeChart getChart() { >> return chart; >> } >> >> /** >> * <p> input action >> */ >> public String input() throws Exception { >> return INPUT; >> } >> >> ] >> >> >> >> Leena >> >> > > -- View this message in context: http://www.nabble.com/Struts-2-And-JFreeChart-tp18740589p18858354.html Sent from the Struts - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]