# 中创中间件项目化部署手册

项目化支持,意味着可能存在项目化适配成本,可能存在缺陷,并且后续产生的BUG可能需要额外项目化成本解决 关联支持项目:PMP-JFZC-2024-5091、JSFW-2024-00310、PMP-JFZC-2024-532、PMP-JFZC-2024-4493

# 一、适配版本(参考)

修订日期:2025-01-09

中创:10.0.5.2版本以后 OA版本:A8N V9.0SP1

# 1. 环境准备

本次安装部署过程全部以root超级管理员身份运行

# 1.1 配置jdk环境变量

将openjdk(1.8.0_372)上传至服务器 /opt/jdk,解压如下

1729566271503.png

# 通过vi或vim命令修改/etc/profile,文件末尾增加以下几行
vim /etc/profile

export JAVA_HOME=/opt/jdk
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

# 激活/etc/profile文件,使更改立即生效
source /etc/profile

注意:中创中间件依赖完整的jdk工具,不能只使用jre运行时环境,否则启动完成后,访问会报错

1724403592329.png

# 1.2 中创产品准备

根目录创建文件夹/cvicse,将中创中间件产品包上传至服务器/cvicse目录下并解压。

unzip InforSuiteAS_StE_V10.0.5.2.2.zip -d /cvicse

# 1.3 中创的授权文件

中创的正常使用需要授权文件(一般为license.infor),在购买中间件时应及时获取授权文件,在安装后将授权文件放置在/cvicse/InforSuiteAS_StE_V10.0.5.2.2/as目录下。

b2b71586d87639ae7fb083f813042ac

# 2. 部署OA应用

当前信创部署工具暂不支持中创中间件,需要全部手动部署

# 2.1 部署包准备

从生产盘获取最新的信创部署包,上传服务器并解压

1729567710378.png

# 2.2 解压应用文件

# 进入安装包V5目录下,将应用解压至/data/Seeyon/A8N/
cd 2.V9.0SP1_XinChuang/V5
java -jar ../deploytools/lib/J7Zip.jar x ApacheJetspeed.7z /data/Seeyon/A8N/
java -jar ../deploytools/lib/J7Zip.jar x tomcat.7z /data/Seeyon/A8N/ApacheJetspeed/

# 2.3 放置版本文件

# 这里以A8N-1 V9.0sp1举例,请选择对应版本的压缩文件
cd 2.V9.0SP1_XinChuang/deploytools/file/productiden/
java -jar ../../lib/J7Zip.jar x A8-1.7z /data/Seeyon/A8N/

# 2.4 调整jar

# OA 9.0sp1
  • 剪切 /data/Seeyon/A8N/ApacheJetspeed/webapps/seeyon/WEB-INF/lib/下的 seeyon-ctp-dbpool.jar seeyon-ctp-jdbcproxydriver.jar seeyon-statistics.jar druid.jar commons-lang3.jar commons-codec.jar commons-logging.jar commons-modeler.jar log4j-1.2-api.jar log4j-jcl.jar log4j-api.jar log4j-core.jar jmx_prometheus_javaagent.jar 到中创安装目录as/lib下

  • 复制 /data/Seeyon/A8N/ApacheJetspeed/webapps/seeyon/WEB-INF/lib/下的 stax-api.jar stax2-api.jar woodstox-core-asl.jar disruptor.jar seeyon-ctp-log-log4j.jar mocnoyeeswz.jar seeyon-util.jar ctp-db-pwd-coder.jar ctp-db-pwd-clzzloader.jar seeyon-ctp-file.jar guava.jar 到中创安装目录as/lib下

提示:如果在/data/Seeyon/A8N/ApacheJetspeed/webapps/seeyon/WEB-INF/lib/没有找到对应的jar,可以检查是否在ApacheJetspeed/lib下,然后拷贝过去 9.0sp1最新版本已经没有 seeyon-ctp-giant-panda.jar,可以不用拷贝

  • 删除 /data/Seeyon/A8N/ApacheJetspeed//webapps/ROOT/META-INF/context.xml
