000038387 - 'com.aveksa.server.db.PersistenceException:n/a' errors when importing business source metadata into RSA Identity Governance & Lifecycle

Document created by RSA Customer Support Employee on Jan 29, 2020Last modified by RSA Customer Support Employee on Feb 13, 2020
Version 2Show Document
  • View in full screen mode

Article Content

Article Number000038387
Applies ToRSA Product Set: RSA Identity Governance & Lifecycle
RSA Version/Condition: 7.1.1
 
IssueWhen importing Business Source (Directory or Application) metadata into RSA Identity Governance & Lifecycle 7.1.1 (Admin > Import/Export > Import), the following error is seen in the user interface:
 
com.aveksa.server.db.PersistenceException:n/a
 


The example below illustrates this issue when importing a Directory metadata definition:
 

 

User-added image

 

User-added image




The following errors are logged to the aveksaServer.log file ($AVEKSA_HOME/wildfly/standalone/log/aveksaServer.log):
 

01/29/2020 07:53:11.801 WARN  (default task-27) [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] SQL Error: 2290, SQLState: 23000
01/29/2020 07:53:11.802 ERROR (default task-27) [org.hibernate.engine.jdbc.spi.SqlExceptionHelper] ORA-02290: check constraint (AVUSER.ENTS_REQUIRE_ACCOUNT_CHK) violated

01/29/2020 07:53:11.802 INFO  (default task-27) [org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl] HHH000010:
On release of batch it still contained JDBC statements
01/29/2020 07:53:11.803 ERROR (default task-27) [org.hibernate.internal.SessionImpl] HHH000346: Error during managed flush [could not execute statement]
01/29/2020 07:53:11.818 ERROR (default task-27) [com.aveksa.server.export.ExportEntry] Export/Import entry is not well formed:
java.lang.NullPointerException

        at com.aveksa.server.export.ExportEntry.<init>(ExportEntry.java:69)
        at com.aveksa.server.export.ExportImportController.registerException(ExportImportController.java:588)
        at com.aveksa.server.export.ExportImportController.registerException(ExportImportController.java:573)
        at com.aveksa.server.export.ExportImportConverter.unmarshal(ExportImportConverter.java:133)
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convert(TreeUnmarshaller.java:72)
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:66)
        at com.thoughtworks.xstream.core.TreeUnmarshaller.convertAnother(TreeUnmarshaller.java:50)
        at com.thoughtworks.xstream.core.TreeUnmarshaller.start(TreeUnmarshaller.java:134)
        at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.unmarshal(AbstractTreeMarshallingStrategy.java:32)
        at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1486)
        at com.thoughtworks.xstream.XStream.unmarshal(XStream.java:1466)
        at com.thoughtworks.xstream.XStream$4.readFromStream(XStream.java:2200)
        at com.thoughtworks.xstream.core.util.CustomObjectInputStream.readObjectOverride(CustomObjectInputStream.java:123)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:422)
        at com.aveksa.server.export.ExportImportController.importMetadata(ExportImportController.java:310)
        at com.aveksa.gui.pages.admin.metadata.edit.general.ImportTablePage.processTable(ImportTablePage.java:114)
        at com.aveksa.gui.pages.admin.metadata.edit.general.ImportWizard.processTable(ImportWizard.java:139)
        at com.aveksa.gui.pages.admin.metadata.edit.CommonPromptPage.handleSubmit(CommonPromptPage.java:54)
        at com.aveksa.gui.pages.admin.metadata.edit.general.ImportPromptPage.handleSubmit(ImportPromptPage.java:55)
        at com.aveksa.gui.pages.base.data.wizard.StepWizardDialogData.handleRequest(StepWizardDialogData.java:119)
        at com.aveksa.gui.pages.PageManager.forwardRequest(PageManager.java:609)
        at com.aveksa.gui.pages.PageManager.handleRequest(PageManager.java:340)
        at com.aveksa.gui.pages.PageManager.handleRequest(PageManager.java:271)
        at com.aveksa.gui.core.MainManager.handleRequest(MainManager.java:187)
        at com.aveksa.gui.core.MainManager.doGet(MainManager.java:131)
        at com.aveksa.gui.core.MainManager.doPost(MainManager.java:430)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
        at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
        at com.aveksa.gui.core.filters.LoginFilter.doFilter(LoginFilter.java:64)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at com.aveksa.gui.util.security.XSSFilter.doFilter(XSSFilter.java:20)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
        at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
        at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
        at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131)
        at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at io.undertow.security.handlers.AuthenticationConstraintHandler.handleRequest(AuthenticationConstraintHandler.java:53)
        at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
        at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
        at io.undertow.servlet.handlers.security.ServletSecurityConstraintHandler.handleRequest(ServletSecurityConstraintHandler.java:59)
        at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
      at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
        at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
        at io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50)
        at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at org.wildfly.extension.undertow.deployment.RewriteCorrectingHandlerWrappers$PostWrapper$1.handleRequest(RewriteCorrectingHandlerWrappers.java:71)
        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at org.wildfly.extension.undertow.deployment.RewriteCorrectingHandlerWrappers$PreWrapper$1.handleRequest(RewriteCorrectingHandlerWrappers.java:52)
        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:292)
        at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:81)
        at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:138)
        at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135)
        at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
        at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
        at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44)
        at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44)
        at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44)
        at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44)
        at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44)
        at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:272)
        at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81)
        at io.undertow.servlet.handlers.ServletInitialHandler$1$1.run(ServletInitialHandler.java:110)
        at java.security.AccessController.doPrivileged(Native Method)
        at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:107)
        at io.undertow.server.Connectors.executeRootHandler(Connectors.java:202)
        at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:805)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: com.aveksa.server.db.PersistenceException: n/a
        at com.aveksa.server.db.persistence.PersistenceServiceProvider.commitTransaction(PersistenceServiceProvider.java:2742)
        at com.aveksa.server.db.persistence.PersistenceServiceProvider.commitTransaction(PersistenceServiceProvider.java:2700)
        at com.aveksa.server.db.PersistenceManager.commitTransaction(PersistenceManager.java:420)
        at com.aveksa.server.core.Application.setApplicationVO(Application.java:942)
        ... 79 more
