本文主要是介绍SuperMap iServer 7C在东方通TongWeb等第三方中间件中的安装部署及常见问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
- 介绍Supermap iServer 7C如何在东方通上进行部署
- windows平台及linux平台中间件部署常见问题
作者:MR.
一、介绍
熟悉GIS行业的朋友应该都知道占据国内GIS行业半壁江山、国产GIS平台软件第一的超图SuperMap GIS系列大型平台软件,虽然超图近期最新推出了8C系列产品,但7C系列仍然是目前的主流,8C的安装部署与7C类似。
SuperMap GIS 7C产品系列中的云GIS平台软件包括SuperMap iPortal(云GIS门户平台)、SuperMap iServer(云GIS应用服务器)和SuperMap iExpress(云GIS分发服务器)三个产品,后来又新推出了SuperMap iCloudManager(云GIS管理系统),可以协同工作构建功能强大、跨平台的云GIS服务应用系统,也可以独立构建GIS服务器满足轻量级应用需要。
其中,SuperMap iServer是基于高性能、跨平台GIS内核的云GIS应用服务器,具有二三维一体化的服务发布、管理与聚合功能,并提供多层次的扩展开发能力,通过提供多种移动端、web端、PC端等开发SDK,可用于构建SOA应用系统和GIS专有云系统。
关于产品的介绍就到这里,下面进入主题:iServer在中间件中的安装部署。
iServer的安装部署有两种方式:独立部署和中间件部署。独立部署,即将内置整合了tomcat的iServer产品包独立部署在服务器/PC上,不依赖于第三方中间件;中间件部署则是将iServer作为WEB应用部署在第三方WEB中间件中,两者的产品包是不同的,但是UGO内核是相同的。独立部署相对简单些,解压或安装就行了,不需要配置环境变量;中间件方式则需要配置环境变量,这里以国产中间件东方通TongWeb为例介绍iServer 7C安装部署、常见问题以及我个人的一些经验。
表 1:SuperMap iServer war 包支持的中间件
中间件名称 | 版本 |
---|---|
Apache Tomcat | 6.0.x/7.0.x |
GlassFish | 3.x |
IBM WebSphere Application Server | 7.0.0.11/8.5.5.0 |
JBoss Application Server | 7.x |
Jetty | 6.x/7.x/8.x |
Oracle WebLogic Server | 11g(10.3.5)/12c(12.1.3) |
金蝶 Apusic Application Server | 6.0 |
东方通 TongWeb | 5.0 |
东方通TongWeb是一个符合J2EE规范的应用服务器产品,与国产另一个中间件金蝶Apusic Application Server相比,至少有一个优点就是它的官网有完善的文档资料和试用产品下载,而后者已经几乎销声匿迹。
##二、TongWeb安装
由于iServer帮助文档中列出TongWeb支持的版本为5.0,如果参考tomcat8.0以上也是能很好的支持iServer的,TongWeb6.0应该也可以,但是毕竟列表里列出的都是通过反复测试的,并且最新的帮助文档也未增加支持的版本,为了避免使用过程中可能出现的一些莫名的问题,建议还是尽量使用列表里列出的版本。
TongWeb的安装可以参照官方用户手册1进行操作,那个比较详细,这里提一些要点。
-
安装前需要先确认设备上有JVM,没有的话需要安装JDK或JRE。
-
windows下安装的过程是向导式的,都默认的就好,安装完成前一步,为了避免端口冲突和方便记忆可以设置下端口号。
-
linux图形化界面使用sh .bin包来安装,安装过程同windows,符号界面可以通过命令行sh命令安装,即,sh .bin包 -i,不过无法在安装过程中修改 http-listener、orb-listener、 jms-connector 端口号。另外,还有配置文件安装方式,不过同样无法更改端口号。
-
license:将获得的license文件放在安装目录,即可完成许可配置。
-
TongWeb5.0 需要在操作系统 hosts 文件中定义本机 IP 地址,并以本机的 IP 优先。
比如:
192.168.1.1 localhost
127.0.0.1 localhost
注:Windows NT/2000/2003及之后系统hosts文件路径:系统安装录%systemroot%\system32\drivers\etc。 Linux 系统 hosts 文件路径:/etc。 -
TongWeb5.0 安装完成后,需设置使用的 JDK 路径: 设置本机的 JAVA_HOME 值,系统默认使用本机 JAVA_HOME 所设置的 JDK 路径,需要先指定使用的 JDK 的路径再启动 TongWeb5.0。
-
TongWeb目录结构说明、服务方式启动、配置使用、应用部署、资源管理、服务配置、集群等可以参考用户手册,还是很详细的。
-
用Xshell连接Linux系统安装TongWeb有惊喜哦,会弹出图形化安装界面。
##三、iServer 7C在TongWeb中的部署
iServer 在第三方中间件中安装部署使用war包,可以在官网下载(多个文件zip打包),虽然包名写的是forlinux,但是windows里也是用的它,解压后各个包的说明:
表2 SuperMap iServer war 包的内容
文件名 | 完整版war包 | deploy版war包 |
---|---|---|
BUILD_12724_2264 | SuperMap iServer 的版本 | 同完整版 war 包 |
Guide_smiserver_war_chn.pdf | SuperMap iServer 的自述文件 | 同完整版 war 包 |
iserver#help.war | SuperMap iServer 的帮助文档及示例代码, 使用该 war 包可以将帮助文档发布为在线形 式 | 不含帮助文档和示例代码的具体内容。只有配置文件,使得用 户可直接访问SuperMap资源中心的相关内容 |
iserver#iClient.war | SuperMap iServer的客户端软件开发工具包。包含iClient库文件、iClient帮助文档和iClient 示例代码。使用该war包可以获取iClient的示范程序效果 | 只有配置文件,使得用户可直接访问SuperMap 资源中心的相关内容 |
iserver.war | SuperMap iServer的核心部分,包含库文件、配置文件、示范数据等信息。使用该war包可以获取SuperMap iServer服务器端的所有功能。发布后访问的URI为: http://:/iserver/services | 不包含示范数据,其它内容及作用同完整版war包 |
support_linux_x64.tar.gz | SuperMap iServer 用于Linux x64系统的依赖项,包括SuperMap iObjects Java、JRE等 | 同完整版 war 包 |
support_win_x64.zip | SuperMap iServer用于Windows x64系统的依赖项,包括SuperMap iObjects Java、JRE、SuperMap许可配置管理工具的安装包、vcredist等 | 同完整版 war 包 |
安装需要注意的就是环境变量的问题,由于iServer和支持的中间件是java环境下的,所以首先就需要JAVA_HOME或JRE_HOME变量。iServer一般默认会使用自带的jre,要使用指定jre需要重命名或删除support目录下的jre目录(系统环境已存在JRE_HOME环境变量),不过要注意,使用指定的jre版本要高于iServer最低要求版本。
另外一个重要的环境变量就是UGO_HOME它指向iServer的ObjectsJava 目录,同样在support目录下,它是iServer的重要依赖项。在中间件中部署时根据中间件的不同, objectsjava环境变量的处理略有不同,不过目的都是让中间件启动的iServer能找到iServer的ObjectsJava 目录以使用其下的资源。ObjectsJava也是有版本要求的,不过这个一般不用考虑,使用自带的就好,iServer扩展开发等情况时才会涉及到版本问题。
上述两个变量在初次进入iServer管理页面时会看到检查结果。
###Windows系统下,在TongWeb上部署Supermap iServer
-
包含以下步骤(与linux下相同)
- 为TongWeb指定SuperMap iObjects Java的路径,即在【TongWeb根目录】\bin\startserver.bat的Djava.library.path中加入SuperMap iObjects Java 的bin路径,如:Djava.library.path=”C:\SMO_Java_602_7119_Bin\Bin”,可以使用表2所列war包中相应操作系统support文件夹下的objectsjava\bin目录。
-
启动 TongWeb,把 war 包放入如下目录:【TongWeb 根目录】\autodeploy,TongWeb 就可以将 war 包发布为 Web 服务。对于 iserver#help.war 和 iserver#iClient.war,需要将它们重命名使得名称中不包含特殊符号“#”后再部署,如将 iserver#help.war 改为 help.war。
-
在【TongWeb根目录】\config\twns.xml 中找到 help 和 iClient 对应的 web-app 节点,将 context-root 分别改为 iserver/help 和 iserver/iClient。
-
启动 TongWeb 后,可以通过访问 TongWeb 的管理界面,即 http://:/twns 来查看 war 包的部署情况。在第2步中也可通过该管理界面进行 war 包的部署。
这里我使用直接把war包放在autodeploy目录下自动部署的方式,部署完成后如下图所示:
可以看到已经部署成功了,CMD窗口也没有报错,我在部署的时候,曾经失败过几次,报的大概是内存不足,然后启动TongWeb失败或很久没启动起来,关掉一些进程后,保留充足的运行内存,删掉autodeploy目录下跟要部署的war包同名并后面多了个“_deployed”的文件再重新启动TongWeb就好了,部署成功后在管理控制台可以进行部署应用的管理,点击后面的http访问即可进入web应用。
**注:**端口的修改可以在管理控制台-服务配置-WEB容器-HTTP通道中修改相应虚拟主机设置,也可以创建新HTTP通道,再在应用-应用管理-WEB应用中选择虚拟主机,这里默认SERVER。
###iServer许可配置
Supermap 7C系列许可是通用的,如果之前用配置过则不必再配置。windows下都是使用一个叫Sentinel LDK Licence Manager的服务,使用Supermap 7C系列产品时(免费产品除外),需要保证该服务为启动状态。
未配置许可的话,只需打开support_win_x64目录(见表2 SuperMap iServer war 包的内容)下的SuperMapLicenseCenter目录中的SuperMap.LicenseCenter可执行文件(.exe),进入SuperMap许可中心,若电脑上没有该服务会提示安装,有则读取当前许可状态,初次安装自带90天试用许可,到期后还可在超图官网申请一次90天试用许可,配置完许可后,就可以正常使用了。
###Linux系统下,在TongWeb上部署Supermap iServer
Linux系统下iServer部署类似windows,也是在TongWeb管理控制台部署或放在autodeploy目录下自动部署,环境变量的设置也相似,需要说明的是许可工具的安装略有不同。
许可工具的安装包在support_linux_x64/SuperMap_License/Support目录下(见表2 SuperMap iServer war 包的内容,需要解压至任意目录,建议非用户目录,即:非root、home等),是类似aksusbd_2.4.1-i386.tar的tar包(你的版本可能与我不同),使用tar –xvf命令解压它,cd到解压后的文件夹中执行./dinst命令安装许可(新安装自带90天试用许可,更新许可及其他操作请参考iServer帮助文档2)即可。
在许可安装过程中,若遇到The 32bit support is missing…错误,是由于Linux 64位操作系统缺少32bit支持库,要解决该问题只需要安装该系统的32位支持库就行了,一般在系统安装光盘或操作系统官网进行下载,另外,iServer tar包(.tar.gz)里自带了该依赖库,在解压后iServer根目录\support\SuperMap_License\Support下,可以在超图官网下载deploy版tar包(不带数据,300多兆)来得到该32位依赖库。
好了,感谢大家的阅读和支持,iServer在TongWeb中的安装部署就是以上了,其他中间件略有不同,但无非就是环境变量(含objectsjava路径)、war包部署、许可安装,iServer帮助文档里都有简洁的介绍。欢迎大家留言交流经验,若有错误、遗漏和建议等也请一并指出。
可以到官方网站下载,点我或者复制访问:http://www.tongtech.com/xz/index.aspx?nodeid=18。 ↩︎
使用本地帮助文档或在线帮助文档。 ↩︎
这篇关于SuperMap iServer 7C在东方通TongWeb等第三方中间件中的安装部署及常见问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!