Rumah >Java >javaTutorial >Bagaimanakah Struts2 Mengendalikan Ralat Penukaran dan Pengesahan dalam Pemprosesan Borang?

Bagaimanakah Struts2 Mengendalikan Ralat Penukaran dan Pengesahan dalam Pemprosesan Borang?

Barbara Streisand
Barbara Streisandasal
2024-12-18 22:34:11622semak imbas

How Does Struts2 Handle Conversion and Validation Errors in Form Processing?

Pengendalian Keputusan Input dalam Struts2

Ralat Penukaran dan Pengesahan dalam Keputusan INPUT

Struts2 mengurus secara automatik ralat penukaran dan pengesahan yang dihadapi semasa pemprosesan borang. Apabila ralat berlaku, ia mengembalikan hasil INPUT dan bukannya menimbulkan pengecualian. Ini membolehkan pengguna membetulkan ralat input tanpa mengganggu aliran aplikasi.

Ralat Penukaran

Parameter Interceptor mengendalikan penukaran parameter borang kepada jenis data yang sesuai (cth., String kepada integer). Jika penukaran gagal, ia menambahkan Ralat Medan pada peta Ralat penukaran ActionContext.

Ralat Pengesahan

Pemintas Pengesahan melaksanakan peraturan pengesahan yang ditakrifkan untuk tindakan tersebut. Jika mana-mana kriteria pengesahan gagal, ia menambah Ralat Medan pada peta medanRalat ActionContext.

Aliran Kerja Pengendalian Ralat

Selepas penukaran dan pengesahan, Pemindas Aliran Kerja menyemak kehadiran sebarang Ralat Medan. Jika ralat ditemui, ia mengembalikan hasil INPUT. Hasil ini secara automatik termasuk mesej ralat dan nilai asal yang diserahkan oleh pengguna, memastikan pengguna dapat melihat ralat dan membetulkan input mereka.

Konfigurasi

Untuk mendayakan pengendalian ralat automatik, pastikan bahawa pemintas berikut disertakan dalam Timbunan Tersuai dalam susunan yang betul:

  • Params Pemintas
  • Pemintas Ralat Penukaran
  • Pemintas Pengesahan
  • Pemintas Aliran Kerja

Mengapa Nombor Dipaparkan sebagai Sifar

Jika pengguna memasuki aksara abjad ke dalam medan bentuk yang ditakrifkan sebagai integer, yang rangka kerja mengembalikan sifar apabila mendapatkan semula nilai. Ini berlaku kerana kaedah Getter mengembalikan nilai lalai untuk integer (0) kerana ia tidak boleh menetapkan String ke dalam medan int.

Pengendalian Pengecualian

Struts2 tidak menimbulkan pengecualian untuk penukaran atau ralat pengesahan kerana ia dianggap ralat input. Sebaliknya, ia mengembalikan hasil INPUT dan menambahkan mesej ralat pada peta Ralat Medan untuk ditangani oleh pengguna.

Atas ialah kandungan terperinci Bagaimanakah Struts2 Mengendalikan Ralat Penukaran dan Pengesahan dalam Pemprosesan Borang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn