一、镜像制作

1、将安装介质o2server-5.0.3-linux.zip上传至镜像制作服务器上。(上传目录为/paas/xxhpaas/moka/o2oa)

2、使用unzip命令解压安装包,参考命令:unzip o2server-5.0.3-linux.zip

3、制作DockerFile文件,文件内容如下:

Dockerfile说明

3.1、FROM为基础镜像名称,我这边拿了一个已经做好的tomcat的镜像,镜像中包括Tomcat、JDK、Linux操作系统

3.2、PAAS平台不允许使用root用户启动应用,所以我创建了一个新的用户 gx

3.3、将解压后的o2server拷贝到容器中(使用COPY命令),一开始尝试直接将安装包unzip到容器里面,试验了几次都报错后才使用的copy方式。

3.3、为新建的用户gx赋予o2server目录的管理权限,能够读、写、执行权限。

3.4、容器启动的时候将用户切换为 gx(1000为gx的用户编号,客户点的paas平台要求使用"user 用户编号"方式切换用户)

3.5、容器启动后的ENTRYPOINT为执行启动o2oa的脚本 start_linux.sh

4、镜像制作命令:docker build -t o2oa_1.0.0 .


5、镜像制作完毕后将镜像存储为tar包进行保存,保存命令:docker save o2oa_1.0.0 |gzip > o2oa_1.0.0.tar

6、检查镜像是否能够正常启动,使用docker run命令在打包设备上通过镜像创建容器。操作步骤如下

♦检查镜像名称,命令:docker images |grep o2oa 如下图

♦启动容器:docker run 镜像ID & ,实际命令如下图:

♦检查容器是否启动,获取容器ID号。docker ps lgrep 镜像ID 实际命令如下图。能够看到容器已经能够正常启动。显示结果的第一列为容器ID

♦进入容器 命令:docker exec -it 容器号 /bin/bash ,实际命令如下:(能够看到控制台已经切换为gx用户)

♦检查o2oa的启动日志,查看应用启动是否正常

♦检查完毕后记得将容器销毁,参考命令:docker kill 容器ID

二、(客户样例)客户点PAAS平台部署

1、将镜像文件(o2oa_1.0.0.tar)上传至PAAS平台的镜像仓库。使用PAAS平台提供的镜像资产上载工具(如下图)

2、创建三套7层负载,分别提供给center (端口:30112)、application(端口:30113)、web (端口:30110)应用使用。具体如下:

3、在PAAS平台上创建应用,关键配置信息如下:

3.1 、CPU和内存需要选择得当,测试环境我使用了2C 6G内存,容器的镜像使用之前上传的o2oa_1.0.1版本

3.2、挂载配置文件node_127.0.0.1.json、externalDataSources.json (将基础服务器配置文件和数据库文件放入PAAS平台管理。在容器启动后,应用启动前PAAS平台会将配置文件写入/data/o2oaserver/config目录下)

node_127.0.0.1.json 配置文件修改内容:将center端口设置为30112、将application端口设置为 30113、将web端口修改为30110

externalDataSources.json 配置文件内容为oracle相关数据库地址、端口、实例、用户名和口令配置


3.3、将康检查设置,目前设置的是主机命令检查,由于o2oa启动需要时间,后续可以根据启动时间设置首次检查延迟时间,并将主机命令检查调整为http检查。


3.4、应用与7层负载关联配置, o2oa的3个http服务对应3个7层负载,上下文转发规则为 “/” 。配置界面如下

3.5、应用能够正常启动,访问效果如下。目测相关网络请求无报错信息。


三、生产环境共享存储处理

1、dockerfile修改,在容器中创建共享存储的根目录/appdata,并赋予管理权限。

2、容器编排阶段挂载 externalStorageSources.json配置文件,配置文件写入/data/o2server/config目录下。(如下图)

配置文件内容样例如下,需要将个JSON对象的节点中的"protocol"设置为file、将“prefix” 设置为具体共享存储的目录地址。


3、在容器编排阶段,增加/appdata的共享存储挂载。


四、关于容器节点自动扩展的问题

目前咨询产品组,容器化的部署可以不去定制修改node_ip.json,统一使用node_127.0.0.1.json即可。在PAAS平台上设置POD数量即可,如下图:

设置后2个POD能够正常启动,如下图:

具体系统使用有无问题还需要详细的测试。:)

