Myeclipse10 + Flex4.6 集成开发 配置

第一篇 博客,记录 Arcgis Server 开发之路

最近,要研究生毕业了,找了份工作,是做Arcgis二次开发的,之前没怎么做过,从今天开发学习。

由于在公司实习用过Flex,这几天在网上荡来荡去,发现Arcgis有Flex Api,用Flex做二次开发的前端,好处有一大堆,我就不说了。

现在Web企业系统基本上都是基于j2ee的,因此Arcgis二次开发也大多数是基于j2ee的,也由于我javaweb比较熟悉吧。

搭配环境是开发的第一步。

下面是我搭Myeclipse + Flex + Blazeds开发的步骤,可以完美实现。

第一步:

建立WEB项目:

点击finish;

 

 

第二步:

右键WebRoot

点击import:

点金FileSystem:

点击Browse:

选择blazeds的解压缩文件夹:在blazeds文件夹下有两个子文件夹,分别是:

META-INF,WEB-INF,导入之后,如下图所示:

点击finish,在弹出的对话框选择yes  to  all

这时候项目结构如下:

 

第三步:

把项目部署到tomcat中

第四步:

右键项目名称:选择 添加/更改项目类型,选择添加FLEX项目类型,如下图所示:

配置如下:

点 next:

配置如下:

 

一开始会提示你先点击验证配置,这个不用管,先把配置弄好,再点击验证配置,

根文件夹:前面你部署项目到tomcat,直接去tomcat下的webapps找到项目

根url:http://localhost:tomcat端口号,我的是8080/项目名称(flexDemo)

上下文根目录:和项目名称一致(flexDemo)

输出文件夹:我是手动填写的,没用默认的,这里是WebRoot

完成之后点击验证配置,

点击finish:项目结构如下:

项目有错误,去找

点击右键:

错误就消失了。

第四步:

往flexDemo文件里面拖放一个DataGrid控件,代码如下:

<?xmlversion="1.0" encoding="utf-8"?>

<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"

               xmlns:s="library://ns.adobe.com/flex/spark"

               xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">

    <fx:Declarations>

        <!-- 将非可视元素(例如服务、值对象)放在此处 -->

    </fx:Declarations>

    <mx:DataGrid x="138" y="67">

        <mx:columns>

            <mx:DataGridColumn headerText="列 1" dataField="col1"/>

            <mx:DataGridColumn headerText="列 2" dataField="col2"/>

            <mx:DataGridColumn headerText="列 3" dataField="col3"/>

        </mx:columns>

    </mx:DataGrid>

   

</s:Application>

 

部署到tomcat下,启动tomcat

在浏览器输入:http://localhost:8080/flexDemo/flexDemo.html

出现如下所示画面就说明成功了:

第五步:建立java与Flex的通信:

 

首先在src下创建两个类:P和PS

package test;

 

public class P {

   

String name;

    public String getName() {

        return name;

    }

    public void setName(String name) {

        this.name = name;

    }

    public P(String n){

        this.name=n;     

    }

}

 

package test;

 

import java.util.ArrayList;

import java.util.List;

 

public class PS {

 

    public List getList(){

        List l=new ArrayList();

        for(int i=0;i<10;i++){

            l.add(new P("第"+i+"个"));

           

        }

        return l;         

    }

}

 

第六步:

WEB-INF文件夹下的flex中在remoting-config.xml文件中定义 PS对应的 destination

<destination id="test">

    <properties>

        <source>test.PS</source>

    </properties>

</destination>

 

flexDemo.mxml代码如下:

<?xmlversion="1.0" encoding="utf-8"?>

<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"

               xmlns:s="library://ns.adobe.com/flex/spark"

               xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"  creationComplete="init()">

    <fx:Script>

        <![CDATA[

            import mx.controls.Alert;

            import mx.rpc.events.ResultEvent;

            import mx.rpc.events.FaultEvent;

           

            [Bindable]

            private varemployeeList:Object;

           

            private function init():void {

                employeeServiceRO.getList();

            }

           

            private function resultHandler(event:ResultEvent):void {

                employeeList =event.result;

            }

           

            private function faultHandler(event:FaultEvent):void {

                //Alert.show(event.fault.faultString, 'Error');

                Alert.show(event.toString(),'Error');

            }

        ]]>

    </fx:Script>

    <fx:Declarations>

        <mx:RemoteObject id="employeeServiceRO" destination="test"

                         result="resultHandler(event);"

                         fault="faultHandler(event);"/>

    </fx:Declarations>

    <mx:DataGrid x="32" y="25" width="400" dataProvider="{employeeList}">

        <mx:columns>

            <mx:DataGridColumn headerText="Name" dataField="name"/>

        </mx:columns>

    </mx:DataGrid>   

</s:Application>

注意:<mx:RemoteObject> 中的destination必须与remoting-config.xml中的destination中的id名称一样,这里都是test

第七步:修改隐藏文件夹的配置信息:

可以去项目所在的目录中找,也可以在myeclipse直接修改,如下所示:

点击之后如下所示:

点一下 把前面的勾去掉,点击OK,就可以显示隐藏文件了,项目结构如下所示:

打开flexProperties文件:

修改配置信息:

serverContextRoot="flexDemo"

将serverContextRoot改为你项目的名称,如果本来就是项目名称就不用改了,然后刷新一下项目,右键项目名称,点击refresh;

重新部署,启动tomcat,打开浏览器输入:http://localhost:8080/flexDemo/flexDemo.html

出现如下界面,说明项目成功:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值