0
Мой мул поток:мул полезной нагрузки JSON в БД значения возвращает нуль из REST
<flow name="classmappingFlow1" doc:name="classmappingFlow1">
<http:inbound-endpoint exchange-pattern="request-response" host="${hostname}" port="${port}" path="insertClass" connector-ref="ConnectorWithoutMuleSession" doc:name="HTTP"/>
<jersey:resources doc:name="REST">
<component class="com.mycompany.mulesoft.rest.AccountMappingService"/>
</jersey:resources>
<json:json-to-object-transformer doc:name="JSON to Object"/>
<logger message="Payload======#[payload]" level="INFO" doc:name="Logger"/>
<logger message="=====Company===#[payload.Company]" level="INFO" doc:name="Logger"/>
<db:insert config-ref="Oracle_Configuration" doc:name="Database">
<db:parameterized-query><![CDATA[insert into SIAS_CONFIGURATION values(1, 1,1234,#[payload.Company],'Y','N','Y','you',sysdate,'you',sysdate)]]></db:parameterized-query>
</db:insert>
</flow>
консоли:
Payload======[{"Company":"KLM","Class":"Y","Location":"N","Department":"Y","EmplId":"1234"}]
=====Company===null
JSON данных:
[
{
"Company":"KLM",
"Class":"Y",
"Location":"N",
"Department":"Y",
"EmplId":"1234"
}
]
Rest Компонент:
@POST
@Path("/setClass")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public String classSettings(@Payload String content){
return content;
}
Вопрос: Я получаю нулевые значения и данные (пустой), вставленный дБ
Я попробовал это, didnot работы. Данные уже присутствуют в полезной нагрузке, т. Е. Отображаются в первом регистраторе: Полезная нагрузка ====== – bekur
Если вы не используете ** returnClass = "java.util.List" ** в ** json: json-to -объект-трансформатор ** .. вы не сможете получить значение в ** # [payload.Company] ** ... Данные отображаются в первом журнале, потому что в журнале, который вы используете ** # [message.payload] ** и, следовательно, отображается вся полезная нагрузка ... но так как вы не использовали возвращаемый класс ** java.util.List **, вы не получите никакого значения во втором журнале ** # [loadload.Company] ** и он будет показывать нуль всегда –
Да, правильно, но мой вход был массивом json-данных, измененным # [payload [0] .Company], чтобы получить данные из массива. это была причина, по которой данные ранее не печатались. – bekur