五、生产环境部署遇到的问题

应用配置了外部数据源后,启动报错,报错内容如下:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@   
    @@@                          @@@   
    @@@                          @@@   
    @@@@@@@@@@@@@@@@@@@@@@@@@@   @@@   
                           @@@   @@@   
                           @@@   @@@   
    @@@   @@@@@@@@@@#      @@@   @@@   
    @@@           @@@      @@@   @@@   
    @@@           @@@      @@@   @@@   
    @@@   @@@@@@@@@@#      @@@   @@@   
    @@@   @@@              @@@   @@@   
    @@@   @@@              @@@   @@@   
    @@@   @@@@@@@@@@@@@@@@@@@@   @@@   
    @@@                          @@@   
    @@@                          @@@   
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@   
                                         
                                         
>>> server directory:/data/o2server
>>> version:5.0.3
>>> nodeAgent port:20010, encrypt:true
 help                                   show usage message.
 start|stop [all]                       start stop all enable server.
 start|stop data                        start stop data server.
 start|stop storage                     start stop storage server.
 start|stop center                      start stop center server.
 start|stop application                 start stop application server.
 start|stop web                         start stop web server.
 setPassword (oldpasswd) (newpasswd)    change initial manager password.
 create encrypt key                     create random RSA key.
 version                                show available update version.
 exit                                   exit after stop.
 ctl -<argument> option                 system control command, no argument display help.
 
****************************************
* data server start completed.
* port: 20050.
* web console port: 20051.
****************************************
****************************************
* storage server start completed.
* port: 20040.
****************************************
2020-07-02 18:11:37.500 PRINT [main] com.x.program.center.Context - com.x.base.core.project.x_program_center loading datas, entity size:22.
Jul 02, 2020 6:11:39 PM com.alibaba.druid.pool.DruidDataSource info
INFO: {dataSource-1} inited
2020-07-02 18:11:42.197 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.program.center.CenterQueue start.
2020-07-02 18:11:42.198 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.program.center.LogQueue start.
****************************************
* center server start completed.
* port: 30143.
****************************************
2020-07-02 18:11:48.204 PRINT [main] com.x.server.console.server.application.ApplicationServerTools - start to deploy official module, size:27.
2020-07-02 18:11:50.803 PRINT [main] com.x.server.console.server.application.ApplicationServerTools - start to deploy custom module, size:0.
2020-07-02 18:11:51.237 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_general_assemble_control loading datas, entity size:1.
2020-07-02 18:11:52.128 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_organization_assemble_authentication loading datas, entity size:5.
2020-07-02 18:11:52.384 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.organization.assemble.authentication.jaxrs.authentication.QueueLoginRecord start.
2020-07-02 18:11:53.127 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_organization_assemble_express loading datas, entity size:10.
2020-07-02 18:11:53.181 ERROR [2bbafcaf-f976-4e65-b274-e32191ee94a3] com.x.program.center.schedule.CleanupUnexpectedErrorLog - java.lang.Exception[get entityManager for class com.x.program.center.core.entity.UnexpectedErrorLog error.]
java.lang.Exception: get entityManager for class com.x.program.center.core.entity.UnexpectedErrorLog error.
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:109)
    at com.x.base.core.container.EntityManagerContainerBasic.get(EntityManagerContainerBasic.java:36)
    at com.x.program.center.schedule.CleanupUnexpectedErrorLog.cleanupUnexpectedErrorLog(CleanupUnexpectedErrorLog.java:40)
    at com.x.program.center.schedule.CleanupUnexpectedErrorLog.execute(CleanupUnexpectedErrorLog.java:30)
    at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
 {stmnt 420335887 CREATE INDEX CTE_UNEXPECTEDERRORLOG_exceptionClass ON CTE_UNEXPECTEDERRORLOG (xexceptionClass)} [code=972, state=42000]
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:181)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
    at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
    at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:103)
    ... 5 more
Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00972: identifier is too long
 {stmnt 420335887 CREATE INDEX CTE_UNEXPECTEDERRORLOG_exceptionClass ON CTE_UNEXPECTEDERRORLOG (xexceptionClass)} [code=972, state=42000]
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:203)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:955)
    at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:123)
    at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1377)
    at org.apache.openjpa.jdbc.schema.SchemaTool.createIndex(SchemaTool.java:1179)
    at org.apache.openjpa.jdbc.schema.SchemaTool.buildSchema(SchemaTool.java:689)
    at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:562)
    at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:401)
    at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:373)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:571)
    ... 16 more
 
