[已解决问题] ArcIMS java connector 专题图 请教
提问时间: 2008-07-17 15:45
悬赏分:100 浏览:255 次

目前打算用java connector 做一个动态专题图,图层为一县的镇界图层,在其图层上添加了一个字段“AVGDAYINT”,代表噪声的大小,目的是想在该噪声专题图上使用柱状图,每个镇用柱状图的长短显示噪声的强弱。代码如下:出现的问题在最后也列出了,请各位高手帮忙看下,最好能给改下,感激不尽

<%@ page contentType="text/html; charset=GB2312" %>
<%@ include file="/include/header.jsp" %>
<%@ page language="java" %>
<%@ page import="com.esri.aims.mtier.model.map.Map" %>
<%@ page import="com.esri.aims.mtier.io.ConnectionProxy"%>
<%@ page import="com.esri.aims.mtier.model.map.output.MapOutput"%>
<%@ page import="com.esri.aims.mtier.model.map.layer.FeatureLayer"%>
<%@ page import="com.esri.aims.mtier.model.map.layer.renderer.Range" %>
<%@ page import="com.esri.aims.mtier.model.map.layer.renderer.symbol.SimplePolygonSymbol" %>
<%@ page import="com.esri.aims.mtier.model.map.layer.renderer.ValueMapRenderer" %>
<%@ page import="com.esri.aims.mtier.model.map.layer.Layer" %>
<%@ page import="com.esri.aims.mtier.model.envelope.Envelope" %>
<%@ page import="com.esri.aims.mtier.model.map.layer.query.Filter" %>
<%@ page import="com.esri.aims.mtier.model.map.layer.renderer.SimpleLabelRenderer" %>
<%@ page import="com.esri.aims.mtier.model.map.layer.renderer.symbol.ChartValue" %>
<%@ page import="com.esri.aims.mtier.model.map.layer.renderer.symbol.ChartSymbol" %>
<%@ page import="com.esri.aims.mtier.model.map.layer.renderer.ValueMapLabelRenderer" %>


<html>
<head>
<title></title>
</head>
<body>

 <%
ConnectionProxy myConnection= new ConnectionProxy();
myConnection.setConnectionType(ConnectionProxy.TCP);
myConnection.setService("SLHBforAXL");
myConnection.setHost("localhost");
myConnection.setPort(5300);

Map map=new Map();
map.initMap(myConnection, 0, true, true, false, false);
map.setHeight(600);
map.setWidth(800);


map.getLegend().setWidth(200);
map.getLegend().setHeight(600);
map.getLegend().setLayerFontSize(0);
map.getLegend().setTitleFontSize(16);
map.getLegend().setTitle("昼 噪 声");
map.getLegend().setValueFontSize(12);
map.getLegend().setCellSpacing(6);
map.getLegend().setFont("幼圆");


//隐藏所有图层

for(int i=0;i<map.getLayers().getCount();i++){
     
     Layer layer = map.getLayers().item(i);
     layer.setVisible(false);
}

//显示镇界图层
map.getLayers().item(1).setVisible(true);

//取镇界图层
FeatureLayer layer = (FeatureLayer)map.getLayers().item(1);

 

ChartValue DAYValue = new ChartValue();
DAYValue.setLookUpField("SDE.SDE.镇界.AVGDAYINT");

//DAYValue.setLookUpField("AVGDAYINT"); 也不行
DAYValue.setColor("255,0,0");


ChartSymbol chartSymbol = new ChartSymbol();
chartSymbol.setMode("Bar");
chartSymbol.addChartValue(DAYValue);

ValueMapLabelRenderer  vMapRend = new ValueMapLabelRenderer();
vMapRend.addObject(chartSymbol);

layer.setRenderer(vMapRend);
map.refresh();
 
%>

<center>
<table width="100%">
<tr>
<td width="100%" align="center">
<img src=<%=map.getMapOutput().getURL()%> >
</td>

<td width="100%" align="center">
<img src=<%//=map.getLegend().getLegendOutput().getURL()%> >
</td>

</tr>
</table>
</center>

</body>
</html>

图层始终显示不出来,出现的错误如下,

com.esri.aims.mtier.model.map.layer.renderer.symbol.ChartSymbol
null
File "null" not found.

提问者:心海 - 初学一级
所有回答(1)
比较有效的调试方式是获取发送的arcxml请求串,然后看返回结果提示的错误信息,一般从arcxml request就能找到错误原因。
2个月前   回答者:Flyingis - 菜鸟二级
评论
   您需要登录以后才能回答!
 

我要提问

我的问题


快到期问题

> 问题排行榜

相关内容

相关链接