вторник, 21 октября 2014 г.

Смотрим в базу

Работа через подключение к базе, а не через приложение - это, конечно, грязный хак и костыль.

Подключился к MS SQL Server из медиатора DBLookup

Приблизительно так:

<dblookup xmlns="http://ws.apache.org/ns/synapse">
   <connection>
      <pool>
         <password>wso2esb</password>
         <user>wso2esb</user>
         <url>jdbc:jtds:sqlserver://192.168.4.185:1433/D10Task2;useLOBs=false</url>
         <driver>net.sourceforge.jtds.jdbc.Driver</driver>
      </pool>
   </connection>
   <statement>
      <sql>
         <![CDATA[SELECT [Description] FROM [Tasks] WHERE [TaskId]=10339;]]></sql>
         <result name="F1TaskDescription" column="Description"></result>
      </statement>
   </dblookup>

О тонкостях настройки базы данных можно почитать в том месте документации, где говорят о подключении MS SQL Server к Карбону вместо H2.

Великое тайное знание заключается в том, что что нужно скачать драйвер базы по указанной там ссылке и положить в папку <PRODUCT_HOME>/repository/conf/datasources/. Сервисную шину после этого необходимо перезапустить.

Важно указать в строке подключения к MS SQL Server параметр ";useLOBs=false", чтобы драйвер базы данных возвращал строки, а не ссылки на объекты для некоторых типов полей.
http://stackoverflow.com/questions/2130375/error-with-varcharmax-column-when-using-net-sourceforge-jtds-jdbc-driver



Комментариев нет:

Отправить комментарий