# OA 8.x版本
  • 剪切 /data/Seeyon/A8N/ApacheJetspeed/webapps/seeyon/WEB-INF/lib下的xalan.jar、wstx-asl.jar、seeyon-ctp-jdbcproxydriver.jar、seeyon-ctp-dbpool.jar、serializer.jar到中创安装目录as/lib下

注意:检查seeyon-ctp-jdbcproxydriver.jar包中

com\seeyon\ctp\monitor\perf\jdbcmonitor\proxyobjProxyDriverList.properties是否有相关数据库配置(此检查为适配Gbase8s数据库,标准支持的数据库无需检查)

例如:Gbase8s数据库配置

1676253443929

  • 剪切 /data/Seeyon/A8N/ApacheJetspeed/lib下的seeyon-statistics.jar到中创安装目录as/lib下

  • 复制 /data/Seeyon/A8N/ApacheJetspeed/webapps/seeyon/WEB-INF/lib下的druid.jar、guava.jar到中创安装目录as/lib下。

  • 删除 /data/Seeyon/A8N/ApacheJetspeed/webapps/ROOT/META-INF/context.xml

# 3. 中间件配置

# 3.1 修改JVM配置

编辑/cvicse/InforSuiteAS_StE_V10.0.5.2.2/as/domains/domain1/config/domaim.xml文件,在9009端口下添加:

  • 覆盖javax,org.apache开头的特定包,使应用使用自带的API包。
<jvm-options>-Dcom.cvicse.loong.enterprise.overrideablejavaxpackages=javax.ws.rs,javax.validation,org.apache.taglibs.standard</jvm-options>

1710752571714.png

  • 增加jdbcproxydriver.driverclass数据库驱动类名配置。

人大金仓:-Djdbcproxydriver.driverclass=com.kingbase8.Driver

达梦:-Djdbcproxydriver.driverclass=dm.jdbc.driver.DmDriver

神通:-Djdbcproxydriver.driverclass=com.oscar.Driver

南大通用:-Djdbcproxydriver.driverclass=com.gbasedbt.jdbc.Driver

<jvm-options>-Djdbcproxydriver.driverclass=com.gbasedbt.jdbc.Driver</jvm-options>

1710752613702.png

同时将对应的数据库jdbc驱动放到中间件的as/lib下,注意只保留1个正确版本的

# 3.2 配置inforsuite-web.xml

新建文件/Seeyon/A8/V5/ApacheJetspeed/webapps/seeyon/WEB-INF/inforsuite-web.xml文件,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<inforsuite-web-app>
    <!--调整类加载优先级,优先加载应用下的类-->
    <class-loader delegate="false"/>
    <!--关闭Url重写-->
    <session-config>
        <session-properties>
            <property name="enableURLRewriting" value="false" />
        </session-properties>
    </session-config>
    <!--配置请求编码-->
    <locale-charset-info>
    <parameter-encoding default-charset="UTF-8" />
    </locale-charset-info>
</inforsuite-web-app>

# 3.3 启动中间件

进入/cvicse/InforSuiteAS_StE_V10.0.5.2.2/as/bin目录,启动中创中间件。 启动命令:sh asadmin start-domain 停止命令:sh asadmin stop-domain

c17cb777218e968c320c5ff5d1f74f3

在中创应用服务器软件 10.0.5.2 版本以后,默认访问端口8060,通过 url:https://ip:8060 访问,默认的用户名:inforsAdmin;密码:Cvicse@as123。

# 3.4 数据源配置

(1) 登录中创管理控制台-->【资源】-->【JDBC】-->【JDBC连接池】-->【新建】 输入池名称:seeyon,选择资源类型:java.sql.Driver,数据库驱动程序供应商必须写 seeyon,点击下一步。

1731378695348.png

(2) 数据库驱动程序类名称会自动显示:com.seeyon.ctp.monitor.perf.jdbcmonitor.proxyobj.JMProxyDriver 然后继续修改连接池属性及user,password,Url,点击保存。

1731378812117.png

1731378882723.png

1731378966942.png

(3) 连接池试通:检测创建好的连接池是否正确。

(4)【资源】-->【JDBC】-->【JDBC资源】-->【新建】,输入JNDI名称:jdbc/ctpDataSource,选择池名称:seeyon,点击确定完成创建。

