Rumah  >  Soal Jawab  >  teks badan

Selepas SAPUI5 callFunction() dipanggil, Errorhandler tidak dipanggil

Saya cuba mengesahkan IBAN dalam wizard dalam SAPUI5. Saya menggunakan V2 ODataModel (sap.ui.model.odata.v2.ODataModel) 上使用 functionImport untuk ini.

Permintaan mengembalikan kod status 202 tetapi sebenarnya gagal. Berikut ialah respons (dari tab Rangkaian Firefox):

--1D57E7CB0DD73AB15048B36CC96993D60
Content-Type: multipart/mixed; boundary=1D57E7CB0DD73AB15048B36CC96993D61
Content-Length:         1303

--1D57E7CB0DD73AB15048B36CC96993D61
Content-Type: application/http
Content-Length: 1134
content-transfer-encoding: binary

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 950
dataserviceversion: 1.0
cache-control: no-cache, no-store
pragma: no-cache
content-id: id-1687346500037-256

{"d":{"CheckIBAN":{"__metadata":{"type":"XXXX"},"AccountID":"XXXXXX","IBAN":"DEXXXX","BankID":"","WithInOutPayment":true,"SepaNotifText":"XXX"}}}
--1D57E7CB0DD73AB15048B36CC96993D61--

--1D57E7CB0DD73AB15048B36CC96993D60
Content-Type: application/http
Content-Length: 1111
content-transfer-encoding: binary

HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=utf-8
Content-Length: 991
dataserviceversion: 1.0

{"error":{"code":"XXX/076","message":{"lang":"de","value":"XXX"},"innererror":{"application":{"component_id":"XXX","service_namespace":"XXX","service_id":"XXXX","service_version":"0001"},"transactionid":"XXX","timestamp":"XXX","Error_Resolution":{"SAP_Transaction":"XXX","SAP_Note":"XXXX"},"errordetails":[{"code":"XXX/076","message":"XXX","propertyref":"","severity":"error","target":""}]}}}
--1D57E7CB0DD73AB15048B36CC96993D60--

(buang semua kandungan sulit) Ini adalah hasil dalam konsol penyemak imbas:

Jadi ia perlu didaftarkan di suatu tempat. Kod saya untuk mendaftar panggilan balik adalah seperti berikut:

this.SERVICE.functionImport("CheckIBAN", XXX.Constants.HTTP_POST, XXX, true, {
            fnSuccess: jQuery.proxy(function (oData) {
                fnCallback(oData);
            }, this),
            fnError: fnError
        });

Sila ambil perhatian bahawa fungsi functionImport hanyalah pembalut di sekeliling sap.ui.model.odata.v2.ODataModel.callFunction dan melakukan operasi yang sama.

Tidak kira apa yang saya masukkan (input betul atau salah), ia sentiasa memanggil fnSuccess.

Bila dah guna ODataModelread 函数(所以只是一个简单的 GET-request)时,一切正常,并且在发生错误时触发 fnError .

P粉432930081P粉432930081179 hari yang lalu427

membalas semua(1)saya akan balas

  • P粉338969567

    P粉3389695672024-04-05 00:39:04

    Soalan anda tidak mengandungi soalan "?"

    Saya andaikan anda bertanya mengapa "ralat" tidak dipanggil?

    Jika permintaan http gagal, "ralat" dipanggil. Apabila anda menggunakan pemprosesan kelompok, sebarang ralat dalam changeSet tidak akan dikendalikan oleh API ini...UI5 v2 bukanlah pelaksanaan yang sangat elegan...

    Lihat juga: https://github.com/SAP/openui5/issue/1382#issuecomment-288723906

    balas
    0
  • Batalbalas