2020-07-02 18:11:53.205 ERROR [7c133cf5-d9ae-45e5-b672-e2b39d6bc8a2] com.x.program.center.schedule.CleanupPromptErrorLog - java.lang.Exception[get entityManager for class com.x.program.center.core.entity.PromptErrorLog error.]
java.lang.Exception: get entityManager for class com.x.program.center.core.entity.PromptErrorLog error.
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:109)
    at com.x.base.core.container.EntityManagerContainerBasic.get(EntityManagerContainerBasic.java:36)
    at com.x.program.center.schedule.CleanupPromptErrorLog.cleanupPromptErrorLog(CleanupPromptErrorLog.java:40)
    at com.x.program.center.schedule.CleanupPromptErrorLog.execute(CleanupPromptErrorLog.java:30)
    at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
 {stmnt 2055978650 CREATE INDEX CTE_PROMPTERRORLOG_exceptionClass ON CTE_PROMPTERRORLOG (xexceptionClass)} [code=972, state=42000]
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:181)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
    at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
    at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:103)
    ... 5 more
Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00972: identifier is too long
 {stmnt 2055978650 CREATE INDEX CTE_PROMPTERRORLOG_exceptionClass ON CTE_PROMPTERRORLOG (xexceptionClass)} [code=972, state=42000]
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:203)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:955)
    at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:123)
    at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1377)
    at org.apache.openjpa.jdbc.schema.SchemaTool.createIndex(SchemaTool.java:1179)
    at org.apache.openjpa.jdbc.schema.SchemaTool.buildSchema(SchemaTool.java:689)
    at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:562)
    at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:401)
    at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:373)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:571)
    ... 16 more
 
2020-07-02 18:11:54.514 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_organization_assemble_control loading datas, entity size:11.
2020-07-02 18:11:55.545 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_organization_assemble_personal loading datas, entity size:12.
2020-07-02 18:11:56.232 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_component_assemble_control loading datas, entity size:1.
2020-07-02 18:11:56.935 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_message_assemble_communicate loading datas, entity size:7.
2020-07-02 18:11:57.186 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.message.assemble.communicate.WsConsumeQueue start.
2020-07-02 18:11:57.186 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.message.assemble.communicate.PmsConsumeQueue start.
2020-07-02 18:11:57.187 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.message.assemble.communicate.CalendarConsumeQueue start.
2020-07-02 18:11:58.238 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_calendar_assemble_control loading datas, entity size:6.
2020-07-02 18:11:58.562 ERROR [da4b362f-3803-4cd1-9566-8b92571f7aec] com.x.component.assemble.control.schedule.InitComponents - java.lang.Exception[get entityManager for class com.x.component.core.entity.Component error.]
java.lang.Exception: get entityManager for class com.x.component.core.entity.Component error.
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:109)
    at com.x.base.core.container.EntityManagerContainerBasic.get(EntityManagerContainerBasic.java:36)
    at com.x.base.core.container.EntityManagerContainer.listEqualOrIn(EntityManagerContainer.java:555)
    at com.x.component.assemble.control.schedule.InitComponents.init(InitComponents.java:39)
    at com.x.component.assemble.control.schedule.InitComponents.schedule(InitComponents.java:29)
    at com.x.base.core.project.schedule.AbstractJob.execute(AbstractJob.java:25)
    at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
 {stmnt 71083461 CREATE INDEX CPT_COMPONENT_allowList_element ON CPT_COMPONENT_allowList (xallowList)} [code=972, state=42000]
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:181)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
    at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
    at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:103)
    ... 7 more
Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00972: identifier is too long
 {stmnt 71083461 CREATE INDEX CPT_COMPONENT_allowList_element ON CPT_COMPONENT_allowList (xallowList)} [code=972, state=42000]
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:203)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:955)
    at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:123)
    at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1377)
    at org.apache.openjpa.jdbc.schema.SchemaTool.createIndex(SchemaTool.java:1179)
    at org.apache.openjpa.jdbc.schema.SchemaTool.buildSchema(SchemaTool.java:689)
    at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:562)
    at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:401)
    at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:373)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:571)
    ... 18 more
 
