一、映象製作
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能夠正常啟動,如下圖:

具體系統使用有無問題還需要詳細的測試。:)

五、生產環境部署遇到的問題
應用配置了外部資料來源後,啟動報錯,報錯內容如下:

  1. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  2. @@@ @@@
  3. @@@ @@@
  4. @@@@@@@@@@@@@@@@@@@@@@@@@@ @@@
  5. @@@ @@@
  6. @@@ @@@
  7. @@@ @@@@@@@@@@# @@@ @@@
  8. @@@ @@@ @@@ @@@
  9. @@@ @@@ @@@ @@@
  10. @@@ @@@@@@@@@@# @@@ @@@
  11. @@@ @@@ @@@ @@@
  12. @@@ @@@ @@@ @@@
  13. @@@ @@@@@@@@@@@@@@@@@@@@ @@@
  14. @@@ @@@
  15. @@@ @@@
  16. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
  17. >>> server directory:/data/o2server
  18. >>> version:5.0.3
  19. >>> nodeAgent port:20010, encrypt:true
  20. help show usage message.
  21. start|stop [all] start stop all enable server.
  22. start|stop data start stop data server.
  23. start|stop storage start stop storage server.
  24. start|stop center start stop center server.
  25. start|stop application start stop application server.
  26. start|stop web start stop web server.
  27. setPassword (oldpasswd) (newpasswd) change initial manager password.
  28. create encrypt key create random RSA key.
  29. version show available update version.
  30. exit exit after stop.
  31. ctl -<argument> option system control command, no argument display help.
  32. ****************************************
  33. * data server start completed.
  34. * port: 20050.
  35. * web console port: 20051.
  36. ****************************************
  37. ****************************************
  38. * storage server start completed.
  39. * port: 20040.
  40. ****************************************
  41. 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.
  42. Jul 02, 2020 6:11:39 PM com.alibaba.druid.pool.DruidDataSource info
  43. INFO: {dataSource-1} inited
  44. 2020-07-02 18:11:42.197 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.program.center.CenterQueue start.
  45. 2020-07-02 18:11:42.198 INFO [main] com.x.base.core.project.queue.AbstractQueue - queue class: com.x.program.center.LogQueue start.
  46. ****************************************
  47. * center server start completed.
  48. * port: 30143.
  49. ****************************************
  50. 2020-07-02 18:11:48.204 PRINT [main] com.x.server.console.server.application.ApplicationServerTools - start to deploy official module, size:27.
  51. 2020-07-02 18:11:50.803 PRINT [main] com.x.server.console.server.application.ApplicationServerTools - start to deploy custom module, size:0.
  52. 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.
  53. 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.
  54. 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.
  55. 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.
  56. 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.]
  57. java.lang.Exception: get entityManager for class com.x.program.center.core.entity.UnexpectedErrorLog error.
  58. at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:109)
  59. at com.x.base.core.container.EntityManagerContainerBasic.get(EntityManagerContainerBasic.java:36)
  60. at com.x.program.center.schedule.CleanupUnexpectedErrorLog.cleanupUnexpectedErrorLog(CleanupUnexpectedErrorLog.java:40)
  61. at com.x.program.center.schedule.CleanupUnexpectedErrorLog.execute(CleanupUnexpectedErrorLog.java:30)
  62. at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
  63. at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
  64. Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
  65. {stmnt 420335887 CREATE INDEX CTE_UNEXPECTEDERRORLOG_exceptionClass ON CTE_UNEXPECTEDERRORLOG (xexceptionClass)} [code=972, state=42000]
  66. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
  67. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
  68. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
  69. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:181)
  70. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
  71. at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
  72. at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
  73. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
  74. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
  75. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
  76. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
  77. at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:103)
  78. ... 5 more
  79. Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00972: identifier is too long
  80. {stmnt 420335887 CREATE INDEX CTE_UNEXPECTEDERRORLOG_exceptionClass ON CTE_UNEXPECTEDERRORLOG (xexceptionClass)} [code=972, state=42000]
  81. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
  82. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:203)
  83. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
  84. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:955)
  85. at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:123)
  86. at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1377)
  87. at org.apache.openjpa.jdbc.schema.SchemaTool.createIndex(SchemaTool.java:1179)
  88. at org.apache.openjpa.jdbc.schema.SchemaTool.buildSchema(SchemaTool.java:689)
  89. at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:562)
  90. at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:401)
  91. at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:373)
  92. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:571)
  93. ... 16 more
  94. 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.]
  95. java.lang.Exception: get entityManager for class com.x.program.center.core.entity.PromptErrorLog error.
  96. at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:109)
  97. at com.x.base.core.container.EntityManagerContainerBasic.get(EntityManagerContainerBasic.java:36)
  98. at com.x.program.center.schedule.CleanupPromptErrorLog.cleanupPromptErrorLog(CleanupPromptErrorLog.java:40)
  99. at com.x.program.center.schedule.CleanupPromptErrorLog.execute(CleanupPromptErrorLog.java:30)
  100. at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
  101. at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
  102. Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
  103. {stmnt 2055978650 CREATE INDEX CTE_PROMPTERRORLOG_exceptionClass ON CTE_PROMPTERRORLOG (xexceptionClass)} [code=972, state=42000]
  104. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
  105. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
  106. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
  107. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:181)
  108. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
  109. at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
  110. at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
  111. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
  112. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
  113. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
  114. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
  115. at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:103)
  116. ... 5 more
  117. Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00972: identifier is too long
  118. {stmnt 2055978650 CREATE INDEX CTE_PROMPTERRORLOG_exceptionClass ON CTE_PROMPTERRORLOG (xexceptionClass)} [code=972, state=42000]
  119. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
  120. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:203)
  121. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
  122. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:955)
  123. at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:123)
  124. at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1377)
  125. at org.apache.openjpa.jdbc.schema.SchemaTool.createIndex(SchemaTool.java:1179)
  126. at org.apache.openjpa.jdbc.schema.SchemaTool.buildSchema(SchemaTool.java:689)
  127. at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:562)
  128. at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:401)
  129. at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:373)
  130. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:571)
  131. ... 16 more
  132. 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.
  133. 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.
  134. 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.
  135. 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.
  136. 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.
  137. 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.
  138. 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.
  139. 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.
  140. 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.]
  141. java.lang.Exception: get entityManager for class com.x.component.core.entity.Component error.
  142. at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:109)
  143. at com.x.base.core.container.EntityManagerContainerBasic.get(EntityManagerContainerBasic.java:36)
  144. at com.x.base.core.container.EntityManagerContainer.listEqualOrIn(EntityManagerContainer.java:555)
  145. at com.x.component.assemble.control.schedule.InitComponents.init(InitComponents.java:39)
  146. at com.x.component.assemble.control.schedule.InitComponents.schedule(InitComponents.java:29)
  147. at com.x.base.core.project.schedule.AbstractJob.execute(AbstractJob.java:25)
  148. at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
  149. at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
  150. Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
  151. {stmnt 71083461 CREATE INDEX CPT_COMPONENT_allowList_element ON CPT_COMPONENT_allowList (xallowList)} [code=972, state=42000]
  152. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
  153. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
  154. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
  155. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:181)
  156. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
  157. at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
  158. at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
  159. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
  160. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
  161. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
  162. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
  163. at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:103)
  164. ... 7 more
  165. Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00972: identifier is too long
  166. {stmnt 71083461 CREATE INDEX CPT_COMPONENT_allowList_element ON CPT_COMPONENT_allowList (xallowList)} [code=972, state=42000]
  167. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
  168. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:203)
  169. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
  170. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:955)
  171. at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:123)
  172. at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1377)
  173. at org.apache.openjpa.jdbc.schema.SchemaTool.createIndex(SchemaTool.java:1179)
  174. at org.apache.openjpa.jdbc.schema.SchemaTool.buildSchema(SchemaTool.java:689)
  175. at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:562)
  176. at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:401)
  177. at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:373)
  178. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:571)
  179. ... 18 more
  180. 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.]
  181. 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.]
  182. at com.x.component.assemble.control.schedule.InitComponents.schedule(InitComponents.java:32)
  183. at com.x.base.core.project.schedule.AbstractJob.execute(AbstractJob.java:25)
  184. at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
  185. at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
  186. Caused by: java.lang.Exception: get entityManager for class com.x.component.core.entity.Component error.
  187. at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:109)
  188. at com.x.base.core.container.EntityManagerContainerBasic.get(EntityManagerContainerBasic.java:36)
  189. at com.x.base.core.container.EntityManagerContainer.listEqualOrIn(EntityManagerContainer.java:555)
  190. at com.x.component.assemble.control.schedule.InitComponents.init(InitComponents.java:39)
  191. at com.x.component.assemble.control.schedule.InitComponents.schedule(InitComponents.java:29)
  192. ... 3 more
  193. Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
  194. {stmnt 71083461 CREATE INDEX CPT_COMPONENT_allowList_element ON CPT_COMPONENT_allowList (xallowList)} [code=972, state=42000]
  195. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
  196. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
  197. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
  198. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:181)
  199. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
  200. at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
  201. at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
  202. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
  203. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
  204. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
  205. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
  206. at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:103)
  207. ... 7 more
  208. Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00972: identifier is too long
  209. {stmnt 71083461 CREATE INDEX CPT_COMPONENT_allowList_element ON CPT_COMPONENT_allowList (xallowList)} [code=972, state=42000]
  210. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
  211. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:203)
  212. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
  213. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:955)
  214. at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:123)
  215. at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1377)
  216. at org.apache.openjpa.jdbc.schema.SchemaTool.createIndex(SchemaTool.java:1179)
  217. at org.apache.openjpa.jdbc.schema.SchemaTool.buildSchema(SchemaTool.java:689)
  218. at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:562)
  219. at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:401)
  220. at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:373)
  221. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:571)
  222. ... 18 more
  223. 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.
  224. 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.
  225. 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.
  226. 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.
  227. 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.
  228. 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.
  229. 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.
  230. 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.
  231. 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.
  232. 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.
  233. 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.
  234. 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.
  235. 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.
  236. 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.
  237. 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.
  238. 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.
  239. 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.
  240. 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.
  241. 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.
  242. 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.
  243. 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.
  244. 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.
  245. 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.
  246. 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.
  247. 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.]
  248. java.lang.Exception: get entityManager for class com.x.bbs.entity.BBSForumInfo error.
  249. at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:109)
  250. at com.x.base.core.container.EntityManagerContainerBasic.get(EntityManagerContainerBasic.java:36)
  251. at com.x.bbs.assemble.control.factory.BBSForumInfoFactory.listAll(BBSForumInfoFactory.java:52)
  252. at com.x.bbs.assemble.control.service.BBSForumInfoService.listAll(BBSForumInfoService.java:97)
  253. at com.x.bbs.assemble.control.service.BBSForumInfoServiceAdv.listAll(BBSForumInfoServiceAdv.java:142)
  254. at com.x.bbs.assemble.control.ThisApplication.initAllSystemConfig(ThisApplication.java:83)
  255. at com.x.bbs.assemble.control.ThisApplication.init(ThisApplication.java:37)
  256. at com.x.bbs.assemble.control.ApplicationServletContextListener.contextInitialized(ApplicationServletContextListener.java:16)
  257. at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:930)
  258. at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:553)
  259. at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:889)
  260. at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:356)
  261. at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1445)
  262. at org.eclipse.jetty.quickstart.QuickStartWebApp.startWebapp(QuickStartWebApp.java:131)
  263. at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1409)
  264. at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:822)
  265. at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:275)
  266. at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:524)
  267. at org.eclipse.jetty.quickstart.QuickStartWebApp.doStart(QuickStartWebApp.java:200)
  268. at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
  269. at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
  270. at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
  271. at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
  272. at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
  273. at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
  274. at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
  275. at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
  276. at org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:425)
  277. at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
  278. at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
  279. at org.eclipse.jetty.server.Server.start(Server.java:407)
  280. at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
  281. at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
  282. at org.eclipse.jetty.server.Server.doStart(Server.java:371)
  283. at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
  284. at com.x.server.console.server.application.ApplicationServerTools.start(ApplicationServerTools.java:204)
  285. at com.x.server.console.server.Servers.startApplicationServer(Servers.java:95)
  286. at com.x.server.console.Main.startApplicationServer(Main.java:344)
  287. at com.x.server.console.Main.startAll(Main.java:429)
  288. at com.x.server.console.Main.main(Main.java:139)
  289. Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
  290. {stmnt 1200741024 CREATE TABLE BBS_FORUMINFO_publishPermissionList (BBSFORUMINFO_XID VARCHAR2(64), xpublishPermissionList VARCHAR2(255), xorderColumn NUMBER)} [code=972, state=42000]
  291. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
  292. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
  293. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
  294. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:181)
  295. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
  296. at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
  297. at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
  298. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
  299. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
  300. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
  301. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
  302. at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:103)
  303. ... 39 more
  304. Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00972: identifier is too long
  305. {stmnt 1200741024 CREATE TABLE BBS_FORUMINFO_publishPermissionList (BBSFORUMINFO_XID VARCHAR2(64), xpublishPermissionList VARCHAR2(255), xorderColumn NUMBER)} [code=972, state=42000]
  306. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
  307. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:203)
  308. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
  309. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:955)
  310. at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:123)
  311. at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1377)
  312. at org.apache.openjpa.jdbc.schema.SchemaTool.createTable(SchemaTool.java:1117)
  313. at org.apache.openjpa.jdbc.schema.SchemaTool.buildSchema(SchemaTool.java:659)
  314. at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:562)
  315. at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:401)
  316. at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:373)
  317. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:571)
  318. ... 50 more
  319. 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.
  320. 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.]
  321. java.lang.Exception: get entityManager for class com.x.bbs.entity.BBSSectionInfo error.
  322. at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:109)
  323. at com.x.base.core.container.EntityManagerContainerBasic.get(EntityManagerContainerBasic.java:36)
  324. at com.x.bbs.assemble.control.factory.BBSSectionInfoFactory.listAll(BBSSectionInfoFactory.java:53)
  325. at com.x.bbs.assemble.control.service.BBSSectionInfoService.listAll(BBSSectionInfoService.java:164)
  326. at com.x.bbs.assemble.control.service.BBSSectionInfoServiceAdv.listAll(BBSSectionInfoServiceAdv.java:340)
  327. at com.x.bbs.assemble.control.ThisApplication.initAllSystemConfig(ThisApplication.java:97)
  328. at com.x.bbs.assemble.control.ThisApplication.init(ThisApplication.java:37)
  329. at com.x.bbs.assemble.control.ApplicationServletContextListener.contextInitialized(ApplicationServletContextListener.java:16)
  330. at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:930)
  331. at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:553)
  332. at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:889)
  333. at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:356)
  334. at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1445)
  335. at org.eclipse.jetty.quickstart.QuickStartWebApp.startWebapp(QuickStartWebApp.java:131)
  336. at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1409)
  337. at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:822)
  338. at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:275)
  339. at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:524)
  340. at org.eclipse.jetty.quickstart.QuickStartWebApp.doStart(QuickStartWebApp.java:200)
  341. at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
  342. at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
  343. at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117)
  344. at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
  345. at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
  346. at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
  347. at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
  348. at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
  349. at org.eclipse.jetty.server.handler.gzip.GzipHandler.doStart(GzipHandler.java:425)
  350. at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
  351. at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
  352. at org.eclipse.jetty.server.Server.start(Server.java:407)
  353. at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
  354. at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
  355. at org.eclipse.jetty.server.Server.doStart(Server.java:371)
  356. at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:72)
  357. at com.x.server.console.server.application.ApplicationServerTools.start(ApplicationServerTools.java:204)
  358. at com.x.server.console.server.Servers.startApplicationServer(Servers.java:95)
  359. at com.x.server.console.Main.startApplicationServer(Main.java:344)
  360. at com.x.server.console.Main.startAll(Main.java:429)
  361. at com.x.server.console.Main.main(Main.java:139)
  362. Caused by: <openjpa-3.1.0-rafcec21a1d489dff682a3ce7986fac6a1c80e8e0 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: ORA-00972: identifier is too long
  363. {stmnt 1267880836 CREATE TABLE BBS_SECTIONINFO_publishPermissionList (BBSSECTIONINFO_XID VARCHAR2(64), xpublishPermissionList VARCHAR2(255), xorderColumn NUMBER)} [code=972, state=42000]
  364. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:625)
  365. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:489)
  366. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:177)
  367. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.synchronizeMappings(JDBCBrokerFactory.java:181)
  368. at org.apache.openjpa.jdbc.kernel.JDBCBrokerFactory.newBrokerImpl(JDBCBrokerFactory.java:138)
  369. at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(AbstractBrokerFactory.java:213)
  370. at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(DelegatingBrokerFactory.java:166)
  371. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:262)
  372. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:177)
  373. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:167)
  374. at org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:64)
  375. at com.x.base.core.container.factory.EntityManagerContainerFactory.createEntityManager(EntityManagerContainerFactory.java:103)
  376. ... 39 more
  377. Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00972: identifier is too long
  378. {stmnt 1267880836 CREATE TABLE BBS_SECTIONINFO_publishPermissionList (BBSSECTIONINFO_XID VARCHAR2(64), xpublishPermissionList VARCHAR2(255), xorderColumn NUMBER)} [code=972, state=42000]
  379. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:219)
  380. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.wrap(LoggingConnectionDecorator.java:203)
  381. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator.access$700(LoggingConnectionDecorator.java:58)
  382. at org.apache.openjpa.lib.jdbc.LoggingConnectionDecorator$LoggingConnection$LoggingStatement.executeUpdate(LoggingConnectionDecorator.java:955)
  383. at org.apache.openjpa.lib.jdbc.DelegatingStatement.executeUpdate(DelegatingStatement.java:123)
  384. at org.apache.openjpa.jdbc.schema.SchemaTool.executeSQL(SchemaTool.java:1377)
  385. at org.apache.openjpa.jdbc.schema.SchemaTool.createTable(SchemaTool.java:1117)
  386. at org.apache.openjpa.jdbc.schema.SchemaTool.buildSchema(SchemaTool.java:659)
  387. at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:562)
  388. at org.apache.openjpa.jdbc.schema.SchemaTool.add(SchemaTool.java:401)
  389. at org.apache.openjpa.jdbc.schema.SchemaTool.run(SchemaTool.java:373)
  390. at org.apache.openjpa.jdbc.meta.MappingTool.record(MappingTool.java:571)
  391. ... 50 more
  392. 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.
  393. 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.
  394. 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.
  395. 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.
  396. 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.
  397. 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.
  398. 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.
  399. 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.
  400. 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.
  401. 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.
  402. 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.
  403. 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.
  404. 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.
  405. 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.
  406. 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.
  407. 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.
  408. 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.
  409. ****************************************
  410. * application server start completed.
  411. * port: 30144.
  412. ****************************************
  413. ****************************************
  414. * web server start completed.
  415. * port: 30145.
  416. ****************************************

問題原因:資料庫版本過低,生產環境是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存放這些臨時檔案,避免應用重啟後丟失,或多個節點共享這些檔案。