MAXBloggers.net - Day 1 (b): Some talks
Learn something new every day -- there is a MAX Bloggers site.
Using ASP.NET Web Services from DreamWeaver:
- What can I say, almost as easy as using them from VS
Building Code-based RIAs (aka Intro to Flex):
- Flex: "Code you put on your J2EE server that helps you build Flash apps"
- code written as MXML, upon request, compiled to SWF and returned
- can write JSP to emit MXML, which Flex will push down as SWF
- ship - 1st half next year
- "I'm not going to click on anything, because I'm scared." - quote from Flex engineer.
- {} can enclose any arbitrary AS code
- in sample below, automagically builds watchers on the expression to populate when it changes (no need to wait for the WS to return)
- default validator behavior is to red outline field, display tag help
- supports "the first 12.5 chapters of the SVG spec"
- have a number of layout managers, included none (absolute positioning)
- have a number of validators, can create your own
- navigators - enable moving between forms, such as TabNavigator, AccordianNavigator, ListNavigator, etc.
- all tags map to components (ActionScript or Flash class or block of MXML)
- existing controls can be skinned to alter display
Sample Flex app (may be interesting to those with Longhorn installed):
<mx:Application xmlns:mx="" width="" height="" backgroundImage="gradient.svg">
<mx:Style>css stylesheet</mx:Style>
<mx:Effect>
<mx:Sequence id-"myEffect" >
<mx:Move xFrom="" duration-"" />
<mx:Fade alphaFrom="">
</mx:Sequence>
</mx:Effect>
<mx:WebService id="ws" wsdl=""
result="out.visible=true"> <!-- can also call Java server-object, retrieve XML etc.-->
<mx:operation name-"getInfo">
<mx:request>
<in0>{inp.text}</in0>
</mx:request>
</mx:operation>
</mx:WebService>
<mx:Form>
<mx:ZipCodeValidator field="ws.getInfo.request.in0"/>
<mx:FormItem label="">
<mx:TextInput id="inp" width="" />
<mx:Button click="ws.getInfo(inp.text)" >Click me</mx:Button>
</mx:FormItem>
<mx:FormItem label="">
<mx:Label id="out" width="" visible="false" effect="myEffect">{ws.getInfo.result.city + ": " + ws.getInfo.result.state}</mx:Label>
<mx:Binding
</mx:FormItem>
<mx:Script>
function copyText() {
out.text=inp.text;
}
</mx:Script>
<mx:MediaDisplay id="" content="" />
</mx:Form>
</mx:Appliction>