东方通TongWeb7.0.4.9M4部署SuperMap iServer 11.2.1

一、软件版本

  • 操作系统: CentOS Linux release 7.5.1804 (Core)
  • JDK:11.0.18(从iServer11.2.1开始,由于升级pac4j安全框架,JDK需要升级到11版本,部署11.2.0及以下版本可以用JDK1.8)
  • 东方通: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
mv Bin bin

编辑/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 等请求屈取消勾选,并点击保存按钮
在这里插入图片描述

4. 如果要使用GPA,11.3.0及以下版本,需要将组件Java环境变量设置为小写bin(默认解压是大写Bin)

5. 东方通Tongweb中,使用GPA中,关于SVG图标报404错误

在这里插入图片描述
答:“tongweb-http-listener”中默认url编码格式是GBK,改成UTF-8则可以正常加载
在这里插入图片描述

(转发请注明出处:https://blog.csdn.net/zhang90522 如发现有错,请留言,谢谢)

<think>好的,用户想知道如何在东方通中间件上部署Vue.js项目。首先,我需要回忆一下东方通中间件是什么。东方通中间件是国内的一个应用服务器软件,类似于Tomcat或者WebLogic,主要用于Java应用的部署。不过Vue.js是前端项目,生成的是静态文件,所以部署方式和后端Java应用可能不同。 根据之前的引用内容,用户可能已经了解如何使用Nginx部署Vue项目,比如构建静态文件然后配置Nginx。但东方通中间件可能不支持直接运行静态文件,可能需要将其作为Web应用部署。这时候可能需要将Vue的静态文件打包成WAR文件,或者配置中间件的静态资源目录。 引用[1]中提到使用Vue CLI生成静态文件,这一步应该是通用的,无论用哪种服务器都需要先构建。然后引用[3]提到配置代理解决跨域问题,可能在部署时也需要考虑API代理,但东方通中间件可能本身有反向代理的功能,或者需要配置其内置的Web服务器来处理静态资源。 接下来,我需要整理步骤:首先构建Vue项目生成dist目录,然后将dist中的文件部署东方通中间件的指定位置,可能需要通过控制台进行配置,设置静态资源路径,或者将文件放入webapps目录下。另外,可能需要调整东方通的配置,比如设置MIME类型,处理前端路由的History模式等问题。 还需要考虑是否需要将静态文件打包成WAR,或者是否有其他部署方式。比如,有些应用服务器允许直接将静态文件夹部署为Web应用,可能需要修改server.xml或类似配置文件,指定资源路径。 另外,用户可能遇到跨域问题,如果后端API也在同一个中间件上,可能需要配置代理,类似Nginx的反向代理设置,但东方通中间件可能有自己的配置方法,需要查阅其文档。 最后,确保步骤清晰,分点说明,并提醒用户可能的注意事项,比如路由配置、缓存问题等。如果用户提供的引用中有相关部署方法,可以结合引用内容,但根据问题,用户需要的是东方通中间件的具体步骤,可能需要综合通用部署方法和东方通的特定配置。</think>### 在东方通中间件上部署Vue.js项目的步骤 #### 1. 构建Vue.js项目 首先使用Vue CLI生成静态文件,运行以下命令: ```bash npm run build ``` 生成`dist`目录,包含所有静态资源(HTML、CSS、JS等)[^1]。 #### 2. 配置东方通中间件 东方通中间件(如TongWeb)支持Java Web应用部署,但静态资源可通过以下方式部署: - **方法一:直接部署静态目录** - 将`dist`目录复制到东方通的Web应用部署路径(例如`TongWeb/webapps/ROOT`)。 - 若需独立应用,可建`my-vue-app`文件夹,将`dist`内容放入其中,并配置为独立上下文路径[^2]。 - **方法二:打包为WAR文件(可选)** - 建`WEB-INF`目录,添加`web.xml`(内容可为空或简单配置)。 - 使用压缩工具将`dist`和`WEB-INF`打包为`my-vue-app.war`,通过东方通控制台上传部署。 #### 3. 配置前端路由兼容性 若使用Vue Router的History模式,需在东方通中配置URL重定向,确保所有路径返回`index.html`。 **示例配置(通过`web.xml`添加错误页面映射):** ```xml <error-page> <error-code>404</error-code> <location>/index.html</location> </error-page> ``` #### 4. 处理API代理(可选) 若需连接后端API,在东方通中配置反向代理: - 修改`server.xml`,添加`<Context>`配置代理规则,或通过管理控制台设置代理路径。 - 示例代理配置将`/api/*`转发至后端服务地址。 #### 5. 重启中间件并验证 完成部署后重启东方通中间件,访问`http://服务器IP:端口/上下文路径`验证页面加载和功能。 --- ### 注意事项 1. **静态资源缓存**:更新后需清理浏览器缓存或添加文件哈希(Vue构建已默认支持)。 2. **HTTPS配置**:若需启用HTTPS,需在东方通中配置SSL证书[^3]。 3. **性能优化**:建议开启Gzip压缩(需东方通支持对应配置)。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

非法小恋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值