Loading ...
Sorry, an error occurred while loading the content.

19021Re: Problem with Datatable

Expand Messages
  • tanklm
    Oct 1, 2007
    • 0 Attachment
      Thanks. I'm looking into apache config settings. I actually tried the
      work around you suggested at one point. It was fine until I opened my
      cache and had hundreds or perhaps thousands of versions of the file
      around.

      --- In ydn-javascript@yahoogroups.com, "Satyam" <satyam@...> wrote:
      >
      > Unfortunately, I don't know how you can do it in your setup. A
      trick I know
      > you can do from the client side is to add a fake argument to the URL
      and
      > make that argument a random number. In this way, no matter what any
      > intermediary has cached, since the URL is different every time, it will
      > never be reused. The problem is that it is a wasteful solution, since
      > whatever is caching the pages will still cache them, though they
      will never
      > be used again, wasting time and spending resources that could be
      better used
      > caching good pages.
      >
      > The best solution is for the source of the information, the server, to
      > indicate all parties that the information should not be cached at
      all, thus,
      > wasting no time or other resources. Some servers have a 'raw' file
      format
      > so that the server will transmit the page as is, with all the
      headers as
      > they are in that file. Others allow you to set a configuration file
      on the
      > directory that can carry such information as cache control.
      >
      > Satyam
      >
      >
      > ----- Original Message -----
      > From: "tanklm" <lynn@...>
      > To: <ydn-javascript@yahoogroups.com>
      > Sent: Monday, October 01, 2007 1:37 PM
      > Subject: [ydn-javascript] Re: Problem with Datatable
      >
      >
      > >
      > > I copied the local XML example from the examples page and plugged in
      > > my own xml file to read/write to/from. I'm using CGI to do the adds
      > > and deletes from the local xml file. I'm using Connection to read in
      > > the data. This GET reads from the cache whenever it can which is not
      > > what I want it to do.
      > >
      > > this.getXML = YAHOO.util.Connect.asyncRequest("GET", "data.xml",
      > > this.connectionCallback);
      > >
      > >
      > > --- In ydn-javascript@yahoogroups.com, "Satyam" <satyam@> wrote:
      > >>
      > >> Perhaps if you tell us what it is you are using someone with
      > > experience in
      > >> that language, framework or whatever might help you.
      > >>
      > >> Satyam
      > >>
      > >> ----- Original Message -----
      > >> From: "tanklm" <lynn@>
      > >> To: <ydn-javascript@yahoogroups.com>
      > >> Sent: Monday, October 01, 2007 12:46 PM
      > >> Subject: [ydn-javascript] Re: Problem with Datatable
      > >>
      > >>
      > >> >
      > >> > I am having the same problem with a datatable that is similar
      to the
      > >> > Local XML example
      > >> >
      > >
      (http://developer.yahoo.com/yui/examples/datatable/dt_xhrlocalxml.html).
      > >> > It reads my xml file from cache unless I specifically clear the
      cache
      > >> > between reloads. I'm not using PHP. Where/How would I set these
      > >> > headers in this case?
      > >> >
      > >> > --- In ydn-javascript@yahoogroups.com, "Satyam" <satyam@> wrote:
      > >> >>
      > >> >> The problem is with caching. You can tell IE not to cache, which
      > > will
      > >> >> prevent it from caching everything from your site or others or you
      > >> > can send
      > >> >> the proper headers from the server side to tell the browser the
      > > page is
      > >> >> expired. In PHP you can do:
      > >> >>
      > >> >> header('Cache-Control: no-cache, must-revalidate'); //
      > > HTTP/1.1
      > >> >> header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); //
      Date in
      > >> > the past
      > >> >>
      > >> >> right before echoing any content. Those headers tell the browser
      > >> > (and any
      > >> >> intermediate caching proxy) that the page is not to be cached and,
      > >> > just in
      > >> >> case, that it has already expired.
      > >> >>
      > >> >>
      > >> >>
      > >> >> ----- Original Message -----
      > >> >> From: "garymtarr" <GaryTarr@>
      > >> >> To: <ydn-javascript@yahoogroups.com>
      > >> >> Sent: Wednesday, September 12, 2007 5:14 AM
      > >> >> Subject: [ydn-javascript] Problem with Datatable
      > >> >>
      > >> >>
      > >> >> > Hi,
      > >> >> >
      > >> >> > I am trying to refresh a datatable on a timed basis.
      However, each
      > >> >> > time I do the sendRequest, the same data is always returned. In
      > >> >> > fact, if the web server is stopped, I still get back the
      same data
      > >> >> > after the first request. It seems like the DataSource object is
      > >> >> > caching the first set of data but I can't figure out how to turn
      > >> >> > caching off. The documentation says that caching is turned
      off by
      > >> >> > default so I am confused. Any help would be appreciated. BTW,
      > > I am a
      > >> >> > new javascript programmer but have experience in other
      languages.
      > >> >> > Below is the code :
      > >> >> >
      > >> >> > Thanks in advance
      > >> >> > Gary
      > >> >> >
      > >> >> > var IsItUp={};
      > >> >> >
      > >> >> > IsItUp.DeviceViewRefreshTimeMS=30000;
      > >> >> >
      > >> >> > IsItUp.IsItUpData = [
      > >> >> > {Status:"0", DeviceGroup:"Main
      > >> >> > Office",DeviceName:"Exchange Server",UpDownTime:"5 Days 3 Hr 4
      > > Mn 18
      > >> >> >
      > > Sec",Address:"192.168.6.4",Availability:"93%",ResponseTimeAvg:"000:00:
      > >> >> > 01.382",MostRecentContact:"Wed Sep 5,2007 22:36"},
      > >> >> > {Status:"1", DeviceGroup:"Main
      > > Office",DeviceName:"Web
      > >> >> > Server",UpDownTime:"5 Days 3 Hr 4 Mn 18
      > >> >> >
      > > Sec",Address:"192.168.6.4",Availability:"93%",ResponseTimeAvg:"000:00:
      > >> >> > 01.382",MostRecentContact:"Wed Sep 5,2007 22:36"},
      > >> >> > {Status:"2",
      > > DeviceGroup:"Accounting",DeviceName:"File
      > >> >> > Server",UpDownTime:"5 Days 3 Hr 4 Mn 18
      > >> >> >
      > > Sec",Address:"192.168.6.4",Availability:"93%",ResponseTimeAvg:"000:00:
      > >> >> > 01.382",MostRecentContact:"Wed Sep 5,2007 22:36"},
      > >> >> > {Status:"3",
      > >> >> > DeviceGroup:"Accounting",DeviceName:"Print
      > > Server",UpDownTime:"5 Days
      > >> >> > 3 Hr 4 Mn 18
      > >> >> >
      > > Sec",Address:"192.168.6.4",Availability:"93%",ResponseTimeAvg:"000:00:
      > >> >> > 01.382",MostRecentContact:"Wed Sep 5,2007 22:35"},
      > >> >> > {Status:"0",
      > >> >> > DeviceGroup:"Development",DeviceName:"Exchange
      > > Server",UpDownTime:"5
      > >> >> > Days 3 Hr 4 Mn 18
      > >> >> >
      > > Sec",Address:"192.168.6.4",Availability:"93%",ResponseTimeAvg:"000:00:
      > >> >> > 01.382",MostRecentContact:"Wed Sep 5,2007 22:36"}
      > >> >> > ]
      > >> >> >
      > >> >> >
      > >> >> >
      > >> >> >
      > >> >> > YAHOO.util.Event.addListener(window, "load", function()
      > >> >> > {
      > >> >> > IsItUp.CreateDeviceViewTable = new function()
      > >> >> > {
      > >> >> >
      > >> >> > this.StatusColumnFormatter = function(elCell, oRecord,
      > >> >> > oColumn, oData)
      > >> >> > {
      > >> >> > if(oRecord.getData("Status")=="0")
      > >> >> > {
      > >> >> > elCell.innerHTML = ' <img
      > >> >> > src="arrow_up.ico">';
      > >> >> > }
      > >> >> > if(oRecord.getData("Status")=="1")
      > >> >> > {
      > >> >> > elCell.innerHTML = ' <img
      > >> >> > src="arrow_down.ico">';
      > >> >> > }
      > >> >> > if(oRecord.getData("Status")=="2")
      > >> >> > {
      > >> >> > elCell.innerHTML = ' <img
      > >> >> > src="arrow_testing.ico">';
      > >> >> > }
      > >> >> > if(oRecord.getData("Status")=="3")
      > >> >> > {
      > >> >> > elCell.innerHTML = ' <img
      > >> >> > src="disabled.ico">';
      > >> >> > }
      > >> >> >
      > >> >> > }
      > >> >> >
      > >> >> > var DeviceViewColumnDefs =
      > >> >> > [
      > >> >> >
      > >> >> >
      > > {key:"Status",label:"Status",formatter:this.StatusColumnFormatter,sort
      > >> >> > able:true, resizeable:true},
      > >> >> > {key:"DeviceGroup",label:"Device
      > >> >> > Group",sortable:true, resizeable:true},
      > >> >> > {key:"DeviceName",label:"Device
      Name",sortable:true,
      > >> >> > resizeable:true},
      > >> >> > {key:"UpDownTime",label:"Up/Down Time",
      > >> >> > sortable:true, resizeable:true},
      > >> >> > {key:"Address",sortable:true, resizeable:true},
      > >> >> > {key:"Availability", sortable:true,
      > > resizeable:true},
      > >> >> > {key:"ResponseTimeAvg",label:"Response Time
      (Avg)",
      > >> >> > sortable:true, resizeable:true},
      > >> >> > {key:"MostRecentContact",label:"Most Recent
      > > Contact",
      > >> >> > sortable:true, resizeable:true}
      > >> >> > ];
      > >> >> >
      > >> >> > this.oLogReader = new YAHOO.widget.LogReader();
      > >> >> > this.IsItUpDataSource = new YAHOO.util.DataSource("/?");
      > >> >> > this.IsItUpDataSource.responseType =
      > >> >> > YAHOO.util.DataSource.TYPE_JSON;
      > >> >> > this.IsItUpDataSource.connXhrMode = "queueRequests";
      > >> >> > this.IsItUpDataSource.responseSchema = {
      > >> >> > resultsList: "ResultSet",
      > >> >> > fields:
      > >> >> >
      > > ["Status","DeviceGroup","DeviceName","UpDownTime","Address","Availabil
      > >> >> > ity","ResponseTimeAvg","MostRecentContact"]
      > >> >> > };
      > >> >> >
      > >> >> > this.DeviceViewTable = new
      YAHOO.widget.DataTable("basic",
      > >> >> > DeviceViewColumnDefs,this.IsItUpDataSource,
      > > {initialRequest:"cmd=1"});
      > >> >> >
      > >> >> >
      > >> >> > this.RefreshDeviceView = function()
      > >> >> > {
      > >> >> > debugger;
      > >> >> >
      > >> >> > IsItUp.CreateDeviceViewTable.IsItUpDataSource.flushCache();
      > >> >> >
      > >> >> >
      IsItUp.CreateDeviceViewTable.IsItUpDataSource.sendRequest("cmd=1",
      > >> >> >
      > > IsItUp.CreateDeviceViewTable.DeviceViewTable.onDataReturnInitializeTab
      > >> >> > le,IsItUp.CreateDeviceViewTable.DeviceViewTable);
      > >> >> > var RefreshSpan =
      > >> >> > document.getElementById("NextRefresh");
      > >> >> > var NextRefresh =
      new Date
      > >> >> > ();
      > >> >> > var CurrentTimeMS =
      > >> >> > NextRefresh.getTime();
      > >> >> > NextRefresh.setTime
      > >> >> > (CurrentTimeMS + IsItUp.DeviceViewRefreshTimeMS);
      > >> >> > var
      HrMinSecToNextRefresh=
      > >> >> > NextRefresh.getHours() + ":" + NextRefresh.getMinutes() + ":" +
      > >> >> > NextRefresh.getSeconds();
      > >> >> >
      > >> >> > RefreshSpan.innerHTML=HrMinSecToNextRefresh;
      > >> >> > }
      > >> >> >
      > >> >> >
      setInterval("IsItUp.CreateDeviceViewTable.RefreshDeviceView
      > >> >> > ()",IsItUp.DeviceViewRefreshTimeMS);
      > >> >> >
      > >> >> >
      > >> >> >
      > >> >> >
      > >> >> >
      > >> >> > Yahoo! Groups Links
      > >> >> >
      > >> >> >
      > >> >> >
      > >> >> >
      > >> >> >
      > >> >> >
      > >> >> > --
      > >> >> > No virus found in this incoming message.
      > >> >> > Checked by AVG Free Edition.
      > >> >> > Version: 7.5.485 / Virus Database: 269.13.15/1002 - Release
      Date:
      > >> >> > 11/09/2007 17:46
      > >> >> >
      > >> >> >
      > >> >>
      > >> >
      > >> >
      > >> >
      > >> >
      > >> >
      > >> > Yahoo! Groups Links
      > >> >
      > >> >
      > >> >
      > >> >
      > >> >
      > >> > --
      > >> > No virus found in this incoming message.
      > >> > Checked by AVG Free Edition.
      > >> > Version: 7.5.488 / Virus Database: 269.13.35/1040 - Release Date:
      > >> > 30/09/2007 21:01
      > >> >
      > >>
      > >
      > >
      > >
      > >
      > >
      > > Yahoo! Groups Links
      > >
      > >
      > >
      > >
      > >
      > > --
      > > No virus found in this incoming message.
      > > Checked by AVG Free Edition.
      > > Version: 7.5.488 / Virus Database: 269.13.35/1040 - Release Date:
      > > 30/09/2007 21:01
      > >
      >
    • Show all 8 messages in this topic