开源协同办公部署教程:O2OA PAAS平台部署
一、镜像制作
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存放这些临时文件,避免应用重启后丢失,或多个节点共享这些文件。
推荐阅读
-
Java开源企业开发平台新版预计3月16日发布|包含大量更新 O2OA开源平台企业办公平台信息化平台协同办公
-
Java开源企业开发平台新版预计3月16日发布|包含大量更新 O2OA开源平台企业办公平台信息化平台协同办公
-
开源OA办公平台搭建教程:基于nginx的快速集群部署-上下文分发
-
开源OA办公平台搭建教程:基于nginx的快速集群部署——端口分发
-
开源OA办公平台搭建教程:O2OA表单中的事件
-
开源OA办公平台教程(O2OA):WebService调用样例
-
开源OA办公平台搭建教程:在O2OA中使用网络会议(一)
-
O2OA开源免费办公平台:在PAAS平台上部署O2OA开发平台
-
使用O2OA二次开发搭建企业办公平台(四)平台部署篇:用户密码设置
-
使用O2OA二次开发搭建企业办公平台(七)平台部署篇:服务器备份和数据导入导出