2020-07-02 18:11:58.564 ERROR [d42c548d-98a7-4410-af6f-e0b32c5865e2] com.x.base.core.project.schedule.AbstractJob - org.quartz.JobExecutionException[java.lang.Exception: get entityManager for class com.x.component.core.entity.Component error.]
org.quartz.JobExecutionException: java.lang.Exception: get entityManager for class com.x.component.core.entity.Component error. [See nested exception: java.lang.Exception: get entityManager for class com.x.component.core.entity.Component error.]
    at com.x.component.assemble.control.schedule.InitComponents.schedule(InitComponents.java:32)
    at com.x.base.core.project.schedule.AbstractJob.execute(AbstractJob.java:25)
    at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
Caused by: java.lang.Exception: get entityManager for class com.x.component.core.entity.Component error.
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:109)
    at com.x.base.core.container.EntityManagerContainerBasic.get(EntityManagerContainerBasic.java:36)
    at com.x.base.core.container.EntityManagerContainer.listEqualOrIn(EntityManagerContainer.java:555)
    at com.x.component.assemble.control.schedule.InitComponents.init(InitComponents.java:39)
    at com.x.component.assemble.control.schedule.InitComponents.schedule(InitComponents.java:29)
    ... 3 more
Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
 {stmnt 71083461 CREATE INDEX CPT_COMPONENT_allowList_element ON CPT_COMPONENT_allowList (xallowList)} [code=972, state=42000]
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:181)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
    at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
    at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:103)
    ... 7 more
Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00972: identifier is too long
 {stmnt 71083461 CREATE INDEX CPT_COMPONENT_allowList_element ON CPT_COMPONENT_allowList (xallowList)} [code=972, state=42000]
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:203)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:955)
    at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:123)
    at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1377)
    at org.apache.openjpa.jdbc.schema.SchemaTool.createIndex(SchemaTool.java:1179)
    at org.apache.openjpa.jdbc.schema.SchemaTool.buildSchema(SchemaTool.java:689)
    at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:562)
    at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:401)
    at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:373)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:571)
    ... 18 more
 