(5) 其他:建议开启连接验证(避免连接断开后,连接没有正常回收重连)

1736152544128.png

# 3.5 手动初始化数据库

找到安装包下deploytools/file/sql下对应版本的数据库初始化脚本,拷贝到数据库执行

# 4. 部署应用

部署致远协同应用需注意,应用授权

  1. 管理控制台,【应用程序】->【部署】

52086725971e0631f3ca53b218d8c92

  1. 选择要部署的应用文件夹,上下文根:ROOT(上下文/),seeyon(上下文/seeyon)、static(上下文/static),sportal(上下文/sportal),虚拟服务选择server,类加载勾选取消,点击确认。

53696d42acb94ea2e5905aedb8763af

# 4.1 应用启动及访问

【应用程序】->【访问】。

71a8f6140776ff46ec71e5e0200276a

点击访问跳转到如下页面,点击链接访问即可。

272af39d4a29c492e5aa16a24cbb755

1676253560658

# 5. 常见问题

  • 5.1【启动问题】中创部署协同V9.0启动不了,最开始报错存在dynamicColumnRequestListenerRegister关键字异常

临时解决方案:https://open.seeyoncloud.com/#/faq/faq/v1/share?url=Z2JySmU+MjMxNg==

正式解决方案:

联系中创技术获取补丁包,替换中间件目录下的as/modules/web-core.jar,同时清理域目录下的缓存(如图),再启动

1721714170579.png

  • 5.2【启动问题】部署过程由于sqlite驱动问题,启动失败

1724403886100.png

解决方案: 信创环境下注意需要替换sqlite驱动

  • 首先删除 webapps/seeyon/WEB-INF/lib/sqlite-jdbc.jar 或挪走备份

  • 然后尝试放置低版本的驱动 sqlite-jdbc-3.7.2.jar 到中间件的 as/lib下

  • 部分cpu架构下,如果无法使用 sqlite-jdbc-3.7.2.jar,则需要自行编译

参考https://open.seeyoncloud.com/v5doc/142/1190/731.html

# 二、适配版本(参考)

中创:10.0.5.2版本以前

# 中间件配置

参考高版本配置即可,有以下部分不同:

在 10.0.5.2 版本之前,默认的访问端口是 8060,通过http://ip:8060 来访问。用户名:admin;密码:Cvicse@as123。

# 数据源配置

Gbase8s数据库

(1)登录中创管理控制台-->【资源】-->【JDBC】-->【JDBC连接池】-->【新建】

,输入池名称:seeyon,选择资源类型:java.sql.Driver,数据库驱动程序供应商选择对应数据库名:GBase(这里以GBase为例),点击下一步。

77a9e68a10610e9374e0991178f008c

(2)修改数据库驱动类名称:com.seeyon.ctp.monitor.perf.jdbcmonitor.proxyobj.JMProxyDriver,下滑至最后输入user,password,Url,点击保存。

2efe7e3ab56813a942e2a5242a5c57d

7e376498e8286467bfec22e015bb89c

(3)连接池试通:检测创建好的连接池是否正确。

1675999793110

(4)【资源】-->【JDBC】-->【JDBC资源】-->【新建】,输入JNDI名称:jdbc/ctpDataSource,选择池名称:seeyon,点击确定完成创建。

20d3e755bc8702e79d7d78983c30471

1468836a071f73dc7009e35affa63ee

# 三、其他补充:

# OBS配置

对于使用OBS的环境,需配置OBS相关参数。

开启远程对象存储 #是否开启远程对象存储(默认值:false)

Access Key #对象存储的Access Key

Security Key #对象存储的Security Key

endPoint #对象存储的URL

桶名:#对象存储的桶名

路径:#需要把文件保存到远端对象存储的路径(多个路径用","分隔);使用CtpFile操作文件时,如果文件全路径中包含如下路径,就会保存到远程对象存储中,否则只会存储到本地

注意:

当前版本仅适配华为云对象存储;

OBS模式已按照插件方式开发,需要在加密狗中授权OBS模式,然后对应的配置才会生效,否则配置不生效

编撰人:wyx、wangyxyf、het