东方通TongWeb7.0.4.9M4部署SuperMap iServer 11.2.1
一、软件版本
- 操作系统: CentOS Linux release 7.5.1804 (Core)
- JDK:11.0.18
- 东方通:TongWeb7.0.4.9M4
- SuperMap iServer:11.2.1
JDK和TongWeb软件分享: 链接: https://pan.baidu.com/s/1HGDTPnPID0PEOMbg3FjTVQ?pwd=bh8v 提取码: bh8v
东方通软件许可请从其官网申请
二、东方通TongWeb7部署流程
2.1 安装JDK
2.1.1 下载JDK到/opt下解压,并将目录重命名为jdk
tar -zxf jdk-11.0.18_linux-x64_bin.tar.gz
mv jdk-11.0.18 jdk
2.1.2 将JDK环境变量配置环境变量中
编辑/etc/profile
vi /etc/profile
增加:
export JAVA_HOME=/opt/jdk
export JRE_HOME=/opt/jdk/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
2.1.3 编辑完成检查JDK是否配置正确
看到以下信息JDK完成配置
[root@zhangyongli opt]# source /etc/profile
[root@zhangyongli opt]# java -version
java version "11.0.18" 2023-01-17 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.18+9-LTS-195)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.18+9-LTS-195, mixed mode)
2.2 部署东方通TongWeb7
本次直接使用绿色版(免安装版)TongWeb7.0.4.9_M4_Enterprise_Linux.tar.gz,上传软件包到/opt目录
2.2.1 给东方通TongWeb软件包赋予执行权限
chmod 755 TongWeb7.0.4.9_M4_Enterprise_Linux.tar.gz
2.2.2 解压软件包
tar -zxf TongWeb7.0.4.9_M4_Enterprise_Linux.tar.gz
2.2.3 配置License
将获取的许可license.dat放到TongWeb7 根目录下

2.2.4 启动东方通TongWeb
[root@zhangyongli opt]# cd /opt/TongWeb7.0.4.9_M4_Enterprise_Linux/bin/
[root@zhangyongli bin]# ./startservernohup.sh
2.2.5 访问控制台
打开浏览器, 输入TongWeb7.0控制台地址 http://IP地址:9060/console/
默认登录用户名密码为:thanos/thanos123.com
首次登录后会让修改密码,然后使用新密码在登录

2.2.6 停止东方通TongWeb
[root@zhangyongli opt]# cd /opt/TongWeb7.0.4.9_M4_Enterprise_Linux/bin/
[root@zhangyongli bin]# ./stopserver.sh
三、SuperMap iServer 部署
3.1 解压SuperMap iServer War包
将supermap-iserver-11.2.1-war.zip放到/opt目录下进行解压
unzip supermap-iserver-11.2.1-war.zip
可以把本次所需的4个包拷贝到/opt下,剩下的都删除
如:
iserver#help.war
iserver#iClient.war
iserver.war
support_linux_x64.tar.gz
最终/opt目录如下:
[root@zhangyongli opt]# ll
-rw-r--r-- 1 root root 780347508 Dec 17 15:24 iserver#help.war
-rw-r--r-- 1 root root 928935275 Dec 17 15:25 iserver#iClient.war
-rw-r--r-- 1 root root 1807491383 Dec 17 15:24 iserver.war
drwxr-xr-x 9 root root 4096 Dec 17 15:55 jdk
-rw-r--r-- 1 root root 169328243 Dec 17 15:55 jdk-11.0.18_linux-x64_bin.tar.gz
-rw-r--r-- 1 root root 1440994003 Dec 17 15:24 support_linux_x64.tar.gz
drwxr-xr-x 23 root root 4096 Dec 17 16:16 TongWeb7.0.4.9_M4_Enterprise_Linux
-rwxr-xr-x 1 root root 318950996 Dec 17 15:24 TongWeb7.0.4.9_M4_Enterprise_Linux.tar.gz
3.2 安装SuperMap iServer依赖
tar -zxf support_linux_x64.tar.gz
cd support_linux_x64
./dependencies_check_and_install.sh install -y

3.3 配置试用许可
cd /opt/support_linux_x64/SuperMap_License/Support/
tar -xvf aksusbd-8.11.1.tar
cd aksusbd-8.11.1
./dinst

