Saya mendapat variabel dari objek di halaman JSP saya:
<%= ansokanInfo.getPSystem() %>
Nilai variabelnya adalah NAT yang benar dan saya ingin menerapkan elemen halaman tertentu untuk nilai ini. Bagaimana cara menggunakan tag untuk mengetahui kasusnya? Saya mencoba sesuatu seperti
<c:if test = "${ansokanInfo.getPSystem() == 'NAT'}">
process
</c:if>
Tapi di atas tidak menampilkan apapun. Bagaimana saya harus melakukannya? Atau bisakah saya menggunakan scriptlets yaitu
<% if (ansokanInfo.getPSystem().equals("NAT"){ %>
process
<% } %>
Terima kasih atas jawaban atau komentar apa pun.
getPSystem()
danansokanInfo
? apakah Anda menetapkannya dalam permintaan atau mengaksesnyaimport
?Jawaban:
Mencoba:
<c:if test = "${ansokanInfo.PSystem == 'NAT'}">
JSP / Servlet 2.4 (saya pikir itu nomor versi) tidak mendukung panggilan metode di EL dan hanya mendukung properti. Kontainer servlet terbaru melakukan panggilan metode dukungan (yaitu Tomcat 7).
sumber
<c:if test = "${ansokanInfo.PSystem == 'NAT' || ansokanInfo.PSystem == 'CAT'}">
<c:if test="${ansokanInfo.pSystem eq 'NAT'}">
sumber
Saya pikir jawaban lain kehilangan satu detail penting terkait nama properti yang akan digunakan dalam ekspresi EL. Aturan untuk mengubah dari nama metode menjadi nama properti ditentukan di 'Introspector.decpitalize` yang merupakan bagian dari standar kacang java:
Jadi dalam kasus Anda kode JSTL akan terlihat seperti berikut, perhatikan huruf kapital 'P':
<c:if test = "${ansokanInfo.PSystem == 'NAT'}">
sumber
Anda dapat menggunakan scriptlet, namun ini bukanlah cara yang tepat. Sekarang skrip inline atau kode JAVA dalam file JSP Anda dianggap sebagai kebiasaan buruk.
Anda harus membaca lebih lanjut tentang JSTL. Jika objek ansokanInfo ada dalam permintaan atau cakupan sesi Anda, mencetak objek (metode toString ()) seperti ini: $ {ansokanInfo} dapat memberi Anda beberapa informasi dasar. $ {ansokanInfo.pSystem} harus memanggil metode pengambil objek. Jika ini semua berhasil, Anda dapat menggunakan ini:
<c:if test="${ ansokanInfo.pSystem == 'NAT'}"> tataa </c:if>
sumber