Мне нужно внести некоторые изменения в существующий поток мулов с небольшими знаниями, и хотя я потратил несколько дней на чтение онлайн-документации и возможных решений этого, я не могу понять, почему этот запрос не работает, поскольку у меня также есть больше динамических запросов в моем поток с параметрами # [xxx]. Запрос такой:
select times from user_request where
ip_address=SUBSTR(#message.inboundProperties.MULE_REMOTE_CLIENT_ADDRESS],2,INSTR(#[message.inboundProperties.MULE_REMOTE_CLIENT_ADDRESS], ':')-2)
and request_date=CAST(CURRENT_DATE as varchar2(8))
И ошибка, которую я получил:
Сообщение: Индекс: 0 (java.lang.IndexOutOfBoundsException). Полезная нагрузка: {fecha_solicitud = 2016-06-22, moneda = USD, client_id = RIVERA, user_ip = 127.0.0.1, request_times = 0} Тип полезной нагрузки: java.util.LinkedHashMap Элемент: / OANDAFlow / processors / 3 @ oanda: oanda. xml: 126 Элемент XML: выберите время из user_request, где ip_address = SUBSTR (# [message.inboundProperties.MULE_REMOTE_CLIENT_ADDRESS], 2, INSTR (# [message.inboundProperties.MULE_REMOTE_CLIENT_ADDRESS], ':') - 2 request (CASTRENT_DATE) varchar2 (8))>
Примечание. Преобразование даты в varchar происходит потому, что столбец request_date имеет значение varchar.
Я пробовал этот запрос непосредственно в разработчике Oracle SQL, заменив #[message.inboundProperties.MULE_REMOTE_CLIENT_ADDRESS]
на и пример, например /127.0.0.1:55406
, и он работал нормально, так почему через mule не работает ???