Author Archives: nanzt

Arcims 9 installation

1. Windows server 2003 sp1 chs
2. J2SE SDK 1.4.2_08 (jre updates to 1.5.0.20)
3. IIS 6.0
4. ms sql server 2000 sp4
*set the authentication mode to both sql server and windows by enterprise
management
5. arcsde 9 for sql sp3
6. dot net framework sdk 1.1
*this component is to enable the .net link connector when installing arcims
9. Actually, I’ve installed the visual studio .net 2003 which will be used
as the asp.net editor.
7. Tomcat 5.5.9
*type http://localhost:8080 to see if the setup is completed.
8. configure isapi_redirect.dll
*install isapi_redirect-1.2.13.exe from apache website; it will help you to
creat most of things you have to do without this executable file, for
example, creating proper register settings, adding jakarta virtual directory
to the IIS console.
*add Jakarta extension within IIS console
9. arcims 9
*install arcims 9, and perform post installation with the option of IIS6
with Tomcat 4.x.
*edit the uriworkermap.properties file under the jk1 connector conf
directory, adding the appropriate mappings.*try the diagnostics facity to
test 1 and 2. If error 006 occurs, plz check the machine setting in the
Esrimap_prop file under the webapps directory in Tomcat root.
10. enjoy the arcims 9

arcsde for sql svr 2k

安装完arcsde 9 for sql server 2000,发现启动不了iomgr服务。
查看sde etc目录下的log,发现sde用户不能登录进sql server 2000。
查google,发现是由于在安装sql server时,设定成windows用户验证的登录方式。用
企业管理器,将仅windows验证,改成sql server和windows验证选项。再启动arcsde,
成功!

安装arsde for oracle失败

arcsde for oracle 9i要求的最低oracle 9i版本是9.2.0.3,不知道小冉最早安装的时
候,如何将9.0.0.1版本装上了,居然也可以。不过我还得重新从oracle网站上下载
9.2.0.3。好象9.2.0.4只有linux版本。
从9.2.0.1升级到9.2.0.3需要OUI 2.2.0.18,不能从metalink.oracle.com获取,失败
是否要考虑用sql server 2000

ArcIMS架构

1. ArcIMS架构包括Presentation Tier, Business Logic Tier, Data Tier。 还提供
了一些管理应用程序来管理Business logic tier。

2. ArcIMS工作于Java环境。 运行ArcIMS还包括一个Web server, Java VM,和servlet
engine。servlet engine是Java VM的扩展,建立Java VM和Web server间的连接

3. Business Logic Tier包括Application Server Connectors, ArcIMS Application
Server, 和ArcIMS Spatial Server。Connectors在Web Server和Application Server
间建立连接。在Business logic tier间的通讯通过ArcXML。
3.1 Application Server只接收ArcXML格式的请求。因此connectors的作用就是将直接
ArcXML请求(ArcIMS servlet connector)递交到application server、或从
coldFusion、ASP、.NET、JSP(ColdFusion connector, activex connector, .net
link, java connector)形成ArcXML然后再递交到application server
3.2 ArcIMS Servlet Connector是默认的connector,用于将客户端产生(如Html
Viewer)的ArcXML递交到application server。arcims servlet connector还包括一个
wms connector,允许兼容于wms的客户端可以访问arcims服务
3.3 使用java的connectors(arcims servlet connector和java connector)必须在底
层使用servlet engine,以在web server和java vm间建立关系
3.4 spatial server包括image server, feature server, query server, extract
server, geocode server和metadata server(此6个server可以共存于一个spatial
server上),以及arcmap server(一个spatial server只能存在一个arcmap
server)。前6个server接收arcxml请求,arcmap server接收arcmap mxd文档。
3.5 spatail server的实例(instance)和service。一个实例可以认为是一个线程。除
arcmap server,其它server默认情况下启动2个instances。arcmap server由两个
spatial server启动,一个spatial server只能启动一个arcmap server。arcims提供
四种service,即image service, feature service, metadata service, 和arcmap
image service。每个service由一个或多个server共同完成。
3.6 在一个arcims站点上,可以有多个spatial server,可以在一台机器上,也可以分
布在不同机器。在管理的时候,多个spatial server上的各种server type实际上形成
虚拟的server type,由applicaiton server来具体管理这些虚拟的server type是如何
对应到实际的server type上去。

