The problem is that I'm transferring an ActionScript object to the server, populating it with the data, and then returning the ActionScript via BlazeDS and remoting (so these objects get converted to Java objects on the server and back to ActionScript when the come into flex). And the ArrayCollection is buried deep in the the object and I also build the series items for the chart on the fly in Actionscript. So I don't have access to the series items in the chart I create (for instance to reassign the dataproviders), nor do I have easy access to the ArrayCollections themselves since they are buried in the ActionScript objects. Here's some pseudocode of how the charts get created which illustrates the problem.
in ReportObject for each ChartObject in ReportObject create CartesianChart for each AxisObject in ChartObject create DateTimeAxis and assign it to chart for each SeriesObject in AxisObject create Series and assign it to axis bind SeriesObject.data to Series.dataprovider So when I get the next ReportObject pushed to the flex app from the server, the structure of the Report is exactly the same (i.e. x# axes, x# series for a given axis, etc) but the data has been updated and the series do not pick this up.