Skip to Content
0

Fiori exception "no handler for data"

Oct 31, 2017 at 09:56 AM

176

avatar image
Former Member

I have built a gateway service which successfully sends a pdf file. I used the media functionality and the GET_STREAM method to do this. It works in the Gateway cleint and when called from a browser.

However when I call the read method of the service from UI5, using the exact same syntax that works in the gateway (e.g. /sap/opu/odate/sap/ZINT_CRSTO_SRV/pdfSet(Ebeln='123')/$value ), I get an exception thrown in file datajs.js as "no handler for data" at line 7854.

The service is called successfully and returns a 200 status. The error is raised as the content type showing 'application/pdf' and there is no handler for this in the list

(there are handlers for 'application/json', 'application/atom+xml,application/atomsvc+xml,application/xml', 'application/xml' and 'text/plain')

I repeat, the gateway service works, the error is being thrown in UI5.

Any ideas where my error is?

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

3 Answers

Jun Wu Oct 31, 2017 at 11:10 AM
0

from ui5 side, what you do after getting the data?

Show 1 Share
10 |10000 characters needed characters left characters exceeded
Former Member

The data is not coming back, the exception is being raised inside the oModel .read call and therefore success callback function is not being called, I just get the oError object with a message that there is no handler for data and an uncaught exception in standard code.

I have attached a screenshot of the Chrome debugger as the exception is thrown.

Does this help anyone?

I am also raising an OSS message, but this forum is usually quicker ;-)

exception.jpg (120.8 kB)
0
avatar image
Former Member Apr 30 at 10:44 AM
0

Even if the question is a little older, others may also face this issue:

The URL in the read method must not contain /$value.

Show 1 Share
10 |10000 characters needed characters left characters exceeded

Need your help. I'm also facing the same issue. Please let me know how to call GET_STREAM method without adding $value in read method. Thanks !

0
Felipe de Mello Rodrigues Jun 22 at 05:01 AM
0

You don't need to consume the PDF via OData model, since the Fiori Launchpad is usually published in the same application server of the SAP Gateway you can publish a simple link in your application based on the relative path, this way the browser will handle automatically the consumption of the PDF file.

Use a simple javascript window.open( ) and send the OData URL file as a parameter, in your case:

/sap/opu/odate/sap/ZINT_CRSTO_SRV/pdfSet(Ebeln='123')/$value
Share
10 |10000 characters needed characters left characters exceeded