Использование WSO2AM-2.1.0-update12 (тег carbon-apomgt v6.2.108) нормально работает с mysql.Мы намереваемся переключить базовую базу данных на Oracle DB (насколько мне известно, 11g), выглядит просто.
При создании API apim выдает SQLException
ORA-00907: missing right parenthesis
, в котором мы проследили исключение
org.wso2.carbon.apimgt.impl.dao.ApiMgtDAO:7652
при выполнении следующего запроса:
SELECT
A.SCOPE_ID, A.NAME, A.DISPLAY_NAME,
A.DESCRIPTION, C.SCOPE_BINDING
FROM
((IDN_OAUTH2_SCOPE AS A INNER JOIN AM_API_SCOPES AS B ON A.SCOPE_ID = B.SCOPE_ID)
INNER JOIN IDN_OAUTH2_SCOPE_BINDING AS C ON B.SCOPE_ID = C.SCOPE_ID )
WHERE B.API_ID = 1;
Выполнение самого запроса к базе данных APIM действительно воспроизводит исключение, поэтому код не был должным образом протестирован.Для некоторых настроек мы скорее пытаемся исправить код, если это возможно, чем переходить на более новую версию (где у нас нет уверенности, что проблема исправлена или наши настройки будут работать)
Я подозреваю, что запрос не был проверен навсе и правильный запрос может выглядеть как
SELECT
A.SCOPE_ID, A.NAME, A.DISPLAY_NAME,
A.DESCRIPTION, C.SCOPE_BINDING
FROM
IDN_OAUTH2_SCOPE A INNER JOIN AM_API_SCOPES B ON A.SCOPE_ID = B.SCOPE_ID
INNER JOIN IDN_OAUTH2_SCOPE_BINDING C ON B.SCOPE_ID = C.SCOPE_ID
WHERE B.API_ID = 1;
Я хотел бы проверить и исправить меня, если запрос синтаксически и семантически не эквивалентен