Matt:
getRequest() method is not visible from requestAttributes. QD ________________________________ From: Matt Raible [mailto:[EMAIL PROTECTED] Sent: Tuesday, January 22, 2008 3:04 PM To: [email protected] Subject: Re: [appfuse-user] Using User from appfuse in appz The following won't work in a test, but it may work in your running application. Spring's RequestContextListener registers the request in a ThreadLocal: private HttpServletRequest getRequest() { return (HttpServletRequest) ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); } HTH, Matt On Jan 22, 2008, at 1:12 PM, Ding, Qin wrote: Again, my goal is to find out how I can get application URL from my bean in service layer. According to Mike, I made my bean servletContextAware so that I can get application URL by calling Url url = servletContext.getResource("/index.jsp"); However, I don't get the host, port information from url.getHost(), urlGetPort().... Is there a way I get inject HttpServletRequest to my service bean? In the BasePage, we get can get HttpServletRequest by calling (HttpServletRequest) getFacesContext().getExternalContext().getRequest(); public static HttpServletRequest getRequest() { return (HttpServletRequest) FacesContext.getCurrentInstance() .getExternalContext() .getRequest(); } If I put the above method into my own bean, or uses FacesUtils.getRequest(), I got nullPointerException. Why the "getRequest()" method in BasePage works but not in my service bean? Seems to me if I couldinject the facesContext to my bean, then I can get HttpServletRequest. With Request object, I should be able to get URL by calling request.getUri or Url. Please advice. Thank you. QD --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
