2011-02-18 13 views
5

Bir login.jsp üzerinde j_security_check kullanıyorum. Sunucu, GlassFish Server 3'tür. Her kullanıcı, kullanıcının kimliği doğrulandığında index.jsp'yi açar. Sorunum, index.jsp sayfamda j_username almam gerekiyor, ancak bunu yapmanın bir yolunu bulamadım. Bulduğum tüm çözümler Java'da ve jsp'm ile çalışan bir şeye ihtiyacım var.j_security_check ile başarılı bir kimlik doğrulamasından sonra indeks.jsp üzerinde j_username nasıl edinebilirim?

Herhangi bir fikrin var mı? Şimdiden çok teşekkür ederim!

cevap

10

İlgili istek, PageContext#getRequest() numaralı JSP EL tarafından kullanılabilir. Oturum açmış kullanıcı HttpServletRequest#getUserPrincipal() tarafından kullanılabilir. Kullanıcı adı Principal#getName() tarafından kullanılabilir.

Yani

,

<p>Welcome, <c:out value="${pageContext.request.userPrincipal.name}" /></p> 

yapmalıdır.

<c:out> kullanarak bu arada adı vb (XSS saldırıları için bir kaynak olan) < gibi HTML çıktısını, >, " kusurlu hale ve olabilir özel bir HTML karakterleri içerebilir durum için gerekli, ancak yararlı değildir . <c:out>, sadece HTML işaretlemesinin bir parçası olarak yorumlanmak yerine tam anlamıyla görüntülenecek şekilde çıkar.

+0

Çok teşekkür ederim! Mükemmel çalıştı! :) – Monica

İlgili konular