4 arcims可以使用arcsde 作为后台的数据库。在通常情况下,到arcsde的连接等于
instances的数目。比如,如果只有一个spatial server,默认情况下建立一个image
service,将建立2个image server instances和2个query server instances, 这时到
arcsde的连接数等于4。如果部署了2个spatial server,这时一个image service到
arcsde的连接数等于8。但当再建立一个image service的时候,arcims会重用已有这些
的instances和已有的相同连接。
4.1 arcims到arcsde的连接可以是无限的,不受限于arcsde的license限制。但arcims
也支持连接的pooling,以提高连接效率。

5 表示层。HTML viewer, Java viewer(包括可定制和不可定制两种), 使用各种
connector定制的viewers.

关于swig和boost

刚听冯m讲过这两个东西,以前都不知道,孤陋寡闻了。swig可将c/c++的代码转换成如
python, tck等脚本,也可以转换成c#等代码。据说象gdal就是通过swig将原有代码转
换成.net代码的。boost是一套c++库,看起来好象有包含了很强大的功能。

基金委

昨天(5.11)在基金委送材料的时候,碰到张lx老师了,打了个招呼,但他有急事,没
聊上话就离开了,真是遗憾。真是特别感激他以前给我的帮忙,总在感觉对不起他。

没有啥事的话,我今天就坐回兰州的最后一个航班回兰州了,干呆在等那边的消息也不
是办法,按想应当没有啥大的问题了,而且计划书的电子版已经给肖老师发过去了。最
主要的是后面盖章的那页已经给了,其它的页面即便需要改动,也可以在电子版上改了
后,再打印就好。

五一一回来就又忙乎开了

数据中心的事还没开展开,基金委又让交计划书了,又向北京跑了一趟,原来以往我们
都整错了。
人员是个很大的问题,现在主要的问题是缺人,有项目了让谁做呀,做gis其实是种劳
动密集型的工作。而且来人后整个工资待遇也成问题,主要是不能给别人位置,没法子
安定人心,而且除了这么点钱,再没有任何东西了,比如奖金,比如福利,比如保险等
等等。站在他人的位置上,咱们都得理解。赞同小吴讲的,能做的也是趁现在项目上还
有点点钱,能给大家多少就给多少,争取不能亏了大家。
而且,更可怕的是,即便找下人了,一下子很难让人马上就能上手做东西,毕竟我们做
的都是别人没有做过的,我们也是一边摸索一边做。这样给人掏工资,最怕就是等人稍
一上手了(也许已经是一年后了),就想着走人,真是亏大了,倒不是怕这个钱给亏
了,主要是整个项目的进度都会受到很大影响。

五一回丈人家一趟

已经很长时间没有在夏天的时候回南方了,那绿色也久违了。
看到门前的一片绿色,呼吸着清新的空气,暂时将自己周边的事情先搁置一下,心情真
是不错,尽管这些天被朵朵的水土不服整的心情有点烦燥。
朵朵又要打针了,真是担心,我特别不赞同动不动就打针,而且对于农村里的医生,真
是没有一点信心,老担心出点啥问题就糟糕了。
这次五一怎么跑出来玩了,有空了?回来后老有人问。虱子多了不痒,事情永远是做不
完的。还为要做的项目犯愁呢,哪有空,但不出去换换心情,老呆着也未必就能有更高
的效率。

关于qt国际化

qt对国际化有很好的支持。但默认的是unicode编码。中文系统下默认的并非unicode,
而是比如gbk或gb2312。所以在进行const char*参数传递和显示时必须特别注意。
比如在默认情况下
QMessageBox::information(this, "Test", "这是一个测试");
中文字符无法正确显式
又如
bool connect(const char * connectString);
你如果输入
QString str("一个测试");
connect((const char*)str);
默认是调用QString.latin1()方法,是直接从Unicode的QString返回latin-1字符表示
集。在中文系统下有时不是你想要的。
解决方案:在main.cpp里增加
QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());
这时涉及到QString/QCString到const char*的转换将使用本地的编码集。
类似的还有setCodecForTr()方法。

NOTE: 这跟qt使用unicode进行内部通讯、显示并不冲突。当显示一个const char*时,
qt会将const char*再行转成unicode。

win server 2003下windows程序安装不了的问题

给程老师安装biblioscape的时候(windows server 2003 enterprise edition英文系
统),发现双击安装文件,提示类似c:windowssystem32autoexec.nt. The system
file is not suitable for running MS-DOS and Microsoft Windows applications.
Choose "Close" to terminate the application. 无论半击Close还是Ignore,安装无
法进行。
以前没遇到过。后来搜索了一下c盘上的autoexec.nt,发现在repaire目录下有一
autoexec.nt,将之拷贝到c:windowssystem32以面。再双击安装,正常通过。
这应该是以前误删除autoexec.nt造成的。