SORU
23 Temmuz 2010, Cuma


Nasıl istek kapsamlı bir fasulye içine bir HttpServletRequest enjekte mıyım?bahar:

Bahar request-scoped bean bir ayarlamaya çalışıyorum.

Başarıyla fasulye bir zamanlar isteği doğrultusunda oluşturulur bu yüzden kurdum. Şimdi, HttpServletRequest nesnesi erişim gerekiyor.

Bean bir kez isteği doğrultusunda oluşturulan bu yana, konteyner kolayca isteği benim fasulye nesne enjekte edebilir diye düşündüm. Bunu nasıl yapabilirim ?

CEVAP
24 Temmuz 2010, CUMARTESİ


Bahar HttpServletRequest geçerli nesne olarak HttpSession geçerli nesne) aracılığıyla sunarsarıcınesne türü 3**. Bu kapsayıcı nesne ThreadLocal bağlı olduğu ve static yöntemi RequestContextHolder.currentRequestAttributes() çağırarak elde edilir.

ServletRequestAttributes yöntemi getRequest() geçerli oturumu ve diğer yöntemler öznitelikleri hem kapsamları içinde saklı almak için geçerli bir istek, getSession() sağlar. Aşağıdaki kodu biraz çirkin olsa da, geçerli isteğin herhangi bir uygulamada nesne almak gerekir:

HttpServletRequest curRequest = 
((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes())
.getRequest();

RequestContextHolder.currentRequestAttributes() Bu yöntem bir arayüz verir ve arabirimi uygulayan ServletRequestAttributes typecasted gerekiyor unutmayın.


Bahar Javadoc:RequestContextHolder | ServletRequestAttributes

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • LaKe Lightroom Tutorials

    LaKe Lightro

    22 Temmuz 2014
  • PCDIY

    PCDIY

    16 AĞUSTOS 2013
  • tinycammonitor

    tinycammonit

    14 Aralık 2010