1. 程式人生 > 其它 >開源協同辦公平臺部署教程:O2OA PAAS平臺部署

開源協同辦公平臺部署教程: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存放這些臨時檔案,避免應用重啟後丟失,或多個節點共享這些檔案。