3.4 解压组件并重新配置环境变量
cd /opt/support_linux_x64/objectsjava/
tar -zxf bin.tar.gz
编辑/etc/profile,
vi /etc/profile
增加UGO_HOME/SUPERMAP_ROOT/LD_LIBRARY_PATH/PATH,最终自定义环境变量如下:
export JAVA_HOME=/opt/jdk
export JRE_HOME=/opt/jdk/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib
export UGO_HOME=/opt/support_linux_x64/objectsjava
export SUPERMAP_ROOT=/opt/support_linux_x64
export LD_LIBRARY_PATH=$UGO_HOME/Bin:$LD_LIBRARY_PATH
export PATH=$UGO_HOME/Bin:$JAVA_HOME/bin:$PATH
然后检查是否缺少依赖,如下输出代表不缺少依赖,如果有缺少先补足依赖
[root@zhangyongli Bin]# ldd libWrapjC* | grep not
[root@zhangyongli Bin]#
3.5 将SuperMap iServer War包里的三个文件拷贝到TongWeb7部署目录
将iserver#iClient.war和iserver#help.war重命名,去掉#号
mv iserver#iClient.war iclient.war
mv iserver#help.war help.war
拷贝到/opt/TongWeb7.0.4.9_M4_Enterprise_Linux/autodeploy目录
cp iserver.war /opt/TongWeb7.0.4.9_M4_Enterprise_Linux/autodeploy/
cp iclient.war /opt/TongWeb7.0.4.9_M4_Enterprise_Linux/autodeploy/
cp help.war /opt/TongWeb7.0.4.9_M4_Enterprise_Linux/autodeploy/
四、修改东方通TongWeb配置
确保TongWeb7没有启动,如果启动了 ,参考2.2.6 停止东方通TongWeb
4.1 修改startserver.sh文件
vi /opt/TongWeb7.0.4.9_M4_Enterprise_Linux/bin/startserver.sh
文件最末尾增加后保存
JAVA_OPTS="${JAVA_OPTS} -Dcom.sun.jersey.server.impl.cdi.lookupExtensionInBeanManager=true"

4.2 修改tongweb.properties文件
vi /opt/TongWeb7.0.4.9_M4_Enterprise_Linux/conf/tongweb.properties
文件最末尾增加后保存
tongweb.util.scan.StandardJarScanFilter.jarsToSkip=jersey-*.jar,hadoop-*.jar,tyrus-server*.jar

4.3 修改external.vmoptions文件
JDK11及以后改进了对 zip 文件和 jar 文件中 ZIP64 额外字段的验证,所以这个配置需要单独开启
vi /opt/TongWeb7.0.4.9_M4_Enterprise_Linux/bin/external.vmoptions
新增
-Djdk.util.zip.disableZip64ExtraFieldValidation=true

4.4 启动东方通TongWeb
[root@zhangyongli opt]# cd /opt/TongWeb7.0.4.9_M4_Enterprise_Linux/bin/
[root@zhangyongli bin]# ./stopserver.sh
访问控制台,打开浏览器, 输入TongWeb7.0控制台地址 http://IP地址:9060/console/
默认登录用户名为:thanos
4.5 点击应用管理,依次修改help和iClient访问目录

修改前缀为/iserver/help后保存

修改前缀为/iserver/iclient后保存

五. 最终访问iServer、help、iClient查看是否正确
iServer设置完管理员用户名和密码等操作




