Hi Malaka,

When I use "<messageBuilder contentType="application/file"
class="org.wso2.carbon.relay.BinaryRelayBuilder"/>" instead of
"<messageBuilder contentType="application/file"
class="org.apache.axis2.format.BinaryBuilder"/>", it is working fine.

Vivekananthan Sivanayagam
Associate Software Engineer | WSO2
E:[email protected]
M:+94752786138

On Wed, Nov 23, 2016 at 3:26 PM, Vivekananthan Sivanayagam <
[email protected]> wrote:

> Hi Makala,
>
> I tried the given config and getting the following error.
>
> [2016-11-23 15:00:47,188] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "POST /services/fileconnectorRead HTTP/1.1[\r][\n]"
> [2016-11-23 15:00:47,189] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "Host: vive.example.com:8280[\r][\n]"
> [2016-11-23 15:00:47,189] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "Connection: keep-alive[\r][\n]"
> [2016-11-23 15:00:47,189] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "Content-Length: 115[\r][\n]"
> [2016-11-23 15:00:47,189] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "Postman-Token: 1cdab400-d939-ad00-29ca-2d65a4db15fb[\r][\n]"
> [2016-11-23 15:00:47,189] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "Cache-Control: no-cache[\r][\n]"
> [2016-11-23 15:00:47,189] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "Origin: chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop[\r][\n]"
> [2016-11-23 15:00:47,190] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML,
> like Gecko) Chrome/54.0.2840.100 Safari/537.36[\r][\n]"
> [2016-11-23 15:00:47,190] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "Content-Type: application/json[\r][\n]"
> [2016-11-23 15:00:47,190] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "Accept: */*[\r][\n]"
> [2016-11-23 15:00:47,190] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "Accept-Encoding: gzip, deflate[\r][\n]"
> [2016-11-23 15:00:47,190] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "Accept-Language: en-US,en;q=0.8[\r][\n]"
> [2016-11-23 15:00:47,190] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "Cookie: exchangecookie=3220c865f3bc4a0981edd476a839a747[\r][\n]"
> [2016-11-23 15:00:47,190] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "[\r][\n]"
> [2016-11-23 15:00:47,190] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "{[\n]"
> [2016-11-23 15:00:47,190] DEBUG - wire HTTP-Listener I/O dispatcher-6 >> "
>     "source":"/home/vive/Desktop/FILE/abc.txt",[\n]"
> [2016-11-23 15:00:47,190] DEBUG - wire HTTP-Listener I/O dispatcher-6 >> "
>     "contentType":"application/file",[\n]"
> [2016-11-23 15:00:47,190] DEBUG - wire HTTP-Listener I/O dispatcher-6 >> "
>     "streaming":"true"[\n]"
> [2016-11-23 15:00:47,190] DEBUG - wire HTTP-Listener I/O dispatcher-6 >>
> "}"
> [2016-11-23 15:00:47,195] ERROR - SynapseJsonPath #stringValueOf. Error
> evaluating JSON Path <$.address>. Returning empty result. Error>>> invalid
> path
> [2016-11-23 15:00:47,199] ERROR - SynapseJsonPath #stringValueOf. Error
> evaluating JSON Path <$.append>. Returning empty result. Error>>> invalid
> path
> [2016-11-23 15:00:47,206] ERROR - SynapseJsonPath #stringValueOf. Error
> evaluating JSON Path <$.address>. Returning empty result. Error>>> invalid
> path
> [2016-11-23 15:00:47,207] ERROR - SynapseJsonPath #stringValueOf. Error
> evaluating JSON Path <$.append>. Returning empty result. Error>>> invalid
> path
> [2016-11-23 15:00:47,208] ERROR - SynapseJsonPath #stringValueOf. Error
> evaluating JSON Path <$.source>. Returning empty result. Error>>> invalid
> path
> [2016-11-23 15:00:47,208] ERROR - SynapseJsonPath #stringValueOf. Error
> evaluating JSON Path <$.contentType>. Returning empty result. Error>>>
> invalid path
> [2016-11-23 15:00:47,209] ERROR - SynapseJsonPath #stringValueOf. Error
> evaluating JSON Path <$.streaming>. Returning empty result. Error>>>
> invalid path
> [2016-11-23 15:00:47,214] ERROR - FileRead Could not find file with URI ""
> because it is a relative path, and no base URI was provided.
> [2016-11-23 15:00:47,228]  INFO - LogMediator To: 
> /services/001fileconnectorRead,
> MessageID: urn:uuid:f863b8d3-3a50-495c-bae1-2198715a0926, Direction:
> request, MESSAGE = Executing default 'fault' sequence, ERROR_CODE = 0,
> ERROR_MESSAGE = Error occured in the mediation of the class mediator,
> Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Body><axis2ns6:binary
> xmlns:axis2ns6="http://ws.apache.org/commons/ns/payload";>
> SSBjaGVja2VkIHRoZSBmb2xsb3dpbmcgc2NlbmFyaW9bMV0gd2l0aCBzdHJl
> YW1pbmcgZW5hYmxlLCBJIGFtIGFibGUgc3VjY2VzcyB3aXRoIHRoZSByZXNw
> b25zZSBmaWxlLiBJIHRyaWVkIDRHQiBmaWxlIHRvIHNlbmQgLCBpdCBpcyB3
> b3JraW5nLiBXaGVuIEkgY2hlY2tlZCBvbmx5IEZpbGVSZWFkIG9wZXJhdGlv
> biB3aXRoIHN0cmVhbWluZywgSSB3YXMgYWJsZSB0byByZWFkIHRoZSBjb250
> ZW50IGluIHRoZSBtZXNzYWdlIGNvbnRleHQgYnV0IGNvdWxkIG5vdCBidWls
> ZCBpdCB0aGUgdXNpbmcgRGF0YVNvdXJjZU1lc3NhZ2VCdWlsZGVyIHdpdGgg
> Y29udGVudCB0eXBlICJhcHBsaWNhdGlvbi9maWxlIiBhbmQgc2hvd2luZyB0
> aGUgZm9sbG93aW5nIGVycm9yLiAK</axis2ns6:binary></soapenv:
> Body></soapenv:Envelope>
> [2016-11-23 15:00:47,228] ERROR - PassThroughHttpSender Failed to submit
> the response
> java.lang.ClassCastException: com.sun.proxy.$Proxy21 cannot be cast to
> org.wso2.carbon.relay.StreamingOnRequestDataSource
> at org.wso2.carbon.relay.ExpandingMessageFormatter.
> findAndWrite2OutputStream(ExpandingMessageFormatter.java:185)
> at org.wso2.carbon.relay.ExpandingMessageFormatter.writeTo(
> ExpandingMessageFormatter.java:100)
> at org.apache.synapse.transport.passthru.PassThroughHttpSender.
> submitResponse(PassThroughHttpSender.java:555)
> at org.apache.synapse.transport.passthru.PassThroughHttpSender.invoke(
> PassThroughHttpSender.java:264)
> at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
> at org.apache.synapse.core.axis2.Axis2Sender.sendBack(
> Axis2Sender.java:222)
> at org.apache.synapse.mediators.builtin.RespondMediator.
> mediate(RespondMediator.java:35)
> at org.apache.synapse.mediators.AbstractListMediator.mediate(
> AbstractListMediator.java:97)
> at org.apache.synapse.mediators.AbstractListMediator.mediate(
> AbstractListMediator.java:59)
> at org.apache.synapse.mediators.base.SequenceMediator.mediate(
> SequenceMediator.java:158)
> at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(
> ProxyServiceMessageReceiver.java:210)
> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
> at org.apache.synapse.transport.passthru.ServerWorker.
> processNonEntityEnclosingRESTHandler(ServerWorker.java:325)
> at org.apache.synapse.transport.passthru.ServerWorker.
> processEntityEnclosingRequest(ServerWorker.java:371)
> at org.apache.synapse.transport.passthru.ServerWorker.run(
> ServerWorker.java:151)
> at org.apache.axis2.transport.base.threads.NativeWorkerPool$
> 1.run(NativeWorkerPool.java:172)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(
> ThreadPoolExecutor.java:1145)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(
> ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> [2016-11-23 15:00:47,230] ERROR - Axis2Sender Accept:*/*,Accept-Encoding:gzip,
> deflate,Accept-Language:en-US,en;q=0.8,Cache-Control:no-
> cache,Content-Type:application/json,Cookie:exchangecookie=
> 3220c865f3bc4a0981edd476a839a747,Host:vive.example.com:8280,
> Origin:chrome-extension://fhbjgbiflinjbdggehcddcbncdddom
> op,Postman-Token:1cdab400-d939-ad00-29ca-2d65a4db15fb,<?xml version='1.0'
> encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.
> xmlsoap.org/soap/envelope/"><soapenv:Body><axis2ns6:binary
> xmlns:axis2ns6="http://ws.apache.org/commons/ns/payload";>
> SSBjaGVja2VkIHRoZSBmb2xsb3dpbmcgc2NlbmFyaW9bMV0gd2l0aCBzdHJl
> YW1pbmcgZW5hYmxlLCBJIGFtIGFibGUgc3VjY2VzcyB3aXRoIHRoZSByZXNw
> b25zZSBmaWxlLiBJIHRyaWVkIDRHQiBmaWxlIHRvIHNlbmQgLCBpdCBpcyB3
> b3JraW5nLiBXaGVuIEkgY2hlY2tlZCBvbmx5IEZpbGVSZWFkIG9wZXJhdGlv
> biB3aXRoIHN0cmVhbWluZywgSSB3YXMgYWJsZSB0byByZWFkIHRoZSBjb250
> ZW50IGluIHRoZSBtZXNzYWdlIGNvbnRleHQgYnV0IGNvdWxkIG5vdCBidWls
> ZCBpdCB0aGUgdXNpbmcgRGF0YVNvdXJjZU1lc3NhZ2VCdWlsZGVyIHdpdGgg
> Y29udGVudCB0eXBlICJhcHBsaWNhdGlvbi9maWxlIiBhbmQgc2hvd2luZyB0
> aGUgZm9sbG93aW5nIGVycm9yLiAK</axis2ns6:binary></soapenv:Body></soapenv:Envelope>
> Unexpected error sending message back
> org.apache.axis2.AxisFault: Failed to submit the response
> at org.apache.synapse.transport.passthru.PassThroughHttpSender.
> handleException(PassThroughHttpSender.java:613)
> at org.apache.synapse.transport.passthru.PassThroughHttpSender.invoke(
> PassThroughHttpSender.java:266)
> at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
> at org.apache.synapse.core.axis2.Axis2Sender.sendBack(
> Axis2Sender.java:222)
> at org.apache.synapse.mediators.builtin.RespondMediator.
> mediate(RespondMediator.java:35)
> at org.apache.synapse.mediators.AbstractListMediator.mediate(
> AbstractListMediator.java:97)
> at org.apache.synapse.mediators.AbstractListMediator.mediate(
> AbstractListMediator.java:59)
> at org.apache.synapse.mediators.base.SequenceMediator.mediate(
> SequenceMediator.java:158)
> at org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(
> ProxyServiceMessageReceiver.java:210)
> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
> at org.apache.synapse.transport.passthru.ServerWorker.
> processNonEntityEnclosingRESTHandler(ServerWorker.java:325)
> at org.apache.synapse.transport.passthru.ServerWorker.
> processEntityEnclosingRequest(ServerWorker.java:371)
> at org.apache.synapse.transport.passthru.ServerWorker.run(
> ServerWorker.java:151)
> at org.apache.axis2.transport.base.threads.NativeWorkerPool$
> 1.run(NativeWorkerPool.java:172)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(
> ThreadPoolExecutor.java:1145)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(
> ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: java.lang.ClassCastException: com.sun.proxy.$Proxy21 cannot be
> cast to org.wso2.carbon.relay.StreamingOnRequestDataSource
> at org.wso2.carbon.relay.ExpandingMessageFormatter.
> findAndWrite2OutputStream(ExpandingMessageFormatter.java:185)
> at org.wso2.carbon.relay.ExpandingMessageFormatter.writeTo(
> ExpandingMessageFormatter.java:100)
> at org.apache.synapse.transport.passthru.PassThroughHttpSender.
> submitResponse(PassThroughHttpSender.java:555)
> at org.apache.synapse.transport.passthru.PassThroughHttpSender.invoke(
> PassThroughHttpSender.java:264)
> ... 15 more
>
>
> Vivekananthan Sivanayagam
> Associate Software Engineer | WSO2
> E:[email protected]
> M:+94752786138
>
> On Wed, Nov 23, 2016 at 7:49 AM, Malaka Silva <[email protected]> wrote:
>
>> Hi Vivekananthan,
>>
>> Seems your config is invalid. try the following.
>>
>> Basically we should support both streaming and no streaming scenarios
>> with file connector.
>>
>> Also make a jira and give a fix.
>>
>> ​
>> <?xml version="1.0" encoding="UTF-8"?>
>> <proxy xmlns="http://ws.apache.org/ns/synapse";
>>        name="fileconnectorRead"
>>        startOnLoad="true"
>>        statistics="disable"
>>        trace="disable"
>>        transports="https,http">
>>    <target>
>>       <inSequence>
>>          <property expression="json-eval($.address)" name="address"/>
>>          <property expression="json-eval($.append)" name="append"/>
>>          <property expression="json-eval($.source)" name="source"/>
>>          <property expression="json-eval($.contentType)"
>> name="contentType"/>
>>          <property expression="json-eval($.streaming)" name="streaming"/>
>>          <fileconnector.read>
>>             <source>{$ctx:source}</source>
>>             <contentType>{$ctx:contentType}</contentType>
>>             <streaming>{$ctx:streaming}</streaming>
>>          </fileconnector.read>
>>          <respond/>
>>       </inSequence>
>>    </target>
>>    <description/>
>> </proxy>
>> ---------- Forwarded message ----------
>> From: Vivekananthan Sivanayagam <[email protected]>
>> Date: Tue, Nov 22, 2016 at 6:57 PM
>> Subject: File read with enabling streaming
>> To: Malaka Silva <[email protected]>
>>
>>
>> Hi ,
>>
>> I checked the following scenario[1] with streaming enable, I am able
>> success with the response file. I tried 4GB file to send , it is working.
>> When I checked only FileRead operation with streaming, I was able to read
>> the content in the message context but could not build it the using 
>> DataSourceMessageBuilder
>> with content type "application/file" and showing the following error.
>>
>> Error
>>
>> PassThroughHttpSender Failed to submit the response
>> java.lang.ClassCastException: com.sun.proxy.$Proxy21 cannot be cast to
>> org.wso2.carbon.relay.StreamingOnRequestDataSource
>>
>>
>> [1] Proxy:
>>
>> ​​
>> <?xml version="1.0" encoding="UTF-8"?>
>> <proxy xmlns="http://ws.apache.org/ns/synapse";
>>        name="fileconnectorRead"
>>        startOnLoad="true"
>>        statistics="disable"
>>        trace="disable"
>>        transports="https,http">
>>    <target>
>>       <inSequence>
>>          <property name="OUT_ONLY" value="true"/>
>>          <property action="remove"
>>                    name="ClientApiNonBlocking"
>>                    scope="axis2"
>>                    value="true"/>
>>          <property expression="json-eval($.address)" name="address"/>
>>          <property expression="json-eval($.append)" name="append"/>
>>          <property expression="json-eval($.source)" name="source"/>
>>          <property expression="json-eval($.contentType)"
>> name="contentType"/>
>>          <property expression="json-eval($.streaming)" name="streaming"/>
>>          <fileconnector.read>
>>             <source>{$ctx:source}</source>
>>             <contentType>{$ctx:contentType}</contentType>
>>             <streaming>{$ctx:streaming}</streaming>
>>          </fileconnector.read>
>>          <fileconnector.send>
>>             <address>{$ctx:address}</address>
>>             <append>{$ctx:append}</append>
>>          </fileconnector.send>
>>          <respond/>
>>       </inSequence>
>>    </target>
>>    <description/>
>> </proxy>
>>
>> Request:
>>
>> {
>>      "source":"/media/vive/vives/response.txt",
>>      "contentType":"application/file",
>>      "streaming":"true",
>>      "address":"/home/vive/Desktop/FILE/File002",
>>      "append":"true"
>> }
>>
>>
>> Vivekananthan Sivanayagam
>> Associate Software Engineer | WSO2
>> E:[email protected]
>> M:+94752786138
>>
>>
>>
>> --
>>
>> Best Regards,
>>
>> Malaka Silva
>> Senior Technical Lead
>> M: +94 777 219 791
>> Tel : 94 11 214 5345
>> Fax :94 11 2145300
>> Skype : malaka.sampath.silva
>> LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77
>> Blog : http://mrmalakasilva.blogspot.com/
>>
>> WSO2, Inc.
>> lean . enterprise . middleware
>> https://wso2.com/signature
>> http://www.wso2.com/about/team/malaka-silva/
>> <http://wso2.com/about/team/malaka-silva/>
>> https://store.wso2.com/store/
>>
>> Don't make Trees rare, we should keep them with care
>>
>
>
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to