its some parameter name (the name does not matter) and RANDOM is set in the controller (Action) or to make it easy
img src="/Dashboard/DisplayChart.action?p=<%=request.hashCode()%>" / instead of passing DisplayChart.action each time. it is passed in as a different url everytime and so it will display the new image other wise if the url is the same then you will get displayed the cached image. Milan Milanovic wrote: > > I don't understand this solution, what is "p" parameter, and whait is > "RANDOM" ? > > > -- > Regards, Milan > > > dynamicd wrote: >> >> >> got it to work.. could not stop the caching so added a param to the src >> >> img >> src="/Dashboard/DisplayChart.action?p=<%=request.getParameter("RANDOM")%>" >> / >> >> >> >> dynamicd wrote: >>> >>> I have tried >>> <% >>> 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 >>> >>> %> >>> >>> as well.. >>> >>> >>> >>> newton.dave wrote: >>>> >>>> --- On Wed, 8/6/08, dynamicd <[EMAIL PROTECTED]> wrote: >>>>> Also tried implementing the SessionAware. However the same thing. >>>> >>>> Why? >>>> >>>> Did you try setting the headers for not caching? >>>> >>>> Dave >>>> >>>>> 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; >>>>> >> } >>>>> >> >>>>> >> ] >>>> >>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>> >>>> >>>> >>> >>> >> >> > > -- View this message in context: http://www.nabble.com/Struts-2-And-JFreeChart-tp18740589p19091264.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]