2020-07-02 18:11:59.236 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_processplatform_service_processing loading datas, entity size:41.
2020-07-02 18:12:00.010 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.processplatform.service.processing.processor.invoke.SyncJaxrsInvokeQueue start.
2020-07-02 18:12:00.010 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.processplatform.service.processing.processor.invoke.SyncJaxwsInvokeQueue start.
2020-07-02 18:12:00.010 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.processplatform.service.processing.processor.embed.SyncEmbedQueue start.
2020-07-02 18:12:00.759 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_processplatform_assemble_designer loading datas, entity size:46.
2020-07-02 18:12:01.389 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.processplatform.assemble.designer.ProjectionExecuteQueue start.
2020-07-02 18:12:01.389 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.processplatform.assemble.designer.MappingExecuteQueue start.
2020-07-02 18:12:01.389 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.processplatform.assemble.designer.FormVersionQueue start.
2020-07-02 18:12:01.389 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.processplatform.assemble.designer.ProcessVersionQueue start.
2020-07-02 18:12:01.390 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.processplatform.assemble.designer.ScriptVersionQueue start.
2020-07-02 18:12:02.218 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_processplatform_assemble_surface loading datas, entity size:42.
2020-07-02 18:12:03.752 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_processplatform_assemble_bam loading datas, entity size:33.
2020-07-02 18:12:05.287 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_cms_assemble_control loading datas, entity size:29.
2020-07-02 18:12:05.746 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.cms.assemble.control.queue.QueueBatchOperation start.
2020-07-02 18:12:05.747 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.cms.assemble.control.queue.QueueDocumentDelete start.
2020-07-02 18:12:05.747 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.cms.assemble.control.queue.QueueDataRowImport start.
2020-07-02 18:12:05.747 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.cms.assemble.control.queue.QueueDocumentUpdate start.
2020-07-02 18:12:05.748 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.cms.assemble.control.queue.QueueDocumentViewCountUpdate start.
2020-07-02 18:12:05.748 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.cms.assemble.control.queue.QueueSendDocumentNotify start.
2020-07-02 18:12:06.687 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_portal_assemble_designer loading datas, entity size:6.
2020-07-02 18:12:07.298 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_portal_assemble_surface loading datas, entity size:5.
2020-07-02 18:12:07.977 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_attendance_assemble_control loading datas, entity size:27.
2020-07-02 18:12:09.795 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_bbs_assemble_control loading datas, entity size:17.
2020-07-02 18:12:11.314 WARN [bd919e2d-048f-431b-b2a2-3a9081114ab1] com.x.bbs.assemble.control.ThisApplication - BBS system check all forum permission and role got an exception.
2020-07-02 18:12:11.315 ERROR [d2b7dd08-1d0a-46fa-bca7-1e0d3762f9ea] com.x.bbs.assemble.control.ThisApplication - java.lang.Exception[get entityManager for class com.x.bbs.entity.BBSForumInfo error.]
java.lang.Exception: get entityManager for class com.x.bbs.entity.BBSForumInfo error.
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:109)
    at com.x.base.core.container.EntityManagerContainerBasic.get(EntityManagerContainerBasic.java:36)
    at com.x.bbs.assemble.control.factory.BBSForumInfoFactory.listAll(BBSForumInfoFactory.java:52)
    at com.x.bbs.assemble.control.service.BBSForumInfoService.listAll(BBSForumInfoService.java:97)
    at com.x.bbs.assemble.control.service.BBSForumInfoServiceAdv.listAll(BBSForumInfoServiceAdv.java:142)
    at com.x.bbs.assemble.control.ThisApplication.initAllSystemConfig(ThisApplication.java:83)
    at com.x.bbs.assemble.control.ThisApplication.init(ThisApplication.java:37)
    at com.x.bbs.assemble.control.ApplicationServletContextListener.contextInitialized(ApplicationServletContextListener.java:16)
    at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:930)
    at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:553)
    at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:889)
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:356)
    at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1445)
    at org.eclipse.jetty.quickstart.QuickStartWebApp.startWebapp(QuickStartWebApp.java:131)
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1409)
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:822)
    at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:275)
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:524)
    at org.eclipse.jetty.quickstart.QuickStartWebApp.doStart(QuickStartWebApp.java:200)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
    at org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:425)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
    at org.eclipse.jetty.server.Server.start(Server.java:407)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
    at org.eclipse.jetty.server.Server.doStart(Server.java:371)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at com.x.server.console.server.application.ApplicationServerTools.start(ApplicationServerTools.java:204)
    at com.x.server.console.server.Servers.startApplicationServer(Servers.java:95)
    at com.x.server.console.Main.startApplicationServer(Main.java:344)
    at com.x.server.console.Main.startAll(Main.java:429)
    at com.x.server.console.Main.main(Main.java:139)
Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
 {stmnt 1200741024 CREATE TABLE BBS_FORUMINFO_publishPermissionList (BBSFORUMINFO_XID VARCHAR2(64), xpublishPermissionList VARCHAR2(255), xorderColumn NUMBER)} [code=972, state=42000]
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:181)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
    at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
    at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:103)
    ... 39 more
Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00972: identifier is too long
 {stmnt 1200741024 CREATE TABLE BBS_FORUMINFO_publishPermissionList (BBSFORUMINFO_XID VARCHAR2(64), xpublishPermissionList VARCHAR2(255), xorderColumn NUMBER)} [code=972, state=42000]
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:203)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:955)
    at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:123)
    at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1377)
    at org.apache.openjpa.jdbc.schema.SchemaTool.createTable(SchemaTool.java:1117)
    at org.apache.openjpa.jdbc.schema.SchemaTool.buildSchema(SchemaTool.java:659)
    at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:562)
    at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:401)
    at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:373)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:571)
    ... 50 more
 
