Flex goes deep
We build a lot of Flex applications here at Adobe. One of the things that we’ve always struggled with is how to build Flex-based web applications that are bookmarkable, work with the back button, and so forth. There has been various solutions offered in the past, most notably Joe Berkovitz’ UrlKit. But the big problem with these solutions is that they put the extra stuff after a ‘#’ sign in the URL, which always left me cold.
That’s why I was so happy to see that the next version of Flex (Moxie) will have deep linking support:
The deep linking feature of Flex 3 allows a Flex application to manage data within a URL using the HTML Anchor(#) feature. Using the new BrowserManager a Flex application can bind to data within the URL to both set and detect changes in the URL. This feature makes it easy to persist data in the URL for bookmarking and provide a new way to input data into a Flex application. The new classes added include:
mx.events.BrowserChangeEvent;
mx.managers.IBrowserManager;
mx.managers.BrowserManager;
mx.utils.URLUtil;
Application.historyManagementEnabled
The cool part is that this API is open and can be used for many purposes outside of the deep linking feature. It allows the URL of the browser to be in sync with the context of a Flex application.
For more discussion, see the posts by Ryan Stewart and Marco Casario.
Oh, and the internationalization support is pretty nice too. 🙂
The Flex 3 solution seems to be exactly what you complained about – putting things into the URL with the # character… How exactly is Moxie different?
Sigh, you’re right. I misread the story to read that it didn’t use the anchor and got excited. Chalk it up to wishful thinking on my part, I guess. I’m still not happy with that solution.