Mulesoft 개발을 처음 접했습니다. 최근에 쉼표로 구분 된 CSV 파일에서 일부 값을 읽고 제공된 값으로 REST API를 호출하는 MuleESB 응용 프로그램을 개발하라는 요청을 받았습니다. 내가 제대로하고 있는지 잘 모르는지 모르겠다. 제대로 지내고 있는지 정확히 알지 못한다. WARN 2016-08-03 02 : 39 : 49,209 [creditsFlow.stage1.02] org.mule.routing. ExpressionSplitter : 분배기가 결과를 반환하지 않았습니다. 이것이 예상되지 않으면 분할 표현을 확인하십시오. 다음에 아무 것도 나타나지 않습니다. https://xx.xx.com/server/CreditPost/views/CreditPost?ID=12345678&CompletionDt=2017-08-03&CourseNbr=90000001MuleESB가 REST API를 사용합니다.
아래는 내 MuleESB 코드의 조각입니다 :
<flow name="creditsFlow">
<file:inbound-endpoint path="C:\Users\kteo1\Downloads\Inbound" responseTimeout="10000" metadata:id="a67520d0-f60d-4b5c-9fc8-3578d6c6434d" doc:name="input file" mimeType="application/csv">
<file:filename-regex-filter pattern="credits_(?:(?!\.csv)(?:.|\n))*\.csv" caseSensitive="true"/>
</file:inbound-endpoint>
<dw:transform-message metadata:id="0e395c12-6af5-4894-b9c2-f7642816f8d3" doc:name="CSV to XML">
<dw:input-payload doc:sample="list_credits.csv"/>
<dw:set-payload><![CDATA[%dw 1.0
%output application/xml
---
{
credits: {
(payload map ((payload01 , indexOfPayload01) -> {
credit: {
ID: payload01.ID,
CourseNbr: payload01.CourseNbr,
CompletionDt: payload01.CompletionDt as :string
}
}))
}
}]]></dw:set-payload>
</dw:transform-message>
<json:xml-to-json-transformer doc:name="XML to JSON"/>
<logger message="#[message.payload]" level="INFO" doc:name="Logger"/>
<json:json-to-object-transformer doc:name="JSON to Object"/>
<set-variable variableName="totalCredits" value="#[json:credits]" doc:name="totalCredits"/>
<set-variable variableName="creditsArrayList" value="#[new java.util.ArrayList()]" doc:name="creditsArrayList"/>
<foreach collection="#[json:credit]" doc:name="For Each" >
<logger message="#[json:ID]" level="INFO" doc:name="Logger"/>
<http:request config-ref="HTTP_Request_Configuration" path="/server/CreditPost/views/CreditPost?ID={ID}&CompletionDt={CompletionDt}&CourseNbr={CourseNbr}" method="GET" doc:name="HTTP">
<http:request-builder>
<http:uri-param paramName="ID" value="#[json:ID]"/>
<http:uri-param paramName="CompletionDt" value="#[json:CompletionDt]"/>
<http:uri-param paramName="CourseNbr" value="#[json:CourseNbr]"/>
</http:request-builder>
</http:request>
</foreach>
</flow>
은 알려 주시기 바랍니다
은 보통이 우리가 REST API를 호출하는 방법입니다.
귀하의 조언에 감사드립니다. 지금 나는 HTTP 요청을 보내는 _Error 인 또 다른 오류에 부딪 혔다. 메시지 페이로드 유형은 LinkedHashMap_입니다. 나는 다른 것을 시도하고있을 때이 오류를 보았지만 그것이 무엇을 기대하고 왜 효과가 없는지 이해하지 못한다. –
조언 해 주시겠습니까? –
최근 mule-config와 테스트하려는 데이터를 게시 해주십시오. – AnupamBhusari