2020-07-02 18:12:11.819 WARN [c10a2bbc-5a00-4b3e-ba89-67a8e08d4abd] com.x.bbs.assemble.control.ThisApplication - BBS system check all section permission and role got an exception.
2020-07-02 18:12:11.820 ERROR [4b9f7280-34ec-45e0-a2f1-b7c0bbc403de] com.x.bbs.assemble.control.ThisApplication - java.lang.Exception[get entityManager for class com.x.bbs.entity.BBSSectionInfo error.]
java.lang.Exception: get entityManager for class com.x.bbs.entity.BBSSectionInfo error.
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:109)
    at com.x.base.core.container.EntityManagerContainerBasic.get(EntityManagerContainerBasic.java:36)
    at com.x.bbs.assemble.control.factory.BBSSectionInfoFactory.listAll(BBSSectionInfoFactory.java:53)
    at com.x.bbs.assemble.control.service.BBSSectionInfoService.listAll(BBSSectionInfoService.java:164)
    at com.x.bbs.assemble.control.service.BBSSectionInfoServiceAdv.listAll(BBSSectionInfoServiceAdv.java:340)
    at com.x.bbs.assemble.control.ThisApplication.initAllSystemConfig(ThisApplication.java:97)
    at com.x.bbs.assemble.control.ThisApplication.init(ThisApplication.java:37)
    at com.x.bbs.assemble.control.ApplicationServletContextListener.contextInitialized(ApplicationServletContextListener.java:16)
    at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:930)
    at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:553)
    at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:889)
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:356)
    at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1445)
    at org.eclipse.jetty.quickstart.QuickStartWebApp.startWebapp(QuickStartWebApp.java:131)
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1409)
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:822)
    at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:275)
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:524)
    at org.eclipse.jetty.quickstart.QuickStartWebApp.doStart(QuickStartWebApp.java:200)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
    at org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:425)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
    at org.eclipse.jetty.server.Server.start(Server.java:407)
    at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
    at org.eclipse.jetty.server.Server.doStart(Server.java:371)
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
    at com.x.server.console.server.application.ApplicationServerTools.start(ApplicationServerTools.java:204)
    at com.x.server.console.server.Servers.startApplicationServer(Servers.java:95)
    at com.x.server.console.Main.startApplicationServer(Main.java:344)
    at com.x.server.console.Main.startAll(Main.java:429)
    at com.x.server.console.Main.main(Main.java:139)
Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
 {stmnt 1267880836 CREATE TABLE BBS_SECTIONINFO_publishPermissionList (BBSSECTIONINFO_XID VARCHAR2(64), xpublishPermissionList VARCHAR2(255), xorderColumn NUMBER)} [code=972, state=42000]
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:181)
    at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
    at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
    at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
    at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
    at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:103)
    ... 39 more
Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00972: identifier is too long
 {stmnt 1267880836 CREATE TABLE BBS_SECTIONINFO_publishPermissionList (BBSSECTIONINFO_XID VARCHAR2(64), xpublishPermissionList VARCHAR2(255), xorderColumn NUMBER)} [code=972, state=42000]
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:203)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
    at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:955)
    at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:123)
    at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1377)
    at org.apache.openjpa.jdbc.schema.SchemaTool.createTable(SchemaTool.java:1117)
    at org.apache.openjpa.jdbc.schema.SchemaTool.buildSchema(SchemaTool.java:659)
    at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:562)
    at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:401)
    at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:373)
    at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:571)
    ... 50 more
 
2020-07-02 18:12:11.825 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.bbs.assemble.control.queue.QueueNewReplyNotify start.
2020-07-02 18:12:11.825 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.bbs.assemble.control.queue.QueueNewSubjectNotify start.
2020-07-02 18:12:12.774 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_file_assemble_control loading datas, entity size:8.
2020-07-02 18:12:12.997 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.file.assemble.control.jaxrs.file.FileRemoveQueue start.
2020-07-02 18:12:13.565 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_meeting_assemble_control loading datas, entity size:4.
2020-07-02 18:12:14.570 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_mind_assemble_control loading datas, entity size:8.
2020-07-02 18:12:14.846 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.mind.assemble.control.queue.QueueShareNotify start.
2020-07-02 18:12:15.364 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_okr_assemble_control loading datas, entity size:24.
2020-07-02 18:12:15.725 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.okr.assemble.control.jaxrs.queue.QueueWorkDynamicRecord start.
2020-07-02 18:12:17.048 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_hotpic_assemble_control loading datas, entity size:3.
2020-07-02 18:12:17.220 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.hotpic.assemble.control.queueTask.DocumentExistsCheckTask start.
2020-07-02 18:12:17.727 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_teamwork_assemble_control loading datas, entity size:27.
2020-07-02 18:12:18.157 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.teamwork.assemble.control.queue.QueueBatchOperation start.
2020-07-02 18:12:19.568 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_query_service_processing loading datas, entity size:23.
2020-07-02 18:12:20.478 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_query_assemble_designer loading datas, entity size:28.
2020-07-02 18:12:21.540 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_query_assemble_surface loading datas, entity size:30.
2020-07-02 18:12:22.513 PRINT [main] com.x.base.core.project.Context - com.x.base.core.project.x_jpush_assemble_control loading datas, entity size:1.
****************************************
* application server start completed.
* port: 30144.
****************************************
****************************************
* web server start completed.
* port: 30145.
****************************************

