WEB开发网
开发学院软件开发Java 使用 Grails 构建富 Internet 应用程序,第 1 部分... 阅读

使用 Grails 构建富 Internet 应用程序,第 1 部分: 使用 Grails 和 Flex 构建 Web 应用程序

 2009-11-19 00:00:00 来源:WEB开发网   
核心提示: 清单 6 给出了 Story 类的基础内容,它具有几个与您将从服务获取的数据结构对应的字段,使用 Grails 构建富 Internet 应用程序,第 1 部分: 使用 Grails 和 Flex 构建 Web 应用程序(9),这个构造器采用一个可选的 XML 对象,并通过这个对象填充字段,即用

清单 6 给出了 Story 类的基础内容。它具有几个与您将从服务获取的数据结构对应的字段。这个构造器采用一个可选的 XML 对象,并通过这个对象填充字段。您可能已经看到,访问 XML 数据的语法非常简单。ActionScript 将 E4X 标准实现为处理 XML 的简化方式。这类似于 XPath,但使用对面向对象编程语言更加自然的语法。此外,每个属性都使用 [Bindable] 修饰。这是一个 ActionScript 注释。它允许将 UI 组件绑定到字段,以在字段发生变更时自动更新 UI。最后需要注意的是静态变量 listStoriesLoader。这是 URLLoader 的一个实例,即用于发送 HTTP 请求的 ActionScript 类。Story 类中的一个静态方法使用它通过 API 加载所有新闻。如清单 7 所示。


清单 7. 列出 Stories 方法
public class Story extends EventDispatcher 
{ 
  public static function list(loadHandler:Function, errHandler:Function=null):void 
  { 
    var req:URLRequest = new URLRequest(LIST_URL); 
    listStoriesLoader = new URLLoader(req); 
    dispatcher.addEventListener(DiggEvent.ON_LIST_SUCCESS, loadHandler); 
    if (errHandler != null) 
    { 
      dispatcher.addEventListener(DiggEvent.ON_LIST_FAILURE, errHandler); 
    } 
    listStoriesLoader.addEventListener(Event.COMPLETE, listHandler); 
    listStoriesLoader.addEventListener(IOErrorEvent.IO_ERROR, listErrorHandler); 
    listStoriesLoader.load(req); 
  } 
  private static function listHandler(e:Event):void 
  { 
    var event:DiggEvent = new DiggEvent(DiggEvent.ON_LIST_SUCCESS); 
    var data:Array = []; 
    var storiesXml:XML = XML(listStoriesLoader.data); 
    for (var i:int=0;i<storiesXml.children().length();i++) 
    { 
      var storyXml:XML = storiesXml.story[i]; 
      var story:Story = new Story(storyXml); 
      data[data.length] = story; 
    } 
    event.data = data; 
    dispatcher.dispatchEvent(event); 
  } 
} 

上一页  4 5 6 7 8 9 10  下一页

Tags:使用 Grails 构建

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接