Flex :: Caching - Get Builder To Use The Selected Framework?
Sep 2, 2009
I'm attempting to create a Flex Project that will cause the Flash Player to cache the Flex framework. Flex Builder comes with Flex SDK 3.2.0.3958 and setting the Framework Linkage to use Runtime shared Library (RSL) under Project Properties -> Flex Build Path will separate the framework from my main application and I see that my project's bin-debug directory contains framework_3.2.0.3958.swf and *.swz for distribution.Flex SDK 3.4 fixes a few bugs, so I configured it as another available sdk and set it as the default SDK. When I compile, I expect the bin-debug directory to contain framework_3.4.0.9271.swf and *.swz; however, Flex Builder is still writing framework_3.2.0.3958.swf and *.swz.
Does not want to work for me. Tracing the expression in debug it is returning "XMLList (@11e55e8d1)".
The datasource is an XMLListCollection. tracing the expression myDataGid.selectedItem I can see the studentID node and it has a value.
I see that starting with Flex 4.5, Adobe recommends that we use the spark.components.DataGrid class as an alternative to the mx:dataGrid which I am not at all familiar with or where to start to learn. I have this mx:dataGrid all setup and otherwise working and would prefer not to have to learn something new.
Is there any way to disable a few columns for a particular row in flex datagrid?
I have a datagrid with about 10 or more columns, say for example a few column names are: Item Id, Item Name, Item Status and VerifiedState. Initially I want the column Verified State to be disabled.
Now When the value of the column, Item Status is Review Passed for a particular row, I want the column VerifiedState to be enabled and editable. Is that possible in Flex datagrid.
I just upgraded to Flash Builder 4 (beta 2) from Flex Builder 3 which I have been using since it came out. Problem: All the projects that were in my workspace from Flex Builder 3 did not carry over into Flash Builder 4 (e.g. in the "Flex Navigator" view if FB3). Flash Builder 4 now uses the .FXP format to manage projects, but Flex Builder 3 did not. Is there an easy way to get all my projects back into Flash Builder 4?
Does anyone know if there is a way to make the new Package Explorer window in Flash Builder emulate Flex Builders 'Flex navigator' window?
Bottom line is I don't always need to peer into SWC's, and I don't like having a 'default package' automatically created for me. Not sure why the interface wasn't made simpler, allowing access to more power and complexity only if necessary. I want to focus on the code, not on how to navigate and use the bells and whistles in the coding environment.
When setting up a source control repository for a Flex Builder workspace, what do you consider to be worth checking in? Do you exclude the workspace .metadata folder but keep the .project and other project specific files? Keep both? Throw away both? Is there a guideline you use to decide which is worth holding onto or do you do it out of practical experience?
I'm developing a web application (client in Flash Builder 4, server in Eclipse 3.6 + Tomcat 7 + Spring 3 Framework). How do I make the Flex client automatically deploy in the Tomcat server and use BlazeDS messaging and remoting more seamlessly?
I have this PHP page that lists several people. When someone clicks on one of the people they are sent to another PHP page that has their video greeting in a .swf embedded into the page. This works by the php writing the path to the greeting video to the xml file that the .swf loads and plays.
Well in firefox it works perfect, but in IE when they try to click on another greeting the original greeting still plays. Its like the swf is caching the first greeting and refresh of the page does nothing to alleviate this. Is this a problem with the swf caching? or XML caching? or am I totally clueless?
I have a project that is for several customers, the only difference is in the DB, everything else looks the same, except for the main page's text. That is loaded from an external swf file. I created a library, compiled it as an swc, imported it and using it as an RSL. The problem is that if once I've opened the page, and afterwards update the rsl (because changes in the text are needed), than it's already cached by the browser (not the flashplayer's cache but we shouldn't discuss this please!) and the updated swf won't be loaded. If I use it as an external, the page won't even start up (the browser says it's loaded, but it's blank, not even the loading progess bar of flex appear)
this is the code on the main page, if I comment this out, than the whole thing loads, even with the use of the "external" link-type. in the design view, I see the component, but I get a warning for the library:
Design mode could not load MainPage.swc. It may be incompatible with this SDK, or invalid.DesignAssetLoader.CompleteTimeout)
I have been seeing some Flex Frameworks, but would like to ask to the programmers and Architects down here on which has suited best in your application.
I have a rather large Flex SWF and am breaking it up into separate Modules. There is some overlap between the modules and I want to put all of this into one shared RSL. The problem is that this RSL gets really large as soon as I use any Flex code because it has to include the Flex Library.Flex Builder doesn't seem to give me the option to use the Flex framework RSL in a library. Also compiling with compc and passing the runtime-shared-library-path doesn't seem to actually use the rsl.So it seems like this is something that is unsupported? Does anyone have any idea how I can do this? Is it just not possible? Is this something that is likely to be supported in the future or already supported in Gumbo?
I've created a Flex application and the size of the swf file is ~900KB. My trouble is that the files are not getting cached. When I launch the application for the second time, the swf file is fetched again from the server. I'm including the swf file in a jsp, and I'm not modifying any HTTP Caching Headers. I assumed that the swf files will be cached automatically. Isn't it so? How do I forcefully cache the file? Do I need to provide anything in the MXML code or just a response.setHeader("Cache-Control","max-age=100"); is enough? Can anything be done from the flex side itself?
i pass text strings from a configuration file into my Flex app, one of the strings i pass in is a mailto link which i use to allow users of my app to send me feedback. I recently needed to change this link however when i updated the link in my config file the change did not happen instantly in my Flex app. In fact i had to clear my cache (both browser and flash player) before the change showed up. This of course is fine for me but how can i be sure that users of the application also get the updated content? Is there a way to force a refresh of data loaded into my swf on other users browsers?
Finally is this an issue with my browser cache or the Flash player cache? Does the flash player only keep such data, like my email address, in memory while the app is in use and then clear once it is closed or does it cache this data for the next time the user wants to use the app?
I am developing an eLearning application in Flex which shows flv movies hosted on a webserver. If the app has many simultaneous users the download demand is quite high because a lot of users need to download the (same) movie(s). Is there a way I can precache this data in my flex client like storing it in the browsercache or something so that for later sessions the bandwidth demand is less high?
I'm new to Flex and want to learn about how to implement client-side caching for data that is repeatedly requested from the server.
Let's focus on a simple example to discuss caching. Take a Flex application having several screens, where each screen plots a line series (of x and y data). The user can switch between the screens, and each time a screen is visited or re-visited, numerical arrays for both x and y data are requested from the server. The values of the x and y data on the server, of course, never change.
I want to learn what techniques are available that could be used to implement caching in the browser or AIR application such that once the x and y data is downloaded the first time, the application pulls these arrays from cache when re-visiting this screen in the future.
I am trying to migrate a project from Flash Builder 4.0 to Flash Builder 4.5. After Flash Builder prompts me to choose my new SDK, I choose 4.5, Then I get the following error:" error "The required skin state 'disabledWithPrompt' is missing".
I have the following problem, I have a flex application that works as a frontend in a client-server-application. In my application I have two sliders and a chart that moves when I drag the sliders, now when I have the following positions
slider 1: 10 slider 2: 20
a request is sent to the server and the response back to my flash. When I now change the sliders to
slider 1: 10 slider 2: 30
another request is sent to the server, because we have changed the position of slider 2. When I now turn the sliders again to the first position.
slider 1: 10 slider 2: 20
no request is sent to the server and the chart is moved correctly because the flash seems to know what he will receive, I think the application has cached the result. This effect only works when I open the flash application in the flash player. When I open it in the browser every slider position leeds to another request to the server. Is there a way to enable the caching also when I open it in the browser?
I've got the following Javascript for creating the HTML of video player. I use Javascript because this is the only way I can tell the player which video to play.
[Code]...
The problem is FlexPlayer.swf is loading every time and I need to cache this SWF file. Maybe I should use Javascript constructor but don't know how in this case.
i am using an itemRenderer in mx:list, it has many text fields and combos, i use this item renderer to edit items in array collection, each item in the arrayCollection is of type Action which comes from BlazeDS remoting as a valueObject.my problem is when i add new item of type Action to the list dataProvider (ArrayCollection) by this code
myList.dataProvider.addItem(new Action());
the new item tooks the same data from its previous item.
I have a Flex 3 application that makes a call to a webservice. That webservice calls returns a 2 Mb file that flex reads and parses. The problem is that it takes sometimes 45 seconds. I was wondering if there is a way to cache the response form the webservice? So the next time I load the flash movie it doesn't have to re-download the full file but just the updated data.
I'm writing a flex application that polls an xml file on the server to check for updated data every few seconds, and I'm having trouble preventing it from caching the data and failing to respond to it being updated.
I've attempted to set headers using the IIS control panel to use the following, without any luck:
CacheControl: no-cache Pragma: no-cache
I've also attempted adding a random HTTP GET parameter to the end of the request URL, but that seems like it's stripped off by the HttpService class before the request is made. Here's the code to implement it:
http.url = "test.xml?time=" + new Date().getMilliseconds();
And here's the debug log that makes me think it failed:
(mx.messaging.messages::HTTPRequestMessage)#0 body = (Object)#1 clientId = (null)
I have a List and the item renderer displays an image. Whenever you scroll the list, and the item renderer refreshes, it redownloads the image. Causing there to always be a delay. Is there some way of caching it so it doesn't have to redownload every time causing a delay in showing the image every time you scroll the list?
I have an online flex app that is served via an html page. Its critical that the flex app is refreshed in the user's cache every time that it changes. To help ensure that this happens, I change the name of the swf file every time that it changes. In addition, the html page contains the following lines of code:
Using these techniques, FF and IE always seem to grab the latest swf file every time. Google chrome, however, NEVER gets the latest swf file - the only way to get the update is to hit shift+refresh in chrome.
Is there a fail-safe way for me to ensure that the latest swf file is always delivered to the browser?
I'm developing an AIR application with Flash Builder 4 Beta 2 (nightly SDK) an am not using a framework like mate. I have a couple of views and components in my application. An outline might look like this:
I was reading these days about large projects implementation in python and Flex, and very often people praise the use of framework (like Cairngorm, PureMVC or others) over traditional OOP coding.
I think i dont really understand the advantage of using FW, which is the strong point over classic programming? how big should be the project in order to use FW? it is intended mainly for web-applications? or can be used for desktop apps as well?