普元中间件Primeton AppServer6.5部署SuperMap iServer

本文使用Windows环境普元中间件Primeton AppServer6.5(以下简称PAS)部署SuperMap iServer

一、部署前准备

  1. 本文使用SuperMap iServer 11.0.1(10.2.1版本同理可以使用)

    • supermap-iserver-11.0.1-war.zip
  2. 安装完成的普元中间件PAS
    《普元中间件Primeton AppServer6.5安装(Windows)》

二、配置SuperMap iServer所需环境变量

2.1 解压组件依赖

解压SuperMap iServer War包中的support_win_x64.zip,得到support_win_x64文件夹


image

2.2 将组件bin环境变量配置到系统环境变量path中

image

2.3 配置SuperMap iServer许可

(初次安装默认90天试用许可,部署步骤略)


image

三、修改普元中间件PAS配置

3.1 修改普元中间件默认

由于普元中间件6.5 使用commons.io版本过低,故进行更新。删除以下jar包中关于org.apache.commons.io 下所有东西

D:\primeton\PAS\pas6\pas\modules\autostart\org.apache.felix.webconsole.jar
image

从SuperMap iServer包中找一个 commons-io-2.11.0.jar放到D:\primeton\PAS\pas6\pas\modules目录下


image

这边已经给大家准备好,删除后jar和commons-io-2.11.0.jar,可以直接替换,下载地址

  • 链接:https://pan.baidu.com/s/1tGg9VpAiZgwgL_DQ-3BKXQ?pwd=xc08
  • 提取码:xc08

3.2 启动普元中间件PAS

image
  • 通过浏览器访问:http://localhost:6888
  • PAS V6.5 管理员用户名:admin,默认密码:manager
image

3.3 修改JVM大小

由于SuperMap iServer产品包超过1G大小,默认参数会导致部署时会报“尝试分配大于当前分配的Java堆空间的缓冲区”错误,所以需要修改默认JVM值。

3.3.1 default-config,将默认1024m修改为4096m

image

3.3.2 server-config,将默认1024m修改为4096m

image

3.4 修改完成后再次重启普元中间件PAS

image

四、部署SuperMap iServer

4.1 部署SuperMap iServer

选择应用程序,部署


image

选择SuperMap iServer War包


image

发布时,取消勾选隐式CDI,点击右上角确定按钮


image

4.2 验证SuperMap iServer

部署成功后,选择访问


image

选择8080端口


image

进入SuperMap iServer初始化向导


image

最终访问某一个地图服务可以正常出图,至此SuperMap iServer部署完成


image

五、常见报错

5.1 部署iServer war包报错,提示“尝试分配大于当前分配的Java堆空间的缓冲区”

  • 问题原因:War包大小超过默认普元中间件JVM 1024m值
  • 解决方法:参考3.3 修改JVM大小,修改完成后重启普元中间件PAS

5.2 如何查看SuperMap iServer启动日志

可以查看普元中间件PAS日志,具体路径如下:

D:\primeton\PAS\pas6\pas\domains\domain1\logs

5.3 部署iServer War包访问500错误

  • 问题原因:查看普元中间件PAS日志,发现启动参数-Djava.library.path中未包含组件bin路径。

  • 解决办法:参考2.2,将组件bin目录配置到系统环境变量Path最前面,重启普元中间件PAS

5.3 部署iServer war包报400错误,发现日志中含有“java.lang.NoSuchMethodError: org.apache.commons.io.IOUtils.closeQuietly”错误

  • 问题原因:普元内置commons.io版本过低需要升级
[2022-11-16T13:47:38.572+0800] [Primeton AppServer 6.5] [SEVERE] [] [] [tid: _ThreadID=42 _ThreadName=Thread-10] [timeMillis: 1668577658572] [levelValue: 1000] [[
  java.lang.NoSuchMethodError: org.apache.commons.io.IOUtils.closeQuietly(Ljava/io/Closeable;)V
    at com.supermap.services.util.Tool.listResource(SourceFile:1707)
    at com.supermap.services.components.spi.ServiceDiscovery.discover(SourceFile:50)
    at com.supermap.server.config.impl.MetaInfoParser.loadMetaInfoFromResourcePath(SourceFile:107)
    at com.supermap.server.config.impl.MetaInfoParser.a(SourceFile:57)
    at com.supermap.server.config.impl.MetaInfoParser.parse(SourceFile:29)
  • 解决办法:参考3.1,替换commons.io版本,重启普元中间件PAS

5.4 部署iServer War包400错误“java.lang.UnsatisfiedLinkError: org.sqlite.core.NativeDB. open utf8([BI)V”

image
  • 问题原因:当前普元中间件PAS有单独配置sqlite.tmpdir导致冲突。
  • 解决办法:删除sqlite.tmpdir,重启普元中间件PAS

(转发请注明出处:https://www.jianshu.com/u/829cbce64381 如发现有错,请留言,谢谢)

你可能感兴趣的:(普元中间件Primeton AppServer6.5部署SuperMap iServer)