2009年3月26日星期四

ArcGIS Server Java ADF 案例教程 5

ADF的物理组成

现在,ADF对你来说或许就像远处的一个美女,氤氲中你依稀可以看到她的体态轮廓;当然,你同时也迫切希望能更深一步地了解她。现在我们要做的,就是走近她,慢慢揭开她的面纱。

我现在感觉自己有点像一个导演——当然,我可不想是拍《无极》那种烂片的水平——面对一个“她”,目前正在设计一个镜头,目的是怎样可以比较艺术化地表现出她的一切。这里,我决定从她的肉体——ADF的物理组成入手,先带你去一窥它的全貌。

现在,让我们首先新建一个ADF的模板工程,这个模板工程是ESRI使用ADF开发的一个简单的Web应用供你参考,它包含了一些最常用和最基本的GIS功能;当然,它也必不可少会将ADF这个框架包含在这个应用中。

对了,迄今为止我们也没有讲怎么搭建ADF的开发环境,并且新建ADF模板工程来测试我们的开发插件是否安装成功。这些内容在我很久以前的文章中写过,我就不想在这里再重复一遍,分散我们对ADF的注意力了。这些内容,不管是基于Eclipse还是NetBeans,都可以从ADF的帮助文档中找到;你也可以参考我写的文档:《配置ArcGIS Server 9.3 Java开发环境(Eclipse/NetBeans)》——好了,现在我认为你已经配置好了开发环境,并且学会如何新建一个ADF模板工程了。另外,下面的讲解基于的IDE是Eclipse。

让我们打开刚刚新建的ADF模板工程,展开项目的目录结构。我对其中一些重要的部分重点用图 2表示了出来,下面让我们一级一级地展开。
图 2 ADF模板工程的目录结构

在一个ADF的工程中,与开发相关的主要是“/src”目录和“/WebContent”目录。“/src”目录主要存放Java源代码相关内容,这些源代码最终会被编译后放到“/WebContent/WEB-INF/classes”目录中去;“/WebContent”目录主要存放最后需要部署的Web应用的内容。

在“/src”目录中,纯Java的代码一般会放到你自己的命名空间下,比如“/src/com/…”目录;“/src/xsl”是另外一个很重要的目录,其中包含许多xsl文件,ADF通过这些xsl来渲染ADF组件,具体它是怎么工作的我们后续会做更详细的介绍。

现在转到“/WebContent”目录,ADF本身带了一些“css”、“images”、“themes”目录内容来定义默认模板工程的样式;当然,还有一些“*.jsp”页面——事实上,在你自己做应用的时候基本上不需要用到这些页面。在此要详细解释的是“/WebContent/js”和“/WebContent/WEB-INF”两个目录。

“/WebContent/js”目录包含了ADF的JavaScript函数库,主要是ADF在跟服务器做AJAX交互的时候需要用到,当然,你自己定义的JavaScript脚本也可以放到这个目录下;“/WebContent/WEB-INF”目录存放所有不希望被Web访问者访问到的文件和库,包括一些“*.xml”配置文件、“/WebContent/WEB-INF/classes”下的类文件(从“src”编译生成)、“/WebContent/WEB-INF/lib”下的Java库。

在这里我们稍微总结一下ADF的物理组成:ADF的核心主要包括“/WebContent/WEB-INF/lib”目录下的Java库(底层功能、ADF的JSF组件等)、“/WebContent/js”目录下的JavaScript脚本库(支持AJAX)和“/WebContent/WEB-INF/classes/xsl”目录下的XSL样式表语言文件(渲染ADF组件);除此之外,ADF外围还有一些模板页面、CSS文件、图片、主题等可用可不用的附赠品;最后,作为开发框架,ADF还包括帮助文件和例子,虽然这里并没有介绍它们——因为它们并不会被放到工程中去。

没有评论: