Skip to content

Cannot log into Publisher - Cannot disable the H2 database once MariaDB is setup #4696

@dubnemo

Description

@dubnemo

Description

deployment.toml and docker-compose.yml have MariaDB configured, but for some reason, APIM seems to revert to the default H2 db. I would like to force APIM to look at MariaDB, and throw normal exceptions if db entries are not valid.

I manually created records IDN_OAUTH_CONSUMER_APPS and SP_APP for both apim_devportal and apim_publisher, and tweeked the client_id to match, but still reverts to H2.

Steps to Reproduce

sudo docker exec -it mariadb mysql -u wso2 -pwso2_password -e "USE WSO2AM_DB; SHOW TABLES;"
+----------------------------------+
| Tables_in_WSO2AM_DB              |
+----------------------------------+
| AM_ALERT_EMAILLIST               |
| AM_ALERT_EMAILLIST_DETAILS       |
| AM_ALERT_TYPES                   |
| AM_ALERT_TYPES_VALUES            |
| AM_API                           |
| AM_API_CATEGORIES                |
| AM_API_CLIENT_CERTIFICATE        |
| AM_API_COMMENTS                  |
| AM_API_DEFAULT_VERSION           |
| AM_API_ENVIRONMENT_KEYS          |
| AM_API_LC_EVENT                  |
| AM_API_LC_PUBLISH_EVENTS         |
| AM_API_OPERATION_POLICY          |
| AM_API_OPERATION_POLICY_MAPPING  |
| AM_API_POLICY_MAPPING            |
| AM_API_PRODUCT_MAPPING           |
| AM_API_RATINGS                   |
| AM_API_RESOURCE_SCOPE_MAPPING    |
| AM_API_REVISION_METADATA         |
| AM_API_SERVICE_MAPPING           |
| AM_API_THROTTLE_POLICY           |
| AM_API_URL_MAPPING               |
| AM_APPLICATION                   |
| AM_APPLICATION_ATTRIBUTES        |
| AM_APPLICATION_GROUP_MAPPING     |
| AM_APPLICATION_KEY_MAPPING       |
| AM_APPLICATION_REGISTRATION      |
| AM_APP_KEY_DOMAIN_MAPPING        |
| AM_APP_REVOKED_EVENT             |
| AM_BLOCK_CONDITIONS              |
| AM_CERTIFICATE_METADATA          |
| AM_COMMON_OPERATION_POLICY       |
| AM_CONDITION_GROUP               |
| AM_CORRELATION_CONFIGS           |
| AM_CORRELATION_PROPERTIES        |
| AM_DEPLOYED_REVISION             |
| AM_DEPLOYMENT_REVISION_MAPPING   |
| AM_EXTERNAL_STORES               |
| AM_GATEWAY_ENVIRONMENT           |
| AM_GATEWAY_POLICY_DEPLOYMENT     |
| AM_GATEWAY_POLICY_MAPPING        |
| AM_GATEWAY_POLICY_METADATA       |
| AM_GRAPHQL_COMPLEXITY            |
| AM_GW_API_ARTIFACTS              |
| AM_GW_API_DEPLOYMENTS            |
| AM_GW_PUBLISHED_API_DETAILS      |
| AM_GW_VHOST                      |
| AM_HEADER_FIELD_CONDITION        |
| AM_IP_CONDITION                  |
| AM_JWT_CLAIM_CONDITION           |
| AM_KEY_MANAGER                   |
| AM_KEY_MANAGER_PERMISSIONS       |
| AM_MONETIZATION_USAGE            |
| AM_NOTIFICATION_SUBSCRIBER       |
| AM_OPERATION_POLICY              |
| AM_OPERATION_POLICY_DEFINITION   |
| AM_POLICY_APPLICATION            |
| AM_POLICY_GLOBAL                 |
| AM_POLICY_HARD_THROTTLING        |
| AM_POLICY_SUBSCRIPTION           |
| AM_QUERY_PARAMETER_CONDITION     |
| AM_REVISION                      |
| AM_REVOKED_JWT                   |
| AM_SCOPE                         |
| AM_SCOPE_BINDING                 |
| AM_SECURITY_AUDIT_UUID_MAPPING   |
| AM_SERVICE_CATALOG               |
| AM_SHARED_SCOPE                  |
| AM_SUBJECT_ENTITY_REVOKED_EVENT  |
| AM_SUBSCRIBER                    |
| AM_SUBSCRIPTION                  |
| AM_SYSTEM_APPS                   |
| AM_SYSTEM_CONFIGS                |
| AM_TENANT_THEMES                 |
| AM_THROTTLE_TIER_PERMISSIONS     |
| AM_TIER_PERMISSIONS              |
| AM_USAGE_UPLOADED_FILES          |
| AM_USER                          |
| AM_WEBHOOKS_SUBSCRIPTION         |
| AM_WEBHOOKS_UNSUBSCRIPTION       |
| AM_WORKFLOWS                     |
| CM_CONSENT_RECEIPT_PROPERTY      |
| CM_PII_CATEGORY                  |
| CM_PURPOSE                       |
| CM_PURPOSE_CATEGORY              |
| CM_PURPOSE_PII_CAT_ASSOC         |
| CM_RECEIPT                       |
| CM_RECEIPT_SP_ASSOC              |
| CM_SP_PURPOSE_ASSOC              |
| CM_SP_PURPOSE_PII_CAT_ASSOC      |
| CM_SP_PURPOSE_PURPOSE_CAT_ASSC   |
| FIDO2_DEVICE_STORE               |
| FIDO_DEVICE_STORE                |
| IDN_APP_REVOKED_EVENT            |
| IDN_ASSOCIATED_ID                |
| IDN_AUTH_SESSION_APP_INFO        |
| IDN_AUTH_SESSION_META_DATA       |
| IDN_AUTH_SESSION_STORE           |
| IDN_AUTH_TEMP_SESSION_STORE      |
| IDN_AUTH_USER                    |
| IDN_AUTH_USER_SESSION_MAPPING    |
| IDN_AUTH_WAIT_STATUS             |
| IDN_BASE_TABLE                   |
| IDN_CERTIFICATE                  |
| IDN_CLAIM                        |
| IDN_CLAIM_DIALECT                |
| IDN_CLAIM_MAPPED_ATTRIBUTE       |
| IDN_CLAIM_MAPPING                |
| IDN_CLAIM_PROPERTY               |
| IDN_CONFIG_ATTRIBUTE             |
| IDN_CONFIG_FILE                  |
| IDN_CONFIG_RESOURCE              |
| IDN_CONFIG_TYPE                  |
| IDN_CORS_ASSOCIATION             |
| IDN_CORS_ORIGIN                  |
| IDN_FED_AUTH_SESSION_MAPPING     |
| IDN_FUNCTION_LIBRARY             |
| IDN_IDENTITY_META_DATA           |
| IDN_IDENTITY_USER_DATA           |
| IDN_INVALID_TOKENS               |
| IDN_OAUTH1A_ACCESS_TOKEN         |
| IDN_OAUTH1A_REQUEST_TOKEN        |
| IDN_OAUTH2_ACCESS_TOKEN          |
| IDN_OAUTH2_ACCESS_TOKEN_AUDIT    |
| IDN_OAUTH2_ACCESS_TOKEN_SCOPE    |
| IDN_OAUTH2_AUTHORIZATION_CODE    |
| IDN_OAUTH2_AUTHZ_CODE_SCOPE      |
| IDN_OAUTH2_CIBA_AUTH_CODE        |
| IDN_OAUTH2_CIBA_REQUEST_SCOPES   |
| IDN_OAUTH2_DEVICE_FLOW           |
| IDN_OAUTH2_DEVICE_FLOW_SCOPES    |
| IDN_OAUTH2_RESOURCE_SCOPE        |
| IDN_OAUTH2_SCOPE                 |
| IDN_OAUTH2_SCOPE_BINDING         |
| IDN_OAUTH2_SCOPE_VALIDATORS      |
| IDN_OAUTH2_TOKEN_BINDING         |
| IDN_OAUTH2_USER_CONSENT          |
| IDN_OAUTH2_USER_CONSENTED_SCOPES |
| IDN_OAUTH_CONSUMER_APPS          |
| IDN_OIDC_JTI                     |
| IDN_OIDC_PROPERTY                |
| IDN_OIDC_REQ_OBJECT_CLAIMS       |
| IDN_OIDC_REQ_OBJECT_REFERENCE    |
| IDN_OIDC_REQ_OBJ_CLAIM_VALUES    |
| IDN_OIDC_SCOPE_CLAIM_MAPPING     |
| IDN_OPENID_ASSOCIATIONS          |
| IDN_OPENID_REMEMBER_ME           |
| IDN_OPENID_USER_RPS              |
| IDN_PASSWORD_HISTORY_DATA        |
| IDN_RECOVERY_DATA                |
| IDN_REMOTE_FETCH_CONFIG          |
| IDN_REMOTE_FETCH_REVISIONS       |
| IDN_SAML2_ARTIFACT_STORE         |
| IDN_SAML2_ASSERTION_STORE        |
| IDN_SCIM_GROUP                   |
| IDN_SECRET                       |
| IDN_SECRET_TYPE                  |
| IDN_STS_STORE                    |
| IDN_SUBJECT_ENTITY_REVOKED_EVENT |
| IDN_THRIFT_SESSION               |
| IDN_UMA_PERMISSION_TICKET        |
| IDN_UMA_PT_RESOURCE              |
| IDN_UMA_PT_RESOURCE_SCOPE        |
| IDN_UMA_RESOURCE                 |
| IDN_UMA_RESOURCE_META_DATA       |
| IDN_UMA_RESOURCE_SCOPE           |
| IDN_USER_ACCOUNT_ASSOCIATION     |
| IDN_USER_FUNCTIONALITY_MAPPING   |
| IDN_USER_FUNCTIONALITY_PROPERTY  |
| IDP                              |
| IDP_AUTHENTICATOR                |
| IDP_AUTHENTICATOR_PROPERTY       |
| IDP_CLAIM                        |
| IDP_CLAIM_MAPPING                |
| IDP_LOCAL_CLAIM                  |
| IDP_METADATA                     |
| IDP_PROVISIONING_CONFIG          |
| IDP_PROVISIONING_ENTITY          |
| IDP_PROV_CONFIG_PROPERTY         |
| IDP_ROLE                         |
| IDP_ROLE_MAPPING                 |
| REG_ASSOCIATION                  |
| REG_CLUSTER_LOCK                 |
| REG_COMMENT                      |
| REG_CONTENT                      |
| REG_CONTENT_HISTORY              |
| REG_LOG                          |
| REG_PATH                         |
| REG_PROPERTY                     |
| REG_RATING                       |
| REG_RESOURCE                     |
| REG_RESOURCE_COMMENT             |
| REG_RESOURCE_HISTORY             |
| REG_RESOURCE_PROPERTY            |
| REG_RESOURCE_RATING              |
| REG_RESOURCE_TAG                 |
| REG_SNAPSHOT                     |
| REG_TAG                          |
| SP_APP                           |
| SP_AUTH_SCRIPT                   |
| SP_AUTH_STEP                     |
| SP_CLAIM_DIALECT                 |
| SP_CLAIM_MAPPING                 |
| SP_FEDERATED_IDP                 |
| SP_INBOUND_AUTH                  |
| SP_METADATA                      |
| SP_PROVISIONING_CONNECTOR        |
| SP_REQ_PATH_AUTHENTICATOR        |
| SP_ROLE_MAPPING                  |
| SP_SHARED_APP                    |
| SP_TEMPLATE                      |
| UM_ACCOUNT_MAPPING               |
| UM_CLAIM                         |
| UM_CLAIM_BEHAVIOR                |
| UM_DIALECT                       |
| UM_DOMAIN                        |
| UM_GROUP_UUID_DOMAIN_MAPPER      |
| UM_HYBRID_GROUP_ROLE             |
| UM_HYBRID_REMEMBER_ME            |
| UM_HYBRID_ROLE                   |
| UM_HYBRID_USER_ROLE              |
| UM_MODULE                        |
| UM_MODULE_ACTIONS                |
| UM_ORG                           |
| UM_ORG_ATTRIBUTE                 |
| UM_ORG_HIERARCHY                 |
| UM_ORG_PERMISSION                |
| UM_ORG_ROLE                      |
| UM_ORG_ROLE_GROUP                |
| UM_ORG_ROLE_PERMISSION           |
| UM_ORG_ROLE_USER                 |
| UM_PERMISSION                    |
| UM_PROFILE_CONFIG                |
| UM_ROLE                          |
| UM_ROLE_PERMISSION               |
| UM_SHARED_USER_ROLE              |
| UM_SYSTEM_ROLE                   |
| UM_SYSTEM_USER                   |
| UM_SYSTEM_USER_ROLE              |
| UM_TENANT                        |
| UM_USER                          |
| UM_USER_ATTRIBUTE                |
| UM_USER_PERMISSION               |
| UM_USER_ROLE                     |
| UM_UUID_DOMAIN_MAPPER            |
| WF_BPS_PROFILE                   |
| WF_REQUEST                       |
| WF_REQUEST_ENTITY_RELATIONSHIP   |
| WF_WORKFLOW                      |
| WF_WORKFLOW_ASSOCIATION          |
| WF_WORKFLOW_CONFIG_PARAM         |
| WF_WORKFLOW_REQUEST_RELATION     |
+----------------------------------+

Tables are created, but H2 files are getting created as well and these are empty.

sudo docker exec -it apim ls -l /home/wso2carbon/wso2am-4.6.0/repository/database/
total 6412
-rw-r--r-- 1 wso2carbon wso2 4624384 Feb 16 22:30 WSO2AM_DB.mv.db
-rw-r--r-- 1 wso2carbon wso2  143360 Feb 16 22:29 WSO2CARBON_DB.mv.db
-rw-r--r-- 1 wso2carbon wso2  159744 Feb 16 22:29 WSO2MB_DB.mv.db
-rw-r--r-- 1 wso2carbon wso2   24576 Oct 29 07:13 WSO2METRICS_DB.mv.db
-rw-r--r-- 1 wso2carbon wso2 1613824 Feb 16 22:30 WSO2SHARED_DB.mv.db

APIM Errors:

Start WSO2 Carbon server
JAVA_HOME environment variable is set to /opt/java/openjdk
CARBON_HOME environment variable is set to /home/wso2carbon/wso2am-4.6.0
Using Java memory options: -Xms3072m -Xmx8192m
[2026-02-17 00:28:39,661]  INFO - CarbonCoreActivator Starting WSO2 Carbon...
[2026-02-17 00:28:39,661]  INFO - CarbonCoreActivator Operating System : Linux 6.17.0-14-generic, amd64
[2026-02-17 00:28:39,661]  INFO - CarbonCoreActivator Java Home        : /opt/java/openjdk
[2026-02-17 00:28:39,661]  INFO - CarbonCoreActivator Java Version     : 21.0.5
[2026-02-17 00:28:39,661]  INFO - CarbonCoreActivator Java VM          : OpenJDK 64-Bit Server VM 21.0.5+11-LTS,Eclipse Adoptium
[2026-02-17 00:28:39,662]  INFO - CarbonCoreActivator Carbon Home      : /home/wso2carbon/wso2am-4.6.0
[2026-02-17 00:28:39,662]  INFO - CarbonCoreActivator Java Temp Dir    : /home/wso2carbon/wso2am-4.6.0/tmp
[2026-02-17 00:28:39,662]  INFO - CarbonCoreActivator User             : wso2carbon, en-US, Etc/UTC
[2026-02-17 00:28:39,954]  INFO - DefaultCryptoProviderComponent 'CryptoService.Secret' property has not been set. 'org.wso2.carbon.crypto.provider.SymmetricKeyInternalCryptoProvider' won't be registered as an internal crypto provider. Please set the secret if the provider needs to be registered.
[2026-02-17 00:28:40,289]  INFO - KafkaEventAdapterServiceDS Successfully deployed the Kafka output event adaptor service
[2026-02-17 00:28:42,552]  INFO - ServiceComponent Eventing Hub ServiceComponent is activated
[2026-02-17 00:28:43,174]  WARN - Digester Match [Server/Service/Engine/Host/Valve] failed to set property [maxDays] to []
[2026-02-17 00:28:43,711] ERROR - DefaultRealm nullType class java.lang.reflect.InvocationTargetException
org.wso2.carbon.user.core.UserStoreException: nullType class java.lang.reflect.InvocationTargetException
        at org.wso2.carbon.user.core.common.DefaultRealm.createObjectWithOptions(DefaultRealm.java:402) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.initializeObjects(DefaultRealm.java:231) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.init(DefaultRealm.java:136) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealmService.initializeRealm(DefaultRealmService.java:276) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealmService.<init>(DefaultRealmService.java:102) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealmService.<init>(DefaultRealmService.java:115) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.internal.Activator.startDeploy(Activator.java:80) ~[?:?]
        at org.wso2.carbon.user.core.internal.BundleCheckActivator.start(BundleCheckActivator.java:61) ~[?:?]
        at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:842) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at java.security.AccessController.doPrivileged(AccessController.java:571) ~[?:?]
        at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:834) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:791) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:1013) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:365) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.Module.doStart(Module.java:598) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.Module.start(Module.java:462) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$1.run(ModuleContainer.java:1820) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$2$1.execute(EquinoxContainerAdaptor.java:150) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1813) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1770) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1735) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1661) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:345) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
Caused by: java.lang.reflect.InvocationTargetException
        at jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:74) ~[?:?]
        at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502) ~[?:?]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:486) ~[?:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.createObjectWithOptions(DefaultRealm.java:356) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        ... 25 more
Caused by: org.wso2.carbon.user.core.UserStoreException: Error occurred while checking is existing domain : PRIMARY for tenant : -1234
        at org.wso2.carbon.user.core.util.UserCoreUtil.persistDomain(UserCoreUtil.java:926) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.AbstractUserStoreManager.persistDomain(AbstractUserStoreManager.java:9472) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.<init>(JDBCUserStoreManager.java:347) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.<init>(JDBCUserStoreManager.java:278) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.UniqueIDJDBCUserStoreManager.<init>(UniqueIDJDBCUserStoreManager.java:133) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62) ~[?:?]
        at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502) ~[?:?]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:486) ~[?:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.createObjectWithOptions(DefaultRealm.java:356) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        ... 25 more
Caused by: org.wso2.carbon.user.core.UserStoreException: DB error occurred while checking is existing domain : PRIMARY & tenant id : -1234
        at org.wso2.carbon.user.core.util.UserCoreUtil.isExistingDomain(UserCoreUtil.java:1092) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.util.UserCoreUtil.persistDomain(UserCoreUtil.java:915) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.AbstractUserStoreManager.persistDomain(AbstractUserStoreManager.java:9472) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.<init>(JDBCUserStoreManager.java:347) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.<init>(JDBCUserStoreManager.java:278) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.UniqueIDJDBCUserStoreManager.<init>(UniqueIDJDBCUserStoreManager.java:133) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62) ~[?:?]
        at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502) ~[?:?]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:486) ~[?:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.createObjectWithOptions(DefaultRealm.java:356) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        ... 25 more
Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "UM_DOMAIN" not found (this database is empty); SQL statement:
SELECT UM_DOMAIN_ID FROM UM_DOMAIN WHERE UM_DOMAIN_NAME=? AND UM_TENANT_ID=? [42104-232]
        at org.h2.message.DbException.getJdbcSQLException(DbException.java:514) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.message.DbException.getJdbcSQLException(DbException.java:489) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.message.DbException.get(DbException.java:223) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.message.DbException.get(DbException.java:199) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:7932) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:7916) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.readTableOrView(Parser.java:7895) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.readTablePrimary(Parser.java:1769) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.readTableReference(Parser.java:2249) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseSelectFromPart(Parser.java:2702) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseSelect(Parser.java:2810) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseQueryPrimary(Parser.java:2692) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseQueryTerm(Parser.java:2547) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseQueryExpressionBody(Parser.java:2526) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseQueryExpressionBodyAndEndOfQuery(Parser.java:2519) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseQueryExpression(Parser.java:2512) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseQuery(Parser.java:2479) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parsePrepared(Parser.java:610) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parse(Parser.java:581) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parse(Parser.java:556) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.prepareCommand(Parser.java:484) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.engine.SessionLocal.prepareLocal(SessionLocal.java:645) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.engine.SessionLocal.prepareCommand(SessionLocal.java:561) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1164) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:93) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:315) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:580) ~[?:?]
        at org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:131) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:75) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:75) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.interceptor.ConnectionState.invoke(ConnectionState.java:158) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.TrapException.invoke(TrapException.java:39) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:75) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:81) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at jdk.proxy6.$Proxy47.prepareStatement(Unknown Source) ~[?:?]
        at org.wso2.carbon.user.core.util.UserCoreUtil.isExistingDomain(UserCoreUtil.java:1075) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.util.UserCoreUtil.persistDomain(UserCoreUtil.java:915) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.AbstractUserStoreManager.persistDomain(AbstractUserStoreManager.java:9472) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.<init>(JDBCUserStoreManager.java:347) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.<init>(JDBCUserStoreManager.java:278) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.UniqueIDJDBCUserStoreManager.<init>(UniqueIDJDBCUserStoreManager.java:133) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62) ~[?:?]
        at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502) ~[?:?]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:486) ~[?:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.createObjectWithOptions(DefaultRealm.java:356) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        ... 25 more
[2026-02-17 00:28:43,711] ERROR - Activator Cannot start User Manager Core bundle
org.wso2.carbon.user.core.UserStoreException: Cannot initialize the realm.
        at org.wso2.carbon.user.core.common.DefaultRealmService.initializeRealm(DefaultRealmService.java:286) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealmService.<init>(DefaultRealmService.java:102) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealmService.<init>(DefaultRealmService.java:115) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.internal.Activator.startDeploy(Activator.java:80) ~[?:?]
        at org.wso2.carbon.user.core.internal.BundleCheckActivator.start(BundleCheckActivator.java:61) ~[?:?]
        at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:842) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at java.security.AccessController.doPrivileged(AccessController.java:571) ~[?:?]
        at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:834) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:791) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:1013) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:365) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.Module.doStart(Module.java:598) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.Module.start(Module.java:462) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$1.run(ModuleContainer.java:1820) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$2$1.execute(EquinoxContainerAdaptor.java:150) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1813) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1770) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1735) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1661) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:345) ~[org.eclipse.osgi_3.14.0.v20190517-1309.jar:?]
