Ajax pemapar dokumen drupal hosting

Adakah terdapat beberapa cara yang saya boleh menunjukkan mesej pengecualian adat sebagai makluman dalam mesej ralat jQuery AJAX saya?

Sebagai contoh, jika saya mahu membuang pengecualian di sebelah pelayan melalui Struts dengan membuang ApplicationException baru ( "Nama Pengguna sudah wujud") ;. Saya mahu untuk menangkap pesanan ini ( 'nama pengguna sudah wujud') dalam mesej ralat jQuery AJAX.

Berjaga-jaga yang kedua, di mana saya memberi amaran kepada ralat yang dilemparkan, saya sedang mendapat undefined dan kod status 500.

Ajax pemapar dokumen drupal hosting Hanya penggunaan
   yang

Saya tidak pasti ke mana Aku pergi salah. Apa yang boleh saya lakukan untuk menyelesaikan masalah ini?

Penyelesaian am / boleh diguna semula

Jawapan ini disediakan untuk rujukan masa depan untuk semua orang-orang yang bertemu masalah ini. Penyelesaian terdiri daripada dua perkara:

  1. pengecualian ModelStateException adat yang akan dibuang apabila pengesahan gagal pada pelayan (model kesilapan laporan negeri pengesahan apabila kita menggunakan anotasi data dan menggunakan parameter tindakan pengawal bertaip kuat)
  2. Custom tindakan pengawal ralat HandleModelStateExceptionAttribute penapis yang menangkap pengecualian adat dan mengembalikan status ralat HTTP dengan keadaan ralat model dalam badan

Ini menyediakan infrastruktur yang optimum untuk jQuery Ajax panggilan untuk menggunakan potensi penuh mereka dengan Pengendali kejayaan dan kesilapan.

Pelanggan kod sampingan

Server kod sampingan

Masalah keseluruhan diperincikan dalam ini blog post di mana anda boleh mencari semua kod untuk menjalankan ini dalam permohonan anda.

Saya percaya sambutan pengendali Ajax menggunakan kod status HTTP untuk memeriksa jika terdapat ralat.

Jadi jika anda hanya membuang pengecualian Java pada kod sebelah pelayan anda tetapi kemudian sambutan HTTP tidak mempunyai kod jQuery 500 status (atau dalam kes ini mungkin objek XMLHttpRequest itu) hanya akan menganggap bahawa semuanya baik.

Saya katakan ini kerana saya mempunyai masalah yang sama dalam ASP.NET di mana saya telah membuang sesuatu seperti ArgumentException ( "Tidak tahu apa yang perlu dilakukan.") Tetapi kesilapan pengendali itu tidak menembak.

Saya kemudian menetapkan Response.StatusCode untuk sama ada 500 atau 200 sama ada saya mempunyai kesilapan atau tidak.

menjawab 19 Dis '08 di 14:11

jQuery.parseJSON berguna untuk kejayaan dan kesilapan.

menjawab Ogos 11 '11 di 22:18

Membuang pengecualian baru pada pelayan menggunakan:

Saya percaya bahawa StatusDescription itu dikembalikan kepada panggilan Ajax.

menjawab Mac 6 '14 di 18:07

Jika terdapat apa-apa bentuk adalah menerima dengan validate

hanya menggunakan sepanjang kod di

menjawab Mac 9 '14 di 17:31

Walaupun sudah bertahun-tahun sejak soalan ini ditanya, saya masih tidak mencari xhr.responseText sebagai jawapan yang saya cari. Ia kembali saya rentetan dalam format berikut:

yang saya pasti tidak mahu untuk menunjukkan kepada pengguna. Apa yang saya cari adalah sesuatu seperti di bawah:

xhr.responseJSON.message memberi saya mesej yang tepat dari Objek JSON yang boleh ditunjukkan kepada pengguna.

Ajax pemapar dokumen drupal hosting Custom pengawal ralat tindakan penapis

menjawab Jun 24 '16 di 02:05

Mula-mula kita perlu menetapkan dalam web.config:

Di samping itu di peringkat jquery dalam kesesatan sebahagian anda perlu menghuraikan respons ralat yang mengandungi pengecualian seperti:

Kemudian menggunakan r.Message anda actully boleh menunjukkan teks terkecuali.

menjawab Mei 9 '12 di 08:41

Anda mempunyai objek JSON pengecualian yang dibuang, dalam objek XHR itu. hanya menggunakan

Objek JSON mendedahkan dua hartanah lain: 'ExceptionType' dan 'surih tindanan'

menjawab 23 Feb di 10:33

2017 Stack Exchange, Inc

Menonton video ini!

Artikel berkaitan

kekunci Mollom api hosting drupallaman Drupal anda diceroboh. Bagaimana sekarang? Ooops. Senario kes terburuk telah berlaku: kelemahan di suatu tempat dibenarkan individu yang berniat jahat (atau bot, lebih mungkin) untuk mengambil alih laman web anda ....
Admin ajax php wordpress perlahan hostingBrian Jackson | Dikemas kini: 2 Jun 2016 Dengan setiap platform CMS datang isu-isu uniqueВ sendiri yang anda perlu untuk menyelesaikan masalah dan menangani sebagai pemaju web atau pemilik perniagaan. Walaupun WordPress mungkin ...
Site5 drupal template hostingdi Site5 mereka akan berhenti menyokong PHP4 pada akhir Februari 2008, jadi saya mengambil langkah dan bergerak laman web saya untuk PHP5. Ini mudah dilakukan dengan melampirkan (uncommenting dalam 5.x) baris berikut ...
Steven wittens drupal hostingAda apa-apa isu yang diketahui dengan Drupal 7 tapak penghijrahan sedia ada ke dalam php 5.6? Untuk Drupal teras khusus, maklumat yang akan berada di barisan isu itu. Satu carian pantas untuk "5.6" membawa sehingga tidak ...
Beban komen drupal hostingAbdulrahman mengulas 18 Februari 2011 pada 19:23 (untuk mikeaja) Saya mempunyai dua nota di halaman: - Drupal 6 adalah kurang dari segi sumber yang diperlukan (terutamanya penggunaan cpu) daripada 7, yang menjadikan ia berguna yang ...