六、常见报错
1. 报错com.tongweb.catalina.LifecycleException
com.tongweb.catalina.LifecycleException: Failed to start component [com.tongweb.catalina.webresources.StandardRoot@4bf837c6]at com.tongweb.catalina.util.LifecycleBase.start(LifecycleBase.java:167)at com.tongweb.catalina.core.StandardContext.resourcesStart(StandardContext.java:4927)at com.tongweb.catalina.core.StandardContext.startInternal(StandardContext.java:5062)at com.tongweb.catalina.core.ThanosStandardContext.startInternal(ThanosStandardContext.java:204)at com.tongweb.catalina.util.LifecycleBase.start(LifecycleBase.java:150)at com.tongweb.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:734)at com.tongweb.catalina.core.ContainerBase.addChild(ContainerBase.java:710)at com.tongweb.catalina.core.StandardHost.addChild(StandardHost.java:727)at com.tongweb.catalina.core.ThanosStandardHost.addChild(ThanosStandardHost.java:710)at com.tongweb.web.thanos.startup.ThanosHostConfig.deployWar(ThanosHostConfig.java:231)at com.tongweb.tw.thanos.ThanosWebtierWebAppBuilder.fireWebtierProcess(ThanosWebtierWebAppBuilder.java:473)at com.tongweb.tw.thanos.ThanosWebtierWebAppBuilder.deployApplication(ThanosWebtierWebAppBuilder.java:384)at com.tongweb.deploy.TongWebDeployer.deploy0(TongWebDeployer.java:389)at com.tongweb.deploy.TongWebDeployer$1.run(TongWebDeployer.java:328)at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: com.tongweb.catalina.LifecycleException: Failed to initialize component [com.tongweb.catalina.webresources.JarResourceSet@48067566]at com.tongweb.catalina.util.LifecycleBase.init(LifecycleBase.java:112)at com.tongweb.catalina.util.LifecycleBase.start(LifecycleBase.java:140)at com.tongweb.catalina.webresources.StandardRoot.startInternal(StandardRoot.java:815)at com.tongweb.catalina.util.LifecycleBase.start(LifecycleBase.java:150)... 14 more
Caused by: java.lang.IllegalArgumentException: java.util.zip.ZipException:
Ilina.LifecycleException: Failed to start component [com.tongweb.catalina.webresources.StandardRoot@4bf837c6]nvalid CEN header (invalid extra data field size for tag: 0xbdbf at 2399)at com.tongweb.catalina.webresources.AbstractSingleArchiveResourceSet.initInternal(AbstractSingleArchiveResourceSet.java:113)at com.tongweb.catalina.util.LifecycleBase.init(LifecycleBase.java:107)... 17 more
Caused by: java.util.zip.ZipException: Invalid CEN header (invalid extra data field size for tag: 0xbdbf at 2399)at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1771)at java.base/java.util.zip.ZipFile$Source.checkExtraFields(ZipFile.java:1669)at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1597)

答:【问题原因】JDK11及以后改进了对 zip 文件和 jar 文件中 ZIP64 额外字段的验证。不满足这些新验证检查的文件可能会导致 ZipException
【解决办法】参考4.3 修改external.vmoptions文件
2. 使用东方通中部署iServer,发布工作空间时,读取文件列表失败,接口返回400
答:【解决办法】
1)为保证SuperMap iServer文件选择器可以正常使用,需要在TongWeb中配置URL参数允许存在未编码的特殊字符,此配置更改后无需重启Tongweb服务即可生效:访问TongWeb管理控制台,在 WEB容器配置>HTTP通道管理>tongweb-http-listener>其他property属性,新增relaxedPathChars与relaxedQueryChars属性,参数值配置为[]|{}。
relaxedPathChars
relaxedQueryChars


3. 东方通TongWeb默认禁用del,put请求,会导致部分功能异常
答:所以需要在tongweb的管理端→WEB容器配置->HTTP通道管理,点击tong-http-listener,修改其他设置的禁用HTTP请求方法,将del,put 等请求屈取消勾选,并点击保存按钮

