3つの属性を持つJSONリクエストを受け取りました。属性の1つは、base64の文字列形式のコンテンツです。このリクエストを受け取った後、Salesforceコネクタを使用してSalesforce添付ファイルを作成しています。DataWeave Transformメッセージ変換Cloudhubにデプロイされたときに8192バイト
私はローカルのAnypoint Studioでこれをテストすると問題はありませんが、Cloudhubに展開した後、fileContent(画像コンテンツ)が8192バイトに切り詰められ、添付ファイルが破損していると表示されます。
私は、メッセージ内容の長さが38820(ローカルおよびCloudhubの両方)であるため、APIがコンテンツを受信している見ることができる、とのメッセージがメッセージ変換後に迷子にされたように見える、とコードは次のとおりです。
<processor-chain doc:name="Processor Chain">
<dw:transform-message doc:name="Transform Message">
<dw:set-payload><![CDATA[%dw 1.0
%output application/java
---
{
accountId : payload.accountId,
name : 'MyProfilePicture',
ContentType: payload.contentType,
fileContent : payload.fileContent
}]]></dw:set-payload>
</dw:transform-message>
<set-session-variable variableName="accountId" value="#[payload.accountId]" doc:name="Session Variable - accountId"/>
<set-session-variable variableName="contentType" value="#[payload.ContentType]" doc:name="Session Variable - contentType"/>
<logger message="payload.fileContent Before Conversion size #[payload.fileContent.length()], data:#[payload.fileContent] " level="INFO" doc:name="Logger"/>
<set-session-variable variableName="fileContent" value="#[(org.apache.commons.codec.binary.Base64.decodeBase64(payload.fileContent))]" mimeType="binary/octet-stream" doc:name="Session Variable - fileContent"/>
<dw:transform-message metadata:id="1676949a-75ba-4e51-82ac-b5788a8e87dc" doc:name="Transform Message">
<dw:input-payload/>
<dw:set-payload><![CDATA[%dw 1.0
%output application/java
---
[{
Name: 'MyProfilePicture',
ParentId: sessionVars.accountId,
ContentType: sessionVars.contentType,
Body: sessionVars.fileContent
}]]]></dw:set-payload>
</dw:transform-message>
<logger message="Payload after Transform Message: #[payload]" level="INFO" doc:name="Logger"/>
<sfdc:create config-ref="Salesforce__Cfg" type="Attachment" doc:name="Salesforce">
<sfdc:objects ref="#[payload]"/>
</sfdc:create>
</processor-chain>
誰でもこれを助けてくれますか? Cloudhubにデプロイするときに8192バイトしか処理しないのはなぜですか?
おかげで、
トーマス