Caused by: org.wso2.carbon.user.core.UserStoreException: nullType class java.lang.reflect.InvocationTargetException
        at org.wso2.carbon.user.core.common.DefaultRealm.initializeObjects(DefaultRealm.java:323) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.init(DefaultRealm.java:136) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealmService.initializeRealm(DefaultRealmService.java:276) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        ... 22 more
Caused by: org.wso2.carbon.user.core.UserStoreException: nullType class java.lang.reflect.InvocationTargetException
        at org.wso2.carbon.user.core.common.DefaultRealm.createObjectWithOptions(DefaultRealm.java:402) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.initializeObjects(DefaultRealm.java:231) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.init(DefaultRealm.java:136) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealmService.initializeRealm(DefaultRealmService.java:276) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        ... 22 more
Caused by: java.lang.reflect.InvocationTargetException
        at jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:74) ~[?:?]
        at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502) ~[?:?]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:486) ~[?:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.createObjectWithOptions(DefaultRealm.java:356) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.initializeObjects(DefaultRealm.java:231) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.init(DefaultRealm.java:136) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealmService.initializeRealm(DefaultRealmService.java:276) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        ... 22 more
Caused by: org.wso2.carbon.user.core.UserStoreException: Error occurred while checking is existing domain : PRIMARY for tenant : -1234
        at org.wso2.carbon.user.core.util.UserCoreUtil.persistDomain(UserCoreUtil.java:926) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.AbstractUserStoreManager.persistDomain(AbstractUserStoreManager.java:9472) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.<init>(JDBCUserStoreManager.java:347) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.<init>(JDBCUserStoreManager.java:278) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.UniqueIDJDBCUserStoreManager.<init>(UniqueIDJDBCUserStoreManager.java:133) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62) ~[?:?]
        at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502) ~[?:?]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:486) ~[?:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.createObjectWithOptions(DefaultRealm.java:356) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.initializeObjects(DefaultRealm.java:231) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.init(DefaultRealm.java:136) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealmService.initializeRealm(DefaultRealmService.java:276) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        ... 22 more
Caused by: org.wso2.carbon.user.core.UserStoreException: DB error occurred while checking is existing domain : PRIMARY & tenant id : -1234
        at org.wso2.carbon.user.core.util.UserCoreUtil.isExistingDomain(UserCoreUtil.java:1092) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.util.UserCoreUtil.persistDomain(UserCoreUtil.java:915) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.AbstractUserStoreManager.persistDomain(AbstractUserStoreManager.java:9472) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.<init>(JDBCUserStoreManager.java:347) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.<init>(JDBCUserStoreManager.java:278) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.UniqueIDJDBCUserStoreManager.<init>(UniqueIDJDBCUserStoreManager.java:133) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62) ~[?:?]
        at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502) ~[?:?]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:486) ~[?:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.createObjectWithOptions(DefaultRealm.java:356) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.initializeObjects(DefaultRealm.java:231) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.init(DefaultRealm.java:136) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealmService.initializeRealm(DefaultRealmService.java:276) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        ... 22 more
Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "UM_DOMAIN" not found (this database is empty); SQL statement:
SELECT UM_DOMAIN_ID FROM UM_DOMAIN WHERE UM_DOMAIN_NAME=? AND UM_TENANT_ID=? [42104-232]
        at org.h2.message.DbException.getJdbcSQLException(DbException.java:514) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.message.DbException.getJdbcSQLException(DbException.java:489) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.message.DbException.get(DbException.java:223) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.message.DbException.get(DbException.java:199) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:7932) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.getTableOrViewNotFoundDbException(Parser.java:7916) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.readTableOrView(Parser.java:7895) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.readTablePrimary(Parser.java:1769) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.readTableReference(Parser.java:2249) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseSelectFromPart(Parser.java:2702) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseSelect(Parser.java:2810) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseQueryPrimary(Parser.java:2692) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseQueryTerm(Parser.java:2547) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseQueryExpressionBody(Parser.java:2526) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseQueryExpressionBodyAndEndOfQuery(Parser.java:2519) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseQueryExpression(Parser.java:2512) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parseQuery(Parser.java:2479) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parsePrepared(Parser.java:610) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parse(Parser.java:581) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.parse(Parser.java:556) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.command.Parser.prepareCommand(Parser.java:484) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.engine.SessionLocal.prepareLocal(SessionLocal.java:645) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.engine.SessionLocal.prepareCommand(SessionLocal.java:561) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1164) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:93) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:315) ~[h2-engine_2.3.232.wso2v1.jar:?]
        at jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:580) ~[?:?]
        at org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:131) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:75) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:75) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.interceptor.ConnectionState.invoke(ConnectionState.java:158) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.TrapException.invoke(TrapException.java:39) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:75) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:81) ~[jdbc-pool_9.0.65.wso2v1.jar:?]
        at jdk.proxy6.$Proxy47.prepareStatement(Unknown Source) ~[?:?]
        at org.wso2.carbon.user.core.util.UserCoreUtil.isExistingDomain(UserCoreUtil.java:1075) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.util.UserCoreUtil.persistDomain(UserCoreUtil.java:915) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.AbstractUserStoreManager.persistDomain(AbstractUserStoreManager.java:9472) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.<init>(JDBCUserStoreManager.java:347) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.JDBCUserStoreManager.<init>(JDBCUserStoreManager.java:278) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.jdbc.UniqueIDJDBCUserStoreManager.<init>(UniqueIDJDBCUserStoreManager.java:133) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62) ~[?:?]
        at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502) ~[?:?]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:486) ~[?:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.createObjectWithOptions(DefaultRealm.java:356) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.initializeObjects(DefaultRealm.java:231) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealm.init(DefaultRealm.java:136) ~[org.wso2.carbon.user.core_4.9.33.jar:?]
        at org.wso2.carbon.user.core.common.DefaultRealmService.initializeRealm(DefaultRealmService.java:276) ~[org.wso2.carbon.user.core_4.9.33.jar:?]

Version

4.6.0 Docker

Environment Details (with versions)

Running on Ubuntu 25.10 and Docker.
Front-ending with nginx, so I can have Swagger Editor and most importantly CodeGen enabled.

`
events {
worker_connections 1024;
}

http {
# Swagger and Editor block (HTTP 8080)

# Docker's internal DNS server
resolver 127.0.0.11 valid=60s;

server {
    listen 8080;
    location / {
        proxy_pass http://swagger-ui:8080/;
        proxy_set_header Host $host;
    }
    location /swagger-editor/ {
        proxy_pass http://swagger-editor:80/;
        proxy_set_header X-Forwarded-Prefix /swagger-editor;
    }
    # location ~ ^/(static|assets|editor-static|main\.css|swagger-editor\.js)/ {
    #    proxy_pass http://swagger-editor:80;
    # }
}

# Simplified APIM block (HTTPS 9443)
server {
    listen 9443 ssl;
    ssl_certificate     /etc/nginx/ssl/server.crt;
    ssl_certificate_key /etc/nginx/ssl/server.key;

    location / {

        # Standard Headers - Re-add the port to both
        proxy_set_header X-Forwarded-Host 192.168.0.54:9444;
        proxy_set_header Host 192.168.0.54:9444; 
        proxy_set_header X-Forwarded-Port 9444;
        proxy_set_header X-Forwarded-Proto https;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        # SSL Fixes for Self-Signed Backend
        proxy_ssl_verify off;
        proxy_ssl_session_reuse on;
        proxy_ssl_server_name on;
        
        # Timeout increase (WSO2 can be slow)
        proxy_read_timeout 90s;
        proxy_connect_timeout 90s;

        proxy_pass https://apim:9443;
        
        # Let WSO2 handle the redirects via deployment.toml settings
        proxy_redirect off;
    }  
}

}
`
docker-compose.yml

services:
  nginx:
    image: nginx:stable-alpine
    container_name: swagger-proxy
    ports:
      - "8180:8080"
      - "9444:9443" # APIM Management Console via Nginx
    volumes:
      - /home/nemo/openapi-docker/nginx.conf:/etc/nginx/nginx.conf:ro
      - /home/nemo/openapi-docker/ssl:/etc/nginx/ssl:ro #
    depends_on:
      - swagger-ui
      - swagger-editor
      - apim
    networks:
      - openapi-net

  # Existing Swagger Services
  spec-server:
    image: nginx:stable-alpine
    container_name: openapi-spec-server
    volumes:
      - ./specs:/usr/share/nginx/html:ro
    networks:
      - openapi-net

  swagger-ui:
    image: swaggerapi/swagger-ui:latest
    container_name: swagger-ui
    environment:
      - SWAGGER_JSON=http://spec-server/openapi.yaml
    networks:
      - openapi-net

  swagger-editor:
    image: swaggerapi/swagger-editor:latest
    container_name: swagger-editor
    environment:
      - BASE_URL=/swagger-editor
    networks:
      - openapi-net

  # New WSO2 Stack
  mariadb:
    image: mariadb:10.11
    container_name: mariadb
    environment:
      MARIADB_ROOT_PASSWORD: root_password
      MARIADB_DATABASE: WSO2AM_DB
      MARIADB_USER: wso2
      MARIADB_PASSWORD: wso2_password
    ports:
      - "3308:3306"
    volumes:
      - ./mariadb-data:/var/lib/mysql
    healthcheck:
      test: ["CMD", "mariadb-admin", "ping", "-h", "localhost", "-u", "root", "-proot_password"]
      interval: 5s
      timeout: 5s
      retries: 10
    networks:
      openapi-net:
        aliases:
          - db-server

  apim:
    image: wso2/wso2am:latest
    container_name: apim
    extra_hosts:
      - "192.168.0.54:127.0.0.1" # Forces internal calls to stay inside the container
      - "localhost:127.0.0.1"
    # Add this line to force the auto-schema creation
    # command: ["-Dsetup"]
    volumes:
      - ./apim-conf/deployment.toml:/home/wso2carbon/wso2am-4.x.0/repository/conf/deployment.toml:ro
      - ./apim-lib/mysql-connector-j-8.0.33.jar:/home/wso2carbon/wso2am-4.6.0/repository/components/lib/mysql-connector-j-8.0.33.jar:ro
    depends_on:
      mariadb:
        condition: service_healthy 
    environment:
      - JVM_MEM_OPTS=-Xms3072m -Xmx8192m 
      # - DATABASE_URL=jdbc:mysql://mariadb:3306/WSO2AM_DB?autoReconnect=true&useSSL=false
      # - DATABASE_USERNAME=wso2
      # - DATABASE_PASSWORD=wso2_password
      # ADD THIS LINE TO FORCE THE REGISTRATION LISTENER
      - WSO2_AM_INITIAL_SETUP=true 
    ports:
      - "8243:8243" # Gateway HTTPS
    networks:
      - openapi-net

networks:
  openapi-net:
    external: true

deployment.toml

[server]
# Change this from localhost to your server IP
hostname = "192.168.0.54"
internal_hostname = "apim" 
# Use 9444 because that is the port your browser is hitting on the host
proxy_port = 9444 
start_up_retry_count = 20

[apim.devportal]
url = "https://192.168.0.54:9444/devportal"

[apim.publisher]
url = "https://192.168.0.54:9444/publisher"

[apim.idp]
# This forces the internal client to trust all certs during the registration call
skip_certificate_verification = true

[apim.key_manager]
service_url = "https://apim:9443/services/"
type = "wso2am"
is_default_key_manager = true
# Add these two lines
username = "admin"
password = "admin"

# Add this specific block below it
[apim.key_manager.resident]
type = "wso2am"
service_url = "https://apim:9443/services/"
# Add these two lines
username = "admin"
password = "admin"

# IMPORTANT: Add this to fix the OIDC/OAuth2 redirect issues
[authentication.framework.extensions]

# This helps in some versions to ensure the redirect_uri is generated correctly
[transport.https.properties]
proxyPort = 9444

[database.apim_db]
type = "mysql"
url = "jdbc:mysql://db-server:3306/WSO2AM_DB?autoReconnect=true&useSSL=false&allowPublicKeyRetrieval=true"
username = "wso2"
password = "wso2_password"
driver = "com.mysql.cj.jdbc.Driver"

[database.shared_db]
type = "mysql"
url = "jdbc:mysql://db-server:3306/WSO2AM_DB?autoReconnect=true&useSSL=false&allowPublicKeyRetrieval=true"
username = "wso2"
password = "wso2_password"
driver = "com.mysql.cj.jdbc.Driver"

[database.identity_db]
type = "mysql"
url = "jdbc:mysql://db-server:3306/WSO2AM_DB?autoReconnect=true&useSSL=false&allowPublicKeyRetrieval=true"
username = "wso2"
password = "wso2_password"
driver = "com.mysql.cj.jdbc.Driver"

[database.local_reg_db]
type = "mysql"
url = "jdbc:mysql://db-server:3306/WSO2AM_DB?autoReconnect=true&useSSL=false&allowPublicKeyRetrieval=true"
username = "wso2"
password = "wso2_password"
driver = "com.mysql.cj.jdbc.Driver"

[realm_manager]
data_source = "shared_db"

[user_mgt]
database = "shared_db"

[user_store]
type = "database_unique_id"
database = "shared_db"

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions