Periksa kebijakan JavaCallout dan resource yang digunakan. Pada contoh di atas, kebijakan JavaCallout menggunakan resource bernama hello.jar, seperti yang ditunjukkan di bawah ini:
Kompilasi dan ganti resource yang terpengaruh (file JAR) dengan artefak Java yang telah diperbarui.
Deploy Proxy API sebagai revisi baru dan lakukan panggilan API.
Mulai sesi rekaman aktivitas lain.
Perhatikan bahwa pelacakan tumpukan tersedia di variabel JAVA_STACKTRACE. Stack trace mencantumkan pengecualian sebenarnya serta file sumber dan nomor baris Java tempat error ditampilkan.
Gunakan informasi ini untuk memperbaiki masalah dalam kode Java.
Dalam contoh ini, kebijakan JavaCallout gagal karena ArithmeticException (pembagian dengan nol) dalam file JavaError.java di baris #25.
Resolusi
Bergantung pada pengecualian yang ditampilkan, perbaiki masalah dalam file sumber Java yang relevan.
a. Pada contoh yang ditampilkan di atas, masalah disebabkan oleh error aritmetika (pembagian dengan nol). Buka file sumber dan nomor baris tertentu yang ditunjukkan oleh pelacakan tumpukan.
b. Karena Anda tidak dapat melakukan pembagian dengan nol, hapus blok else lengkap yang berisi baris kode yang salah untuk menyelesaikan masalah.
Ganti file JAR yang relevan yang berisi file yang diubah di tingkat yang sesuai (proxy API, lingkungan, atau organisasi), tempat file tersebut sebelumnya berada.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Sulit dipahami","hardToUnderstand","thumb-down"],["Informasi atau kode contoh salah","incorrectInformationOrSampleCode","thumb-down"],["Informasi/contoh yang saya butuhkan tidak ada","missingTheInformationSamplesINeed","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-08-18 UTC."],[[["\u003cp\u003eThis documentation addresses troubleshooting for \u003ccode\u003esteps.javacallout.ExecutionError\u003c/code\u003e in Apigee and Apigee hybrid environments, specifically related to JavaCallout policies.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eExecutionError\u003c/code\u003e occurs when Java code within a JavaCallout policy throws an exception or returns \u003cem\u003enull\u003c/em\u003e.\u003c/p\u003e\n"],["\u003cp\u003eDiagnosis involves using a trace session to identify the failing JavaCallout policy and examining the relevant JAR resource, along with capturing the Java exception in a flow variable named \u003ccode\u003eJAVA_STACKTRACE\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eResolution requires identifying the specific Java exception and its location (file and line number) from the stack trace, fixing the error in the source code, and updating the corresponding JAR file.\u003c/p\u003e\n"],["\u003cp\u003eThe example given in this document outlines an \u003ccode\u003eArithmeticException\u003c/code\u003e (division by zero), for which you can resolve by removing or correcting the lines of code that cause the error, updating the jar file and deploying a new revision.\u003c/p\u003e\n"]]],[],null,[]]