Caused by: org.hibernate.exception.ConstraintViolationException: could not execute statement
        at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:59)
        at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:42)
        at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:109)
        at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:95)
        at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:207)
        at org.hibernate.engine.jdbc.batch.internal.NonBatchingBatch.addToBatch(NonBatchingBatch.java:45)
        at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:3082)
        at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2961)
        at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:3341)
        at org.hibernate.action.internal.EntityUpdateAction.execute(EntityUpdateAction.java:145)
        at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:582)
        at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:456)
        at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:337)
        at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:39)
        at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1282)
        at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:465)
        at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:2963)
        at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2339)
        at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:485)
        at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.beforeCompletionCallback
(JdbcResourceLocalTransactionCoordinatorImpl.java:147)
        at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.access$100
(JdbcResourceLocalTransactionCoordinatorImpl.java:38)
        at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl$TransactionDriverControlImpl.commit
(JdbcResourceLocalTransactionCoordinatorImpl.java:231)
        at org.hibernate.engine.transaction.internal.TransactionImpl.commit(TransactionImpl.java:65)
        at com.aveksa.server.db.persistence.PersistenceServiceProvider.commitTransaction(PersistenceServiceProvider.java:2731)
        ... 82 more
Caused by: java.sql.SQLIntegrityConstraintViolationException: ORA-02290: check constraint (AVUSER.ENTS_REQUIRE_ACCOUNT_CHK) violated

        at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:494)
        at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:446)
        at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1054)
        at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:623)
        at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:252)
        at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:612)
        at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:226)
        at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:59)
        at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:910)
        at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1119)
        at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3780)
        at oracle.jdbc.driver.T4CPreparedStatement.executeInternal(T4CPreparedStatement.java:1343)
        at oracle.jdbc.driver.OraclePreparedStatement.executeLargeUpdate(OraclePreparedStatement.java:3865)
        at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3845)
        at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeUpdate(OraclePreparedStatementWrapper.java:1061)
        at org.jboss.jca.adapters.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:537)
        at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:204)
        ... 101 more
