Meaningless Drivel is fun!
The moose likes JSF and the fly likes Faces Servlet Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » JSF
Bookmark "Faces Servlet" Watch "Faces Servlet" New topic

Faces Servlet

Suresh Khant
Ranch Hand

Joined: Feb 27, 2010
Posts: 118
Hi All ,
I am newbie to jsf , i just want to know what is the meaning of the configuration parameter

<servlet-name>Faces Servlet</servlet-name>

and is it possible to change the extension .faces to something else like .jsp , jsf , xhtml
Dieter Quickfend

Joined: Aug 06, 2010
Posts: 543

It means that every request whose request URL ends with '.faces' will be directed to the Faces Servlet, which is a java class declared as a <servlet> element in web.xml.

Sure, you can change it to something else.

Oracle Certified Professional: Java SE 6 Programmer && Oracle Certified Expert: (JEE 6 Web Component Developer && JEE 6 EJB Developer)
Suresh Khant
Ranch Hand

Joined: Feb 27, 2010
Posts: 118
Thanks Dieter Quickfend for your reply ,

but i have made simple example with the configuration parameter

and the index page is index.jsp

when i tried to access the page using index.jsp i got error

and when i accessed it using index.faces it works fine

could you please explain how this happening , frankly i am still not able to understand that
Tim Holloway
Saloon Keeper

Joined: Jun 25, 2001
Posts: 17421

"index.jsp" does not match your servlet filter pattern. Therefore, the request didn't get routed to the FacesServlet and the container attempted to compile index.jsp and execute it as a plain old JSP. However, since the index.jsp resource referenced JSF resources, it needed a FacesContext.

The FacesContext is created by the FacesServlet to handle the current request. Once the request has been processed, the FacesContext is destroyed. There will be no FacesContext until another request goes through the FacesServlet, at which time the cycle repeats.

It's important to understand the difference between URLs and resources. I'm using Facelets, so my View definition resources have names suffixed with ".xhtml".

Because of the filters I have set in web.xml, a "mypage.jsf" URL will be routed to the FacesServlet, which has been primed to locate resources by ripping the ".jsf" off the URL and replacing it with ".xhtml". So the "mypage.xhtml" resource will be used by the FacesServlet to render the view requested by "myfaces.jsf".

An IDE is no substitute for an Intelligent Developer.
I agree. Here's the link:
subject: Faces Servlet
jQuery in Action, 3rd edition