问题原因:数据库版本过低,生产环境是oracle12.1.0版本,产品要求是oracle12.2版本以上。

六、后续对产品的一些建议

遇到的问题

1、O2OA的应用功能是通过配置文件实现/o2server/config 目录下的配置文件,例如数据库配置、文件系统配置,部分文件会在应用运行的时候被更新,容器重启后相关变更丢失。

2、某些功能的使用会涉及到配置文件的变更,如修改xadmin的密码,修改数据库密码后会修改token.json文件,但是容器中另外1个或多个pod不会更新配置。

3、在将token.json使用pass平台管理后(容器启动的时候将预设的配置文件及内容写入配置目录)。由于配置文件由paas平台管理(root用户写入),应用在执行相关配置变更的时候会出现错误,配置文件无法被改写。(针对这个功能只能先取消token.json文件挂载管理,应用成功修改密码后,从容器中获取最新的token.json文件,然后将最新的文件使用paas平台管理)


产品组也考虑下容器的特性,如容器重启后相关环境会被还原、节点动态扩展等特性等。对应用的配置管理、临时文件管理、共享Session、数据库连接数管理等进行考虑。

针对上述我遇到的问题,个人建议如下:

1、产品的一些配置文件要单独剥离出应用包。目前待办的集成和SSO集成,相关配置文件写入到具体的jar包或 war包中。剥离后可以通过paas平台管理,避免重复制作镜像。

2、将一些运行中生成的配置文件、临时文件等,使用单独的目录存放,在容器化部署的时候使用NAS存放这些临时文件,避免应用重启后丢失,或多个节点共享这些文件。


推荐文章:

系统配置-数据库驱动JAR包更改
2021-02-25
O2OA信息化系统开发平台默认自带Mysql8或者其他数据库某固定版本的jdbc驱动包,当用户使用的数据库系统版本与O2OA默认驱动不兼容时可能会导到某些数据库
常见问题-如何在平台中开发Ftp文件上传文件的服务?
2021-03-06
FTP上传功能因不是平台自带功能,所以需要进行额外的java开发。当把jar包打包后,需要放入到O2目录:o2server\custom\jars。重启服务器后
开发知识-鲲鹏(ARM)麒麟操作系统如何替换yum源?
2021-02-07
有时候会遇到系统自带的麒麟的yum源失效,就像我们遇到的麒麟公司护网的时候,yum安装任何软件都无法成功,连接无响应,所以需要安装合适的yum源中标麒麟-华为A
业务开发-组织架构-顶级组织及创建
2021-02-26
O2OA提供多级组织架构设置能力,用户可以在系统内设置集团、分公司、部门、小组等多级企业组织结构来满足办公需要。本文主要介绍如何在O2OA中创建顶组织。
藕粉社区问答系列4
2021-10-15
[流程设计]流程中,调用服务报错问题内容:解决方案:是由于用户选错服务应用接口,应用是组织管理而不是组织管理接口服务[流程设计]流程图中选择活动的条件中如何在控
用车管理使用手册
2021-03-16
O2OA平台应用市场提供了用车管理模块,用户可以直接从应用市场下载并安装模块,满足企业用车管理相关关的业务需求。本文主要介绍用车管理的下载安装以及设计相关说明
常见问题-数据导出或者导入时发生OOM异常
2021-02-07
现象描述:OOM异常Exceptioninthread"main"java.lang.OutOfMemoryError:Requestedarraysizeex
服务管理-开发接口服务
2021-03-01
O2OA提供的服务管理中心可以让用户使用Javascript语言自由编写脚本的处理逻辑来实现与第三方的数据交互,数据同步以及系统内的数据处理等工作,也可以编写系
表单-HTML编辑器(TinyMCE)的配置
2021-10-22
简介V6.4版本中,O2OA平台的表单中集成了新的HTML编辑-TinyMCE。TinyMCE是一个轻量级、基于浏览器的,所见即所得编辑器,支持目前流行的各种浏
开发知识-中标麒麟安装人大金仓详细步骤
2021-03-24
环境说明操作系统版本:NeoKylinLinuxAdvancedServerreleaseV7Update6(Chromium)1.前期准备工作1.1数据库下载

results matching ""

    No results matching ""