(转发请注明出处:https://blog.csdn.net/zhang90522 如发现有错,请留言,谢谢)
相关文章:
东方通TongWeb7.0.4.9M4部署SuperMap iServer 11.2.1
一、软件版本 操作系统: CentOS Linux release 7.5.1804 (Core)JDK:11.0.18东方通:TongWeb7.0.4.9M4SuperMap iServer:11.2.1 JDK和TongWeb软件分享: 链接: https://pan.baidu.com/s/1HGDTPnPID0PEOMbg3FjTVQ?pwdbh8v 提取码: bh8v 东方通软…...
QT绘制同心扇形
void ChartForm::paintEvent(QPaintEvent *) {QPainter painter(this);painter.setRenderHint(QPainter::Antialiasing);// 设置抗锯齿painter.save();// 设置无边框(不需要设置QPen,因为默认是不绘制边框的)QPen pen(Qt::NoPen);// QPen pen…...
2012年西部数学奥林匹克试题(几何)
2012/G1 △ A B C \triangle ABC △ABC 内有一点 P P P, P P P 在 A B AB AB, A C AC AC 上的投影分别为 E E E, F F F, 射线 B P BP BP, C P CP CP 分别交 △ A B C \triangle ABC △ABC 的外接圆于点 M M M, N N N. r r r 为 △ A B C \triangle ABC △ABC 的内…...
8位移位寄存器的verilog语言
module shift_register (output reg [7:0] Q, // 8位移位寄存器输出input D, // 输入数据input rst, // 复位信号input clk // 时钟信号 );always (posedge clk) beginif (!rst)Q < 8b00000000; // 复位时将Q清零elseQ < {Q[6:0], D}; // 否则…...
【苍穹外卖】学习心得体会-随笔
前言 写了很久,终于可以完整运行项目了,记录下这几天的心得体会回顾一下知识点 第一天、Git 分布式版本控制工具 一、Git概述 定义:是分布式版本控制工具,用于管理软件开发中的源代码文件,像Java类、xml文件、html…...
MySQL学习之表的增删改
MySQL学习之表的增删改 语法总结: INSERT INTO 表名 (字段名1, 字段名2, ...) VALUES (值1, 值2, ...); //指定字段添加数据 INSERT INTO 表名 VALUES (值1, 值2, ...); //给全部字段添加数据 INSERT INTO 表名 VALUES (值1, 值2, ...), (值1, 值2, ...), (值1, …...
电脑excel词典(xllex.dll)文件丢失是或损坏是什么原因?“xllex.dll文件缺失“要怎么解决?
Excel词典(xllex.dll)文件丢失或损坏?别担心,这里有解决之道! 在日常的电脑使用和办公软件操作中,我们偶尔会碰到一些让人头疼的问题,比如Excel突然提示“Excel词典(xllex.dll&…...
【CSS in Depth 2 精译_084】第 14 章:CSS 蒙版、形状与剪切概述 + 14.1:CSS 滤镜
当前内容所在位置(可进入专栏查看其他译好的章节内容) 第四部分 视觉增强技术 ✔️【第 14 章 蒙版、形状与剪切】 ✔️ 14.1 滤镜 ✔️ 14.1.1 滤镜的类型 ✔️14.1.2 背景滤镜 ✔️ 14.2 蒙版 文章目录 第 14 章 蒙版、形状与剪切 Masks, shapes, and…...
gorm源码解析(四):事务,预编译
文章目录 前言事务自己控制事务用 Transaction方法包装事务 预编译事务结合预编译总结 前言 前几篇文章介绍gorm的整体设计,增删改查的具体实现流程。本文将聚焦与事务和预编译部分 事务 自己控制事务 用gorm框架,可以自己控制事务的Begin࿰…...
前端优雅(装逼)写法(updating····)
1.>>右位移运算符取整数 它将一个数字的二进制位向右移动指定的位数,并在左侧填充符号位(即负数用1填充,正数用0填充)。 比如 2.99934 >> 0:取整结果是2,此处取整并非四舍五入 2.99934 会先…...
黑马Java面试教程_P7_常见集合_P4_HashMap
系列博客目录 文章目录 系列博客目录4. HashMap相关面试题4.4 面试题-HashMap的put方法的具体流程 频54.4.1 hashMap常见属性4.4.2 源码分析 HashMap的构造函数面试文稿: 4.5 讲一讲HashMap的扩容机制 难3频4面试文稿: 4.6 面试题-hashMap的寻址算法 难4…...
使用 CFD 加强水资源管理:全面概述
探索 CFD(计算流体动力学)在增强保护人类健康的土木和水利工程实践方面的重大贡献。 挑战 水资源管理是指规划、开发、分配和管理水资源最佳利用的做法。它包括广泛的活动,旨在确保水得到有效和可持续的利用,以满足各种需求&…...
XXE练习
pikachu-XXE靶场 1.POC:攻击测试 <?xml version"1.0"?> <!DOCTYPE foo [ <!ENTITY xxe "a">]> <foo>&xxe;</foo> 2.EXP:查看文件 <?xml version"1.0"?> <!DOCTYPE foo [ <!ENTITY xxe SY…...
R语言读取hallmarks的gmt文档的不同姿势整理
不同格式各有所用 1.读取数据框格式的 hallmarks <- clusterProfiler::read.gmt("~/genelist/h.all.v7.4.symbols.gmt") #返回的是表格 hallmarks$term<- gsub(HALLMARK_,"",hallmarks$term)适配Y叔的clusterProfiler的后续分析,比如整理后geneli…...
【Nginx-4】Nginx负载均衡策略详解
在现代Web应用中,随着用户访问量的增加,单台服务器往往难以承受巨大的流量压力。为了解决这一问题,负载均衡技术应运而生。Nginx作为一款高性能的Web服务器和反向代理服务器,提供了多种负载均衡策略,能够有效地将请求分…...
Python 的 Decimal的错误计算
摘要 阐述在使用 Python的 Decimal类时,可能产生的错误计算。 在 详述 BigDecimal 的错误计算 中,笔者较为详细地说明了 Java的 BigDecimal可能出错的原因。类似地,Python的 decimal模块中有个 Decimal类,也可用于高精度的十进制…...
【韩顺平 Java满汉楼项目 控制台版】MySQL+JDBC+druid
文章目录 功能界面用户登录界面显示餐桌状态预定显示所有菜品点餐查看账单结账退出满汉楼 程序框架图项目依赖项目结构方法调用图功能实现登录显示餐桌状态订座显示所有菜品点餐查看账单结账退出满汉楼 扩展思考多表查询如果将来字段越来越多怎么办? 员工信息字段可…...
【HAL库】STM32CubeMX开发----STM32F407----Time定时器中断实验
STM32CubeMX 下载和安装 详细教程 【HAL库】STM32CubeMX开发----STM32F407----目录 前言 本次实验以 STM32F407VET6 芯片为MCU,使用 25MHz 外部时钟源。 实现定时器TIM3中断,每1s进一次中断。 定时器计算公式如下: arr 是自动装载值&#x…...
react18+ts 封装图表及词云组件
react18ts 封装图表及词云组件 1.下载依赖包 "echarts": "^5.5.1","echarts-for-react": "^3.0.2","echarts-wordcloud": "^2.1.0",2.创建目录结构 3.代码封装 ChartCard.tsx Wordcloud.tsx 4.调用 import Rea…...
图像根据mask拼接时,边缘有色差 解决
目录 渐变融合(Feathering) 沿着轮廓线模糊: 代码: 泊松融合 效果比较好: 效果图: 源代码: 泊松融合,mask不扩大试验 效果图: 源代码: 两个图像根据mask拼接时,边缘有色差 渐变融合(Feathering) import numpy as np import cv2# 假设 img1, img2 是两个…...
挑战杯推荐项目
“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 - 个性化梦境…...
idea大量爆红问题解决
问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...
内存分配函数malloc kmalloc vmalloc
内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...
【入坑系列】TiDB 强制索引在不同库下不生效问题
文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...
【单片机期末】单片机系统设计
主要内容:系统状态机,系统时基,系统需求分析,系统构建,系统状态流图 一、题目要求 二、绘制系统状态流图 题目:根据上述描述绘制系统状态流图,注明状态转移条件及方向。 三、利用定时器产生时…...
零基础设计模式——行为型模式 - 责任链模式
第四部分:行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习!行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想:使多个对象都有机会处…...
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...
iview框架主题色的应用
1.下载 less要使用3.0.0以下的版本 npm install less2.7.3 npm install less-loader4.0.52./src/config/theme.js文件 module.exports {yellow: {theme-color: #FDCE04},blue: {theme-color: #547CE7} }在sass中使用theme配置的颜色主题,无需引入,直接可…...
C# 表达式和运算符(求值顺序)
求值顺序 表达式可以由许多嵌套的子表达式构成。子表达式的求值顺序可以使表达式的最终值发生 变化。 例如,已知表达式3*52,依照子表达式的求值顺序,有两种可能的结果,如图9-3所示。 如果乘法先执行,结果是17。如果5…...
通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器
拓扑结构 这是一个用于通过 Ansible 部署 IIS Web 服务器的实验室拓扑。 前提条件: 在被管理的节点上安装WinRm 准备一张自签名的证书 开放防火墙入站tcp 5985 5986端口 准备自签名证书 PS C:\Users\azureuser> $cert New-SelfSignedCertificate -DnsName &…...
