Nano Hash - криптовалюты, майнинг, программирование

Как создать глобальную переменную в Wso2 ESB

Я новичок в WSO2 esb, работаю с wso2esb 4.7.0, wso2dss 3.0 .0.

Я хочу создать глобальную переменную и вызывать эту переменную в своих прокси-сервисах.

Мой прокси показан ниже

<proxy xmlns="http://ws.apache.org/ns/synapse" name="Get_details" transports="https,http" statistics="disable" trace="disable" startOnLoad="true">
 <target endpoint="Endpoint">
  <inSequence>
     <property name="messageType" value="application/json" scope="axis2" type="STRING"/>        
     <property name="username" expression="//username/text()" scope="default" type="STRING"/>
     <property name="password" expression="//password/text()" scope="default" type="STRING"/>
     <log>
        <property name="username" expression="get-property('username')"/>
        <property name="password" expression="get-property('password')"/>
     </log>
     <payloadFactory media-type="xml">
        <format>
           <p:select_login_op xmlns:p="http://ws.wso2.org/dataservice">
              <p:username>$1</p:username>
              <p:password>$2</p:password>
           </p:select_login_op>
        </format>
        <args>
           <arg evaluator="xml" expression="get-property('username')"/>
           <arg evaluator="xml" expression="get-property('password')"/>
        </args>
         </payloadFactory>
         <property name="Get"       expression="fn:concat('http://192.168.1.201:9764/services/', 'Get_details')"/>
            <header name="To" expression="get-property('Get')"/>
        <send>
        <endpoint>
           <default/>
        </endpoint>
     </send>
      </inSequence>
       <outSequence>
     <send/>
      </outSequence>
   </target>
   <description/>
   </proxy> 

В приведенном выше прокси-сервере я использовал функцию concat для объединения моего URL-адреса и имени службы, здесь я хочу использовать переменную вместо URL-адреса, создав глобальную переменную и назначив URL-адрес как ее значение и используя эту переменную в функция concat вместо URL в этом прокси, а также в нескольких других прокси.

Как это может быть сделано?

11.11.2014

Ответы:


1

Вы можете сохранить это значение как локальную запись реестра и использовать его изнутри. прокси-сервисы. Например, если у меня есть локальная запись под названием «MyURL», я могу использовать ее, как показано ниже.

synapse:get-property('MyURL')

Другой пример;

 <log level="custom">
    <property name="MyURL" expression="synapse:get-property('MyURL')"/>
 </log>
11.11.2014

2

Пример для ESB 5.0.0:

Предположим, у нас есть текущее время в свойстве с именем nowTimeProp.

<property name="nowTimeProp" expression="get-property('SYSTEM_TIME')" scope="default"/>

Сохранение свойства в реестре:

<property name="conf:/resource/yourResourceName" type="STRING" expression="$ctx:nowTimeProp" scope="registry"/>

Позже мы хотели бы прочитать свойство из реестра:

<property name="lastStoredInstantProp" expression="get-property('registry', 'conf:/resource/yourResourceName')"/>
11.05.2017
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..