WSO2 EI - Как параметризовать медиатор OAuth2 по умолчанию - PullRequest
0 голосов
/ 26 марта 2020

Я использую медиатор OAuth2 в WSO2 EI 6.6, и я хотел бы параметризовать параметры этого медиатора: user, pass, url. Я не могу установить это значение из свойств.

Вот xml этого посредника.

   <property name="ISurl" value="https://localhost:9445/services/"/>
         <property name="ISuser" value="admin"/>
         <property name="ISpass" value="admin"/>
         <oauthService remoteServiceUrl="$ctx:ISurl/" username="$ISuser" password="$ctx:ISpass"/>

Показана ошибка

Caused by: org.apache.axis2.AxisFault: The system cannot infer the transport information from the $ctx:ISurl/OAuth2TokenValidationService URL.
        at org.apache.axis2.description.ClientUtils.inferOutTransport(ClientUtils.java:86)

Есть ли способ параметризации этих параметров, чтобы избежать таких опций, как настройки кода во время компиляции?

1 Ответ

1 голос
/ 27 марта 2020

Поскольку это реализация посредника класса, она должна иметь поддержку выражений [1]. Следовательно, вы должны иметь возможность параметризовать эти параметры, используя свойства времени выполнения. Примерно так:

<class name="org.soasecurity.oauth2.scope.validator.OAuth2ScopeMediator">
            <property expression="$ctx:username" value="user"></property>
</class>

[1] - https://docs.wso2.com/display/EI660/Class+Mediator

...