Caused by: Error : 2290, Position : 0, Sql = update T_APPLICATIONS set "IS_DELETED"=:1 , "NAME"=:2 , "CREATED_BY"=:3 , "CREATION_DATE"=:4 ,
"CURRENT_VERSION_ID"=:5 , "RESOURCE_TYPE"=:6 , "DESCRIPTION"=:7 , "SENSITIVITY"=:8 , "BUSINESS_USE"=:9 , "CATEGORY"=:10 , "OWNERSHIP"=:11 ,
"LOCALITY"=:12 , "CLASSIFICATION"=:13 , "ENT_DATA_RET_TIMING"=:14 , "EXCEPTION_MANAGER"=:15 , "TECHNICAL_OWNER"=:16 , "BUSINESS_OWNER"=:17 ,
"BUSINESS_UNIT_ID"=:18 , "ALT_NAME"=:19 , "SHORT_DESC"=:20 , "LONG_DESC"=:21 , "URL_REF"=:22 , "FILTER_ID"=:23 , "PRIVILEGED_FLAG"=:24 ,
"BUSINESS_CRITICALITY"=:25 , "USER_COUNT"=:26 , "ACCOUNT_COUNT"=:27 , "ORPHANED_ACCOUNT_COUNT"=:28 , "ENTITLEMENT_COUNT"=:29 ,
"EXCLUDE_FROM_NORMAL_ADD_ACCESS"=:30 , "ENTS_REQUIRE_ACCOUNT"=:31 , "RULES_ACCOUNT_TEMPLATE_ID"=:32 , "ROLES_ACCOUNT_TEMPLATE_ID"=:33 ,
"ATTR_SYNC_ENABLED"=:34 , "ALLOW_DISABLED_ACCOUNTS"=:35 , "ALLOW_LOCKED_ACCOUNTS"=:36 , "ALLOW_CREATE_ENTITLEMENT"=:37 , "ALLOW_MANUAL_ACTIVITY"=:38 ,
"CAS1"=:39 , "CAS2"=:40 , "CAS3"=:41 , "CAS4"=:42 , "CAS5"=:43 , "CAS6"=:44 , "CAS7"=:45 , "CAS8"=:46 , "CAS9"=:47 , "CAS10"=:48 , "CAS11"=:49 ,
"CAS12"=:50 , "CAS13"=:51 , "CAS14"=:52 , "CAS15"=:53 , "CAS16"=:54 , "CAS17"=:55 , "CAS18"=:56 , "CAS19"=:57 , "CAS20"=:58 , "CAS21"=:59 ,
"CAS22"=:60 , "CAS23"=:61 , "CAS24"=:62 , "CAS25"=:63 , "CAS26"=:64 , "CAS27"=:65 , "CAS28"=:66 , "CAS29"=:67 , "CAS30"=:68 , "CAS31"=:69 ,
"CAS32"=:70 , "CAS33"=:71 , "CAS34"=:72 , "CAS35"=:73 , "CAS36"=:74 , "CAS37"=:75 , "CAI1"=:76 , "CAI2"=:77 , "CAI3"=:78 , "CAI4"=:79 ,
"CAI5"=:80 , "CAD1"=:81 , "CAD2"=:82 , "CAD3"=:83 , "CAD4"=:84 , "CAD5"=:85 , "CAU1"=:86 , "CAU2"=:87 , "CAU3"=:88 , "CAU4"=:89 , "CAU5"=:90  
where "ID"=:91 , OriginalSql = update T_APPLICATIONS set "IS_DELETED"=?, "NAME"=?, "CREATED_BY"=?, "CREATION_DATE"=?, "CURRENT_VERSION_ID"=?,
"RESOURCE_TYPE"=?, "DESCRIPTION"=?, "SENSITIVITY"=?, "BUSINESS_USE"=?, "CATEGORY"=?, "OWNERSHIP"=?, "LOCALITY"=?, "CLASSIFICATION"=?,
"ENT_DATA_RET_TIMING"=?, "EXCEPTION_MANAGER"=?, "TECHNICAL_OWNER"=?, "BUSINESS_OWNER"=?, "BUSINESS_UNIT_ID"=?, "ALT_NAME"=?, "SHORT_DESC"=?,
"LONG_DESC"=?, "URL_REF"=?, "FILTER_ID"=?, "PRIVILEGED_FLAG"=?, "BUSINESS_CRITICALITY"=?, "USER_COUNT"=?, "ACCOUNT_COUNT"=?, "ORPHANED_ACCOUNT_COUNT"=?,
"ENTITLEMENT_COUNT"=?, "EXCLUDE_FROM_NORMAL_ADD_ACCESS"=?, "ENTS_REQUIRE_ACCOUNT"=?, "RULES_ACCOUNT_TEMPLATE_ID"=?, "ROLES_ACCOUNT_TEMPLATE_ID"=?,
"ATTR_SYNC_ENABLED"=?, "ALLOW_DISABLED_ACCOUNTS"=?, "ALLOW_LOCKED_ACCOUNTS"=?, "ALLOW_CREATE_ENTITLEMENT"=?, "ALLOW_MANUAL_ACTIVITY"=?, "CAS1"=?,
"CAS2"=?, "CAS3"=?, "CAS4"=?, "CAS5"=?, "CAS6"=?, "CAS7"=?, "CAS8"=?, "CAS9"=?, "CAS10"=?, "CAS11"=?, "CAS12"=?, "CAS13"=?, "CAS14"=?, "CAS15"=?,
"CAS16"=?, "CAS17"=?, "CAS18"=?, "CAS19"=?, "CAS20"=?, "CAS21"=?, "CAS22"=?, "CAS23"=?, "CAS24"=?, "CAS25"=?, "CAS26"=?, "CAS27"=?, "CAS28"=?,
"CAS29"=?, "CAS30"=?, "CAS31"=?, "CAS32"=?, "CAS33"=?, "CAS34"=?, "CAS35"=?, "CAS36"=?, "CAS37"=?, "CAI1"=?, "CAI2"=?, "CAI3"=?, "CAI4"=?,
"CAI5"=?, "CAD1"=?, "CAD2"=?, "CAD3"=?, "CAD4"=?, "CAD5"=?, "CAU1"=?, "CAU2"=?, "CAU3"=?, "CAU4"=?, "CAU5"=? where "ID"=?,
Error Msg = ORA-02290: check constraint (AVUSER.ENTS_REQUIRE_ACCOUNT_CHK) violated


Please refer to RSA Knowledge Base Article 000030327 -- Artifacts to gather in RSA Identity Governance & Lifecycle to find the location of the aveksaServer.log for your specific deployment if you are on a WildFly cluster or a non-WildFly platform.
 
CauseThe significant error that explains the problem cause is the following constraint error encountered when importing the application data:
 

ORA-02290: check constraint (AVUSER.ENTS_REQUIRE_ACCOUNT_CHK) violated


When checking the AVUSER.ENTS_REQUIRE_ACCOUNT_CHK constraint, the code is checking for uppercase values:
 

ENTS_REQUIRE_ACCOUNT in ('TRUE', 'FALSE', 'NEVER')


However, the data from 7.1.1 is exported in lowercase as in the following example taken from the exported metadata xml file:
       

<Property name="entsRequireAccountStr" type="java.lang.String">true</Property>


This is a known issue reported in engineering ticket ACM-100350.
 
ResolutionThis issue is resolved in RSA Identity Governance & Lifecycle 7.2.
 
WorkaroundAs a workaround, modify the value of each occurrence of the entsRequireAccountStr flag in the exported metadata xml file from lowercase to uppercase (e.g. true to TRUE) as in the example below. 
 
FROM:         



<Property name="entsRequireAccountStr" type="java.lang.String">true</Property>


TO:



<Property name="entsRequireAccountStr" type="java.lang.String">TRUE</Property>

 

Import the modified file and note the metadata is successfully imported.

Attachments

    Outcomes