flex经验心得Word格式.docx
《flex经验心得Word格式.docx》由会员分享,可在线阅读,更多相关《flex经验心得Word格式.docx(6页珍藏版)》请在冰豆网上搜索。
dataProvider>
Array>
Objecticon="
{point}"
/>
{polyline}"
{polygon}"
/mx:
ToggleButtonBar>
注意:
java项目:
LesConfig.xml要放在D:
\blazedsroy\tomcat\webapps\mmmnn\WEB-INF\classes下,而LesPackage.jar要放在D:
\blazedsroy\tomcat\webapps\mmmnn\WEB-INF\lib下,或者直接复制在Eclipse下java工程下,然后其上右键BuildPathAddtoBuildPath即可
2..在flex读取xml文件是乱码的解决办法,是在<
application>
下加一句:
initialize="
flash.system.System.useCodePage=true"
同样xml文件放在src文件夹下面即可读取
3.页面背景图片放在src文件夹下,页面的backgroundimage属性添加,而登陆框的titleimage添加标题图标。
4.地图位置放得不对,偏下,没有从左上角开始。
解决方法:
在Application后加入代码:
layout="
absolute"
paddingTop="
0"
paddingBottom="
paddingLeft="
paddingRight="
5图标事件:
鼠标放在上边没反应,没出现相应的
解决方法:
代码中将一下这段代码(工具条)
<
HBoxx="
150"
y="
73"
width="
400"
<
toob:
toolbarid="
toolControl"
44"
/>
tooldrawid="
toolDraw"
OverViewtoolid="
tooloverView"
HBox>
放在此段代码(地图canvas)<
esri:
Mapid="
map"
height="
100%"
805"
ArcGISDynamicMapServiceLayerurl="
http:
//192.168.10.221:
8399/arcgis/rest/services/tccg/MapServer"
<
/esri:
Map>
的下面
6.。
出现以下情况,调整相应的canvas的height和width。
7.问题:
ags:
myMap"
ArcGISDynamicMapServiceLayerid="
myMapServiceLayer"
url=http:
8399/arcgis/rest/services/tccg/MapServercomplete="
mapHandler(event)"
GraphicsLayerid="
myGraphicsLayer"
/ags:
this.myMap.visibleLayers=array_map;
varlayers:
Array=myMap.layerInfos;
找不到地图的layerInfos和visibleLayer属性
更改如下:
this.myMapServiceLayer.visibleLayers=array_map;
Array=myMapServiceLayer.layerInfos;
8.画图画不出点线面对象
创建专门的图层供画图使用
Drawid="
drawon"
map="
{map}"
graphicsLayer="
{myGraphicsLayer}"
markerSymbol="
{sms}"
lineSymbol="
{sls}"
fillSymbol="
{sfs}"
55"
1275"
logoVisible="
false"
<
ArcGISDynamicMapServiceLayer
url="
9.Find查不出来结果
错误解决:
改正如下
FindTaskid="
findTask"
executeComplete="
executeCompleteHandler(event)"
url="
是查询的是地图服务,而非图层原来的地址是:
8399/arcgis/rest/services/tccg/MapServer/142
即对应到id为142图层的图层
FindParametersid="
myFindParams"
returnGeometry="
contains="
searchText="
{fText.text}"
layerIds="
[142]"
这才是对应的图层的id号,可以设置多个
searchFields="
['
OBJECTID'
'
名称'
]"
相应搜索的字段名
Identify在太仓地图中会出现这样的问题:
将其改为identifyParams.spatialReference=newcom.esri.ags.SpatialReference(0);
10.blazeDStomcat配置问题
问题:
环境搭建成功了之后,而在建立项目时,却经常出现这样的问题:
在flexserevr点validatelocation后总是提示Cannotaccessthewebserver.Theservermaynotberunning,orthewebrootfolderorrootURLmaybeinvalid.
而我的tomcat已经启动了,百思不得其解。
问题最终的解决方法是:
blazeDStomcat配置2010-01-0410:
21
一,安装JDK。
安装到了C:
\ProgramFiles\Java\jdk1.6.0_14
二,解压blazeDS,解压到E:
\blazeds-turnkey-3.2.0.3978,然后右击“我的电脑”,点击“属性”,选择“高级”选项卡,点击“环境变量”,在“系统变量”中,设置4项属性,CATALINA_HOME,JAVA_HOME,PATH,CLASSPATH。
CATALINA_HOME设为:
E:
\blazeds-turnkey-3.2.0.3978\tomcat//这个是配置tomcat的根目录。
JAVA_HOME设为:
C:
\ProgramFiles\Java\jdk1.6.0_14//指明JDK安装路径C:
\ProgramFiles\Java\jdk1.6.0_14,此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依*此变量);
PATH设为:
%JAVA_HOME%\bin;
%JAVA_HOME%\jre\bin//使得系统可以在任何路径下识别java命令
CLASSPATH设为:
%CATALINA_HOME%\lib\servlet-api.jar;
%JAVA_HOME%\lib\dt.jar;
%JAVA_HOME%\lib\tools.jar//为java加载类(classorlib)路径,只有类在classpath中,java命令才能识别
三,配置过后,在浏览器打开http:
//localhost:
8400,打开WelcometoBlazeDS的页面说明成功。
11.java和Eclipse项目建好之后,记得要重启Tomcat,才能运行,因为已经改过remoting-config.xml和remoting-config.xml,得重新配置编译才行
12
在完成传值的过程中碰到以下几个问题,找不到编译类的路径:
n,最终发现因为采用的公司封装好的类,已存在com.路径,造成路径的重合,所以在remoting-config.xml中将destination路径改为flexn就得到了传递的值
13用romoteObject传值时,将值赋给userResult给label.text时:
:
userResult=event.resultasString;
Labelid="
ss"
fontSize="
22"
text="
{userResult}"
定义这个变量[Bindable]
privatevaruserResult:
String;
的时候[Bindable]不可缺。
(意思是把userResult值绑定这个Label)
14在java端的程序(GetDistrict.java)编译成class(GetDistrict.class)后,flex才能调用
比如,GetDistrict.java在WEB-INF\src\lescg\pj\map下
而相应的GetDistrict.class在WEB-INF\classes\lescg\pj\map下
也就是说,如果在GetDistrict.java有方法所变动的话,必须相应的要编译(在MyEclipse)一下成GetDistrict.class,flex端才能调用该方法。
15.在其他地方的tomcat下拷过来的flex项目(flex与java,包括后台交互),导入项目:
File—>
import->
flexproject,然后在projectfold下选择项目,在projectlocation下选择自己机器下的tomcat目录(webapps)下即可。
在运行该项目可能遇到问题:
cannotfind’。
\libs’,解决方法是工程—>
右键flexserver,然后选择正确的rootfolder,并测试ValidateLocation即可