Fundamental flaws in Java Server Faces

Fundamental flaws in Java Server Faces (JSF)
After working with Struts framework for many years I wanted to try something new and decided to investigate JSF. I was very impressed with my initial evaluation and recently used it in one of my project. Middle of the project I released many glaring issue with the framework and had to break my head to complete the project on time.
One of the major reasons why I choose JSF was that it had a clean way of mapping a form to a bean(s) and a nice way to perform form actions and navigation between forms.
Although the framework is very promising in many ways, I think the framework is not yet complete and the developer has to fix lot of holes to make the application to work properly.
Following are the glaring functionality that is missing or confusing or messed up in JSF.
1)     JSF does not provide a way to disable PROCESS_VALIDATION phase. For some reason if one wants to skip one phase another, JSF has made it near to impossible to skip.
2)     The framework does not provide an easy way to invoke an action method directly by calling a URL (Similar to Struts action method invocation). This is very essential because many/most of the time one needs to check the authorizations of the user to view a page.
3)     JSF does not support form GET method. They are giving all sorts of reasons not to do this. It�s practically very difficult to develop an application with just POST operations.
4)     There should be an easy way for the developer to tell JSF not to copy the request to the backing bean or at least skip the event phase that copies the request to the backing bean.
5)     JSF does many operations in each phases. JSF should not overload multiple operations in one phase. Custom validation should be separated from native framework validation. Calling a command button with immediate set to true should be a separate phase event. This should not be mixed with other operation.
6)     It is very difficult or near to impossible to programmatically unit test JSF application. I don�t know what they thought when they developed this framework. Dude�s we are in the TDD time period, not 4GL.
7)     In my opinion one or more backing beans can be linked to a page and a page can be made up of one or more jsp�s. The fundamental flaw with the JSF is that JSF tries to dynamically map a jsp collection to beans. I don�t know who decided this model. They should have implemented such that the user in the faces xml or dynamically say what beans maps to a jsp page. Then they can copy the request objects to the bean and then do other stuff. This way the framework will give lot of control to the developer. In my opinion, if they have to do this then they will have to implement the �struts� action controller framework and then extend the JSF framework on top of it.
8)     The framework has some piece of implementation very easy like mapping the bean to the form and command actions and the others near to impossible to understand or make it to work.
I am surprised to see big players like IBM and Oracle backing this product. What I don�t understand is why? What are they betting for?
Anyway, I will definitely keep an eye on the JSF progress. But for now, let me take care of my bum. It was a bumpy ride working with JSF framework.

I am not very experience or expert in jsf...
But i would like share my thought/ answer on this issue.
1) JSF does not provide a way to disable PROCESS_VALIDATION phase. For some reason if one wants to skip one phase another, JSF has made it near to impossible to skip.
- YES.....jsf make it impossible to disable validation. But it does make it possible to skip some validation with immediate attribute. Anyway..based on My experienc working on immediate attribute.....it was not so easy/flexible to skip the validation as compared to struts..
2) The framework does not provide an easy way to invoke an action method directly by calling a URL (Similar to Struts action method invocation). This is very essential because many/most of the time one needs to check the authorizations of the user to view a page.
-I am not sure about this.......But i personally think jsf does not provide this functionality.
3) JSF does not support form GET method. They are giving all sorts of reasons not to do this. It�s practically very difficult to develop an application with just POST operations.
- YES....I personally also feel that this is a BIG disadvantage...
4) There should be an easy way for the developer to tell JSF not to copy the request to the backing bean or at least skip the event phase that copies the request to the backing bean.
- YES...agreed.....jsf should make this easier..
5) JSF does many operations in each phases. JSF should not overload multiple operations in one phase. Custom validation should be separated from native framework validation. Calling a command button with immediate set to true should be a separate phase event. This should not be mixed with other operation.
- No comment..
6) It is very difficult or near to impossible to programmatically unit test JSF application. I don�t know what they thought when they developed this framework. Dude�s we are in the TDD time period, not 4GL.
7) In my opinion one or more backing beans can be linked to a page and a page can be made up of one or more jsp�s. The fundamental flaw with the JSF is that JSF tries to dynamically map a jsp collection to beans. I don�t know who decided this model. They should have implemented such that the user in the faces xml or dynamically say what beans maps to a jsp page. Then they can copy the request objects to the bean and then do other stuff. This way the framework will give lot of control to the developer. In my opinion, if they have to do this then they will have to implement the �struts� action controller framework and then extend the JSF framework on top of it.
- No really understand what u trying to say...But I dun think this should be a isssue...
8) The framework has some piece of implementation very easy like mapping the bean to the form and command actions and the others near to impossible to understand or make it to work.
- What is the "other" mean???

Similar Messages

  • Pls help   how to check the condition in java server faces.....???

    Hi All
    I have strucked with code pls help....
    How can i check the codition in java server faces.....?
    like in my Application when user provides the in put like some state name in the next page i have to display some url for that state .......if he provide some other state name it will be different url .....pls help me how can i do that,,,,,,???
    thanks in advance..

    There are certainly ways to do that. E.g. using the rendered attribute, using conditional statements in EL, using a specialized getter for that (lazily loaded if necessary), etcetera. But your functional requirement is unclear, so I can't go in detail with that.
    In the future, please try to write normal English sentences. Don't write like SMS talk and save the periods and commas. The more effort you put in your question, the more chance you will be taken for serious and the more effort others will post in their answers.
    Also, in the future, JSF related questions should be posted in the JSF forum.
    Edited by: BalusC on 12-aug-2008 7:47

  • Java server faces submit button

    i'm running a java server faces example in tomcat.In that example i'm having a text field and a submit button, both are visible, but when i run the same example in JBoss app server the submit button is not visible ........whats the problem?
    Thanks in advance.
    Ajay

    Thanks!
    i'm using jwsdp-1.2. Actually there is no need to
    configure anything in jwsdp-1.2. But running example
    out of jwsdp-1.2 may need some configuration that i
    don't know....
    You're correct that some extra steps are needed to run elsewhere than JWSDP 1.2:
    http://java.sun.com/j2ee/javaserverfaces/docs/Deployment_Guide.html
    however, it's very difficult to determine what might be wrong without seeing your JSP source code and associated Java classes, plus any error messages that might be getting written to the log files.
    Craig McClanahan

  • Java Server Faces on BEA

    Hi
    Is it possible to perform Java Server Faces (Sun) on Bea 8.1 Sp4?
    I can't get this started. Do you have any hints/experiences?

    Yes, WLS 8.1 SP4 should support JSF. Unfortunately we do not have an example to get you started. I'll enter a request for such.
    If you encounter issues or have further questions, try our WebApp newsgroup: weblogic.developer.interest.servlet

  • Javascript in java server faces

    Hi All,
    is it possible to use javascript in java server faces. If it is possible, How to get component (textbox, listbox, combo box) values in java script ?

    Yes. Use document.getElementById().

  • Recommended portel type for Java Server Faces in Portal 10G

    Hi all,
    What is the best [or recommended] portlet type to use to interact with Java Server Faces in Oracle Portal 10G. We a planning to use a WSRP portlet type in our current project and would like to know if this is a good/feasible approach, or whether another portlet type would be recommended.
    Thanks in advance!

    Entry-level stuff is linked from http://www.jsftutorials.net/
    Samples with tables... eg. the MyFaces examples which show all myfaces components. http://myfaces.apache.org -> just download the binaries and sources and check out the samples
    hth
    Alexander

  • Support for Java Server FAce in Workshop

    Dear All,
    Does anyone have any idea if and when Workshop will include support for the Java
    Server Faces (JSF) framework?
    Thank you
    Abe

    While I cannot share any specific product plans from any vendor, I would like to point out that all of the vendors of IDEs in the Java web application space are members of the JSR-127 expert group that is defining JavaServer Faces. Indeed, one of the primary design goals for the APIs is to ensure that development tools have sufficient information available to create high quality user interfaces at design time, so we're doing all we can to enable this kind of thing.
    As JavaServer Faces matures, I think you will be very pleased with the quality and quantity of tools support for it.
    Craig McClanahan

  • Struts/Java Server Faces

    Plese send info : In which cases it is beter to use struts framework and in which cases Java Server Faces .

    They actually compliment each other. You can use Struts with JSF.
    Read the overview on JSF and you will see.
    Sal

  • Java server faces mvc pattern

    Well i dont know any knowledge of java servr faces.Dows java Server faces encapsulate mvc pattern like struts other then html tag library.
    Thanks.

    JSF only addresses the "user interface" framework portion of a web application. You can perhaps think of it as standardizing the "V" in MVC (I don't know if this is quite right, is it so Craig?). We wish that there will be another JSR in the future that standardizes rest of the "C" of the MVC.
    -Mete

  • Difference between Java Server Faces and Apache Struts

    Hi ,
    I'm quite new to Java Server Faces and Apache Struts. I wonder are they two comparable Frameworks for web presentation?
    And can anybody elaborate please, if they differ in what aspects?
    Thanks
    Jaffar Shaikh

    Here are slides from a presentation by Craig McClanahan that compares them (I believe you can search for other articles on this topic): http://www.baychi.org/calendar/files/Struts-And-Faces/Struts-And-Faces.pdf

  • Java Server Faces - JSF - Problem

    Hi,
    I have a problem to run an example of jsf application!
    I'm using Apache Tomcat/6.0.10 and the application is deployed!
    -------------** Excuse me for my english, I'm Italian **----------
    When I run the application, the browser (Mozilla) show me this error:
    java.lang.IllegalStateException: Application was not properly initialized at startup, could not find Factory: javax.faces.context.FacesContextFactory
    Can you help me for run correctly this application ?

    The problem is likely that the JSF classes are not available to your application server.

  • Java Server Faces best Practices

    Hello,
    I am starting to like JSF. But I want to know the following.
    Where is the contoller in a JSF application, is it the Managed Bean???? or a Backing Bean?
    Should I put my Business Delegate on a Managed Bean? or in a Backing Bean? What is the difference?
    Can anyone tell?.
    I would like to know JSF Best Practices? Blueprints?.
    Thanks.
    Saludos,
    <Rory/>

    Hi Senthruan,
    The documentation referenced by the following links is based on an older version of JavaServer Faces technology.
    Backing Beans:
    http://java.sun.com/webservices/docs/1.3/tutorial/doc/J
    FUsing3.html
    UI Components :
    http://java.sun.com/webservices/docs/1.3/tutorial/doc/J
    FUsing3.html (just as a visual example).You should instead use the J2EE tutorial (http://java.sun.com/j2ee/1.4/docs/tutorial/doc/index.html), which is based on version 1.1 of JavaServer Faces technology. The JavaSErver Faces material starts with chapter 17. The topics have moved around a bit, but the tutorial has a nice search engine, so you shouldn't have trouble finding the information you need.
    Jennifer

  • Getting duplicate key Exception in java server faces

    I am getting duplicate key exception at some places in my JSF page .I have done the debugging of the java code but I didn�t find any error in the code. Problem is occurring at the time of rendering the JSF page. I have done R&D on that but I am unable to find the solution. When JSF is rendering �qualPersonResultTable� in the page at that time I am getting Exception. I have visited the number of firm those were suggesting to assign the �ID� to all the component in the JSF which I have done but still I am getting the same error. In the database all the value are unique are there is primary key so there is only problem in rendering the JSF page.Exception is as follows :
    "EXCEPTION "
    [8/28/07 16:54:52:475 IST] 31fa31fa WebGroup E SRVE0026E: [Servlet Error]-[Duplicate component ID &#39;qualificationsInc:qualificationsForm:qualPersonResultTable:_id22&#39; found in view.]: javax.servlet.jsp.JspException: Duplicate component ID 'qualificationsInc:qualificationsForm:qualPersonResultTable:_id22' found in view.
         at com.sun.faces.taglib.jsf_core.ViewTag.doAfterBody(ViewTag.java:173)
         at org.apache.jsp._PersonQualifications._jspService(PersonQualifications.jsp :16)
         at com.ibm.ws.webcontainer.jsp.runtime.HttpJspBase.service(HttpJspBase.java:89)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.ibm.ws.webcontainer.jsp.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:351)
         at com.ibm.ws.webcontainer.jsp.servlet.JspServlet.serviceJspFile(JspServlet.java:705)
         at com.ibm.ws.webcontainer.jsp.servlet.JspServlet.service(JspServlet.java:803)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
         at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
         at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
         at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
         at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:1166)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:676)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:203)
         at com.ibm.faces.context.MultipartExternalContextImpl.dispatch(MultipartExternalContextImpl.java:411)
         at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:295)
         at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:217)
         at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
         at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
         at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
         at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
         at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
         at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:76)
         at com.minnesotamutual.individual.common.security.auth.IndAuthorizationFilter.doFilter(IndAuthorizationFilter.java:179)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.individual.common.security.auth.IndAuthorizationFilter.doFilter(IndAuthorizationFilter.java:179)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.common.security.auth.AuthenticationFilter$DoFilterAction.run(AuthenticationFilter.java:111)
         at java.security.AccessController.doPrivileged(AccessController.java:260)
         at javax.security.auth.Subject.doAs(Subject.java:555)
         at com.minnesotamutual.common.security.auth.AuthenticationFilter.doFilter(AuthenticationFilter.java:283)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.common.security.auth.AuthTicketValidationFilter.doFilter(AuthTicketValidationFilter.java:285)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.common.security.auth.AuthTicketTimestampFilter.doFilter(AuthTicketTimestampFilter.java:193)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.common.web.SSLFilter.doFilter(SSLFilter.java:117)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.common.logging.http.HttpLogFilter.doFilter(HttpLogFilter.java:92)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.individual.common.logging.LoggingBaseFilter.doFilter(LoggingBaseFilter.java:58)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:1162)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:676)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:203)
         at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:125)
         at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:300)
         at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
         at com.ibm.ws.webcontainer.cache.invocation.CacheableInvocationContext.invoke(CacheableInvocationContext.java:120)
         at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:250)
         at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:334)
         at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
         at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:652)
         at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:458)
         at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:936)
    ---- Begin backtrace for Nested Throwables
    java.lang.IllegalStateException: Duplicate component ID 'qualificationsInc:qualificationsForm:qualPersonResultTable:_id22' found in view.
         at com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:134)
         at com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:143)
         at com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:143)
         at com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:143)
         at com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:143)
         at com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:143)
         at com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:143)
         at com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:143)
         at com.sun.faces.application.StateManagerImpl.removeTransientChildrenAndFacets(StateManagerImpl.java:143)
         at com.sun.faces.application.StateManagerImpl.saveSerializedView(StateManagerImpl.java:72)
         at com.sun.faces.taglib.jsf_core.ViewTag.doAfterBody(ViewTag.java:171)
         at org.apache.jsp._PersonQualifications._jspService(PersonQualifications.jsp :16)
         at com.ibm.ws.webcontainer.jsp.runtime.HttpJspBase.service(HttpJspBase.java:89)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.ibm.ws.webcontainer.jsp.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:351)
         at com.ibm.ws.webcontainer.jsp.servlet.JspServlet.serviceJspFile(JspServlet.java:705)
         at com.ibm.ws.webcontainer.jsp.servlet.JspServlet.service(JspServlet.java:803)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
         at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
         at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
         at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
         at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:1166)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:676)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:203)
         at com.ibm.faces.context.MultipartExternalContextImpl.dispatch(MultipartExternalContextImpl.java:411)
         at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:295)
         at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:87)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:217)
         at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
         at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
         at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
         at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
         at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
         at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
         at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:76)
         at com.minnesotamutual.individual.common.security.auth.IndAuthorizationFilter.doFilter(IndAuthorizationFilter.java:179)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.individual.common.security.auth.IndAuthorizationFilter.doFilter(IndAuthorizationFilter.java:179)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.common.security.auth.AuthenticationFilter$DoFilterAction.run(AuthenticationFilter.java:111)
         at java.security.AccessController.doPrivileged(AccessController.java:260)
         at javax.security.auth.Subject.doAs(Subject.java:555)
         at com.minnesotamutual.common.security.auth.AuthenticationFilter.doFilter(AuthenticationFilter.java:283)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.common.security.auth.AuthTicketValidationFilter.doFilter(AuthTicketValidationFilter.java:285)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.common.security.auth.AuthTicketTimestampFilter.doFilter(AuthTicketTimestampFilter.java:193)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.common.web.SSLFilter.doFilter(SSLFilter.java:117)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.common.logging.http.HttpLogFilter.doFilter(HttpLogFilter.java:92)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.minnesotamutual.individual.common.logging.LoggingBaseFilter.doFilter(LoggingBaseFilter.java:58)
         at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:132)
         at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:71)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:1162)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:676)
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:203)
         at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:125)
         at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:300)
         at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
         at com.ibm.ws.webcontainer.cache.invocation.CacheableInvocationContext.invoke(CacheableInvocationContext.java:120)
         at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:250)
         at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:334)
         at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
         at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:652)
         at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:458)
         at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:936)
    Code :
    <h:dataTable border="0" cellpadding="2" cellspacing="0"
    columnClasses="qual_prs_col_prs_name,qual_prs_col_prs_code,qual_prs_col_status,qual_prs_col_blocked,qual_prs_col_exception,qual_prs_col_frm_name,qual_prs_col_rlt"
                                       headerClass="rt_panelgrid_dtsmallhdg"
                                       rowClasses="rt_list_row_odd,rt_list_row_even"
                                       styleClass="dataTable" id="qualPersonResultTable" width="750"
                                       value="#{qualificationsSearchDataBean.searchResults}" var="personList"
                                       binding="#{qualificationsSearchDataBean.personQualTable}"
                                       rendered="#{qualificationsSearchDataBean.personQualifications}">
                             <h:column id="prsTablePrsName">
                                  <f:facet name="header">
                                       <h:outputText id="prsTablePrsNameHeading" value="Name" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:outputText id="prsTablePrsNameValue" value="#{personList.sle_per_rcg_fmt_n}" styleClass="rt_standard_data_text"/>
                             </h:column>
                             <h:column id="prsTablePrsCode">
                                  <f:facet name="header">
                                       <h:outputText id="prsTablePrsCodeHeading" value="Code" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:outputText id="prsTablePrsCodeValue" value="#{personList.agt_c}" styleClass="rt_standard_data_text"
                                                 converter="AdvisorCodeConverter"/>
                             </h:column>
                             <h:column id="prsTableQualification">
                                  <f:facet name="header">
                                       <h:outputText id="prsTableQualificationHeading" value="Qualification Status" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:selectOneMenu id="prsTableQualificationValue" value="#{personList.rcg_evt_ptc_sta_c}"
                                                      onchange="javascript: updateQualStat(#{qualificationsSearchDataBean.personQualTable.rowIndex},#{qualificationsSearchDataBean.personQualifications},#{qualificationsSearchDataBean.firmQualifications},#{personList.sle_per_unq_i},'#{personList.sle_per_rcg_fmt_n}',#{personList.rcg_evt_ptc_sta_c},this.value,'#{personList.rcg_evt_blk_f}','#{personList.rcg_evt_exc_f}');">
                                       <f:selectItem itemValue="1" itemLabel="Not Qualified"/>
                                       <f:selectItem itemValue="2" itemLabel="On Schedule"/>
                                       <f:selectItem itemValue="3" itemLabel="Qualified"/>
                                  </h:selectOneMenu>
                             </h:column>
                             <h:column id="prsTableBlocked">
                                  <f:facet name="header">
                                       <h:outputText id="prsTableBlockedHeading" value="Blocked" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:selectOneMenu id="prsTableBlockedValue" value="#{personList.rcg_evt_blk_f}"
                                                      onchange="javascript: updateBlockFlag(#{qualificationsSearchDataBean.personQualTable.rowIndex},#{qualificationsSearchDataBean.personQualifications},#{qualificationsSearchDataBean.firmQualifications},#{personList.sle_per_unq_i},'#{personList.sle_per_rcg_fmt_n}',#{personList.rcg_evt_ptc_sta_c},'#{personList.rcg_evt_blk_f}',this.value,'#{personList.rcg_evt_exc_f}');">
                                       <f:selectItem itemValue="Y" itemLabel="Yes"/>
                                       <f:selectItem itemValue="N" itemLabel="No"/>
                                  </h:selectOneMenu>                    
                             </h:column>
                             <h:column id="prsTableException">
                                  <f:facet name="header">
                                       <h:outputText id="prsTableExceptionHeading" value="Exception" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:selectOneMenu id="prsTableExceptionValue" value="#{personList.rcg_evt_exc_f}"
                                                 onchange="javascript: updateExceptionFlag(#{qualificationsSearchDataBean.personQualTable.rowIndex},#{qualificationsSearchDataBean.personQualifications},#{qualificationsSearchDataBean.firmQualifications},#{personList.sle_per_unq_i},'#{personList.sle_per_rcg_fmt_n}',#{personList.rcg_evt_ptc_sta_c},'#{personList.rcg_evt_blk_f}','#{personList.rcg_evt_exc_f}',this.value);">
                                       <f:selectItem itemValue="Y" itemLabel="Yes"/>
                                       <f:selectItem itemValue="N" itemLabel="No"/>
                                  </h:selectOneMenu>     
                             </h:column>
                             <h:column id="prsTableFirmName">
                                  <f:facet name="header">
                                       <h:outputText id="prsTableFirmNameHeading" value="Firm Name" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:outputText id="prsTableFirmNameValue" styleClass="rt_standard_data_text" value="#{personList.pri_agy_rcg_fmt_n}"/>
                             </h:column>
                             <h:column id="prsTableRelationship">
                                  <f:facet name="header">
                                       <h:outputText id="prsTableRelationshipHeading" value="Relationship" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:outputText id="prsTableRelationshipValue" value="#{personList.asc_rlt_typ_des_x}" styleClass="rt_standard_data_text"/>
                             </h:column>
                        </h:dataTable>
    If any one help me in resolving this i will be thankful to him.

    Thanks for reply so fast . See the complete code below
    Complete Code :
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <%@ page language="java"
              contentType="text/html; charset=ISO-8859-1"
              pageEncoding="ISO-8859-1"
    %>
    <%@taglib uri="http://java.sun.com/jstl/core" prefix="c"%>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
    <%@ taglib uri="http://www.ibm.com/jsf/html_extended" prefix="hx"%>
    <%@ taglib
         uri="http://www.minnesotamutual.com/individual/common/navigation"
         prefix="nav"%>
    <HEAD>
    <LINK rel="stylesheet" type="text/css" href="../../css/rt_qual.css"
         title="QUAL">
    <LINK rel="stylesheet" type="text/css" href="../../css/rt_error.css"
         title="ERROR">
    </HEAD>
    <f:subview id="qualificationsInc">
         <c:if test="${siteAvailabilityActionBean.siteMsg != null}">
              <c:import url="../Error/RTSiteWarningInc.jsp" />
              <hx:outputSeparator id="siteWarnHR" width="550" align="LEFT" />
         </c:if>
         <h:form id="qualificationsForm" style="margin: 0px;">
              <h:inputHidden id="uniqueID" value="#{qualificationsSearchDataBean.uniqueID}" />
              <h:inputHidden id="selectedQualStatus" value="#{qualificationsSearchDataBean.selectedQualStatus}" />          
              <h:inputHidden id="selectedBlockFlag" value="#{qualificationsSearchDataBean.selectedBlockFlag}" />          
              <h:inputHidden id="selectedExceptionFlag" value="#{qualificationsSearchDataBean.selectedExceptionFlag}" />     
              <h:inputHidden id ="pageSelected" value="#{qualificationsSearchDataBean.pageSelected}" />
              <h:commandButton id="searchEngineOptimization" style="width:0px;" value=""
    action="#{qualificationsSearchActionBean.gatherSearchResults}"/>
              <h:panelGrid id="persValidationErrorGrid" styleClass="panelGrid" width="550"
                        columns="2" columnClasses="vld_err_pic_col,vld_err_msg_col"
                        rendered="#{qualificationsSearchDataBean.qualificationErrorList != null}">
              <h:graphicImage value="../../Images/alert_red_icon.gif"/>
              <h:panelGroup id="persErrorMsgGroup">
                   <h:dataTable id="persErrTable" width="500" value="#{qualificationsSearchDataBean.qualificationErrorList}" var="persErr">
                        <h:column id="persMsgCol">
                             <h:outputText value="<LI>#{persErr}" escape="false" styleClass="err_attention_text"/>
                        </h:column>
                   </h:dataTable>
              </h:panelGroup>
              </h:panelGrid>
         <h:panelGrid id="selectEventTypeGrid" styleClass="panelGrid" width="550"
                        columnClasses="qual_crit_col1,qual_crit_col2,qual_crit_col3" columns="3">
              <h:outputText id="eventTypeLabel" value="Event Type:"/>
              <h:selectOneMenu id="selectPersonEvent" value="#{qualificationsSearchDataBean.eventType}"
                                  rendered="#{qualificationsSearchDataBean.personQualifications}">
                   <f:selectItems value="#{recognitionListBean.personEventTypeList}"/>
              </h:selectOneMenu>
              <h:selectOneMenu id="selectFirmEvent" value="#{qualificationsSearchDataBean.eventType}"
                                  rendered="#{qualificationsSearchDataBean.firmQualifications}">
                   <f:selectItems value="#{recognitionListBean.firmEventTypeList}"/>
              </h:selectOneMenu>
              <h:commandButton id="chooseEvent" value="Select Event Type" style="width: 125px;"
                                  action="#{qualificationsSearchActionBean.selectEvent}"/>
         </h:panelGrid>
         <h:panelGroup id="specificEventGroup" rendered="#{qualificationsSearchDataBean.eventTypeSelected}">
              <hx:outputSeparator width="750" align="left"/>
              <h:panelGrid id="selectSpecificEventGrid" styleClass="panelGrid" width="550"
                             columnClasses="qual_crit_col1,qual_crit_col2,qual_crit_col3" columns="3">
                   <h:outputText id="specificEventLabel" value="Specific Event:"/>
                   <h:selectOneMenu id="selectSpecificEvent" value="#{qualificationsSearchDataBean.specificEvent}">
                        <f:selectItems value="#{qualificationsSearchDataBean.recognitionEvents}"/>
                   </h:selectOneMenu>
                   <h:commandButton type="submit" id="chooseSpecificEvent" value="Select Event" style="width: 85px;"
                                       action="#{qualificationsSearchActionBean.selectSpecificEvent}"/>
              </h:panelGrid>
         </h:panelGroup>
         <h:panelGroup id="specificEventSelectedGroup" rendered="#{qualificationsSearchDataBean.specificEventSelected}">
              <hx:outputSeparator width="750" align="left"/>
              <h:panelGrid id="eventNameGrid" columns="3" width="550"
                             columnClasses="qual_crit_col1,qual_crit_col2,qual_crit_col3">
                   <h:outputText id="eventNameHeading" value="Event:" styleClass="rt_standard_label_text" style="font-weight: bold;"/>
                   <h:outputText id="eventName" value="#{qualificationsSearchDataBean.specificEventName}" styleClass="rt_standard_data_text"/>
                   <h:outputText id="blank1" value="<BR>" escape="false"/>
                   <h:outputText id="lastUpdatedHeading" value="Last Updated:" styleClass="rt_standard_label_text" style="font-weight: bold;"/>
                   <h:outputText id="lastUpdated" value="#{qualificationsSearchDataBean.specificEventAsOfDate}" styleClass="rt_standard_data_text"/>
                   <h:outputText id="blank2" value="<BR>" escape="false"/>
                   <h:outputText id="lastPublishedHeading" value="Last Published:" styleClass="rt_standard_label_text" style="font-weight: bold;"/>
                   <h:outputText id="lastPublishedDate" value="#{qualificationsSearchDataBean.specificEventPublishedDate}" styleClass="rt_standard_data_text"
                                  rendered="#{qualificationsSearchDataBean.specificEventPublishedDate != null}"/>
                   <h:outputText id="lastPublishedNA" value="(Never)" styleClass="rt_standard_data_text"
                                  rendered="#{qualificationsSearchDataBean.specificEventPublishedDate == null}"/>
                   <h:commandButton id="publishButton" type="submit" value="Publish" style="width: 55px;"
                                       action="#{qualificationsSearchActionBean.publishData}"/>
              </h:panelGrid>
              <h:outputText id="break1" value="<BR>" escape="false"/>
              <h:panelGrid id="searchGrid" columns="3" width="550" columnClasses="qual_crit_col1,qual_crit_col2,qual_crit_col3">
                   <h:outputText id="searchByText" value="Search By:*" />
                   <h:selectOneMenu id="personSearchByMenu" value="#{qualificationsSearchDataBean.searchBy}"
                                       onchange="javascript: updateSearchBy(this.value);"
                                       rendered="#{qualificationsSearchDataBean.personQualifications}">
                        <f:selectItem itemLabel="Person Name" itemValue="Name"/>
                        <f:selectItem itemLabel="Advisor Code" itemValue="CODE"/>
                        <f:selectItem itemLabel="Qualification Status" itemValue="QualStat"/>
                        <f:selectItem itemLabel="Firm Name" itemValue="FrmName"/>
                   </h:selectOneMenu>
                   <h:selectOneMenu id="firmSearchByMenu" value="#{qualificationsSearchDataBean.searchBy}"
                                       onchange="javascript: updateSearchBy(this.value);"
                                       rendered="#{qualificationsSearchDataBean.firmQualifications}">
                        <f:selectItem itemLabel="Firm Name" itemValue="Name"/>
                        <f:selectItem itemLabel="Firm Code" itemValue="FrmCode"/>
                        <f:selectItem itemLabel="Qualification Status" itemValue="QualStat"/>
                   </h:selectOneMenu>
                   <h:outputText id="blankCol1" value=" " escape="false" />
                   <h:outputText id="searchForText" value="Search For:" />
                   <h:panelGroup id="searchForGroup">
                        <h:outputText id="dispSearchForDIV" value="<DIV id='searchForDIV' style='display:block'>" rendered="#{qualificationsSearchDataBean.searchBy != 'QualStat'}" escape="false" />
                        <h:outputText id="noDispSearchForDIV" value="<DIV id='searchForDIV' style='display:none'>" rendered="#{qualificationsSearchDataBean.searchBy == 'QualStat'}" escape="false" />
                        <h:inputText id="searchForValue" value="#{qualificationsSearchDataBean.searchFor}" size="20" />
                        <h:outputText id="endSearchForDIV" value="</DIV>" escape="false" />
                        <h:outputText id="dispSearchQualValDIV" value="<DIV id='searchQualValDIV' style='display:block'>" rendered="#{qualificationsSearchDataBean.searchBy == 'QualStat'}" escape="false" />
                        <h:outputText id="noDispSearchQualValDIV" value="<DIV id='searchQualValDIV' style='display:none'>" rendered="#{qualificationsSearchDataBean.searchBy != 'QualStat'}" escape="false" />
                        <h:selectOneMenu id="searchQualValMenu" value="#{qualificationsSearchDataBean.searchQualVal}">
                             <f:selectItem itemLabel="All" itemValue="0"/>
                             <f:selectItem itemLabel="Qualified" itemValue="3"/>
                             <f:selectItem itemLabel="Not Qualified" itemValue="1"/>
                             <f:selectItem itemLabel="On Schedule" itemValue="2"/>
                        </h:selectOneMenu>
                        <h:outputText id="endSearchQualValDIV" value="</DIV>" escape="false" />
                   </h:panelGroup>
                   <h:commandButton type="submit" id="performSearchButton" value="Search" style="width: 55px;" onclick="javascript: setFlag();"
                                       action="#{qualificationsSearchActionBean.gatherSearchResults}"/>
              </h:panelGrid>
              <h:panelGrid id="personSearchNoteGrid" width="750" rendered="#{qualificationsSearchDataBean.personQualifications}">
                   <h:outputText id="personSearchNote" value="* When searching by Person Name, Advisor Code, or Firm Name, a blank search value will return all people." />
              </h:panelGrid>
              <h:panelGrid id="firmSearchNoteGrid" width="750" rendered="#{qualificationsSearchDataBean.firmQualifications}">
                   <h:outputText id="firmSearchNote" value="* When searching by Firm Name or Firm Code, a blank search value will return all firms." />
              </h:panelGrid>
              <h:outputText id="break2" value="<BR>" escape="false"/>
              <h:panelGroup id="searchPerformedGroup" rendered="#{qualificationsSearchDataBean.searchPerformed}">
                   <h:panelGroup id="resultsReturnedGroup" rendered="#{qualificationsSearchDataBean.searchResults != null}">
                        <h:panelGrid styleClass="rt_section_heading" id="resultCountGrid" width="750" cellpadding="0">
                             <h:outputText styleClass="outputText" id="resultsText1"
                                            value="Results #{qualificationsSearchDataBean.currRecBegin} to #{qualificationsSearchDataBean.currRecEnd} of #{qualificationsSearchDataBean.totalRecords}" style="font-weight: bold"/>
                        </h:panelGrid>
                        <h:panelGrid styleClass="rt_section_heading" id="resultPagesGrid" width="750" columns="2"
                                       columnClasses="qual_page_lst_col1,qual_page_lst_col2" cellpadding="0">
                             <h:outputText id="pageCntLabel" value="Page |" style="font-weight: bold"/>
                             <h:panelGroup id="pageGroup">
                                  <c:forEach var="pageCnt" begin="1" end="${qualificationsSearchDataBean.totalPages}">
                                       <c:choose>
                                            <c:when test="${pageCnt != qualificationsSearchDataBean.pageSelected}">
                                                 <f:verbatim>');"><c:out value="${pageCnt}"/></a> </f:verbatim>
                                            </c:when>
                                            <c:otherwise>
                                                 <f:verbatim><B><c:out value="${pageCnt}"/></B> </f:verbatim>
                                            </c:otherwise>
                                       </c:choose>
                                            <c:set var="rowCount" scope="page" value="${rowCount + 1}" />
                                            <c:if test ="${pageCnt == 33 || (pageCnt > 33 && rowCount == 31)}">
                                            <f:verbatim><c:out escapeXml="false" value="<BR>"/></f:verbatim>
                                            <c:set scope="page" var="rowCount" value="0" />
                                            </c:if>
                                  </c:forEach>
                             </h:panelGroup>
                        </h:panelGrid>
                        <h:dataTable border="0" cellpadding="2" cellspacing="0"
                                       columnClasses="qual_prs_col_prs_name,qual_prs_col_prs_code,qual_prs_col_status,qual_prs_col_blocked,qual_prs_col_exception,qual_prs_col_frm_name,qual_prs_col_rlt"
                                       headerClass="rt_panelgrid_dtsmallhdg"
                                       rowClasses="rt_list_row_odd,rt_list_row_even"
                                       styleClass="dataTable" id="qualPersonResultTable" width="750"
                                       value="#{qualificationsSearchDataBean.searchResults}" var="personList"
                                       rendered="#{qualificationsSearchDataBean.personQualifications}">
                             <h:column id="prsTablePrsName">
                                  <f:facet name="header">
                                       <h:outputText id="prsTablePrsNameHeading" value="Name" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:outputText id="prsTablePrsNameValue" value="#{personList.sle_per_rcg_fmt_n}" styleClass="rt_standard_data_text"/>
                             </h:column>
                             <h:column id="prsTablePrsCode">
                                  <f:facet name="header">
                                       <h:outputText id="prsTablePrsCodeHeading" value="Code" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:outputText id="prsTablePrsCodeValue" value="#{personList.agt_c}" styleClass="rt_standard_data_text"
                                                 converter="AdvisorCodeConverter"/>
                             </h:column>
                             <h:column id="prsTableQualification">
                                  <f:facet name="header">
                                       <h:outputText id="prsTableQualificationHeading" value="Qualification Status" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:selectOneMenu id="prsTableQualificationValue" value="#{personList.rcg_evt_ptc_sta_c}"
                                                      onchange="javascript: updateQualStat(#{qualificationsSearchDataBean.personQualTable.rowIndex},#{qualificationsSearchDataBean.personQualifications},#{qualificationsSearchDataBean.firmQualifications},#{personList.sle_per_unq_i},'#{personList.sle_per_rcg_fmt_n}',#{personList.rcg_evt_ptc_sta_c},this.value,'#{personList.rcg_evt_blk_f}','#{personList.rcg_evt_exc_f}');">
                                       <f:selectItem itemValue="1" itemLabel="Not Qualified"/>
                                       <f:selectItem itemValue="2" itemLabel="On Schedule"/>
                                       <f:selectItem itemValue="3" itemLabel="Qualified"/>
                                  </h:selectOneMenu>
                             </h:column>
                             <h:column id="prsTableBlocked">
                                  <f:facet name="header">
                                       <h:outputText id="prsTableBlockedHeading" value="Blocked" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:selectOneMenu id="prsTableBlockedValue" value="#{personList.rcg_evt_blk_f}"
                                                      onchange="javascript: updateBlockFlag(#{qualificationsSearchDataBean.personQualTable.rowIndex},#{qualificationsSearchDataBean.personQualifications},#{qualificationsSearchDataBean.firmQualifications},#{personList.sle_per_unq_i},'#{personList.sle_per_rcg_fmt_n}',#{personList.rcg_evt_ptc_sta_c},'#{personList.rcg_evt_blk_f}',this.value,'#{personList.rcg_evt_exc_f}');">
                                       <f:selectItem itemValue="Y" itemLabel="Yes"/>
                                       <f:selectItem itemValue="N" itemLabel="No"/>
                                  </h:selectOneMenu>                    
                             </h:column>
                             <h:column id="prsTableException">
                                  <f:facet name="header">
                                       <h:outputText id="prsTableExceptionHeading" value="Exception" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:selectOneMenu id="prsTableExceptionValue" value="#{personList.rcg_evt_exc_f}"
                                                 onchange="javascript: updateExceptionFlag(#{qualificationsSearchDataBean.personQualTable.rowIndex},#{qualificationsSearchDataBean.personQualifications},#{qualificationsSearchDataBean.firmQualifications},#{personList.sle_per_unq_i},'#{personList.sle_per_rcg_fmt_n}',#{personList.rcg_evt_ptc_sta_c},'#{personList.rcg_evt_blk_f}','#{personList.rcg_evt_exc_f}',this.value);">
                                       <f:selectItem itemValue="Y" itemLabel="Yes"/>
                                       <f:selectItem itemValue="N" itemLabel="No"/>
                                  </h:selectOneMenu>     
                             </h:column>
                             <h:column id="prsTableFirmName">
                                  <f:facet name="header">
                                       <h:outputText id="prsTableFirmNameHeading" value="Firm Name" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:outputText id="prsTableFirmNameValue" styleClass="rt_standard_data_text" value="#{personList.pri_agy_rcg_fmt_n}"/>
                             </h:column>
                             <h:column id="prsTableRelationship">
                                  <f:facet name="header">
                                       <h:outputText id="prsTableRelationshipHeading" value="Relationship" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:outputText id="prsTableRelationshipValue" value="#{personList.asc_rlt_typ_des_x}" styleClass="rt_standard_data_text"/>
                             </h:column>
                        </h:dataTable>
                        <h:dataTable border="0" cellpadding="2" cellspacing="0"
                                       columnClasses="qual_frm_col_frm_name,qual_frm_col_frm_code,qual_frm_col_status,qual_frm_col_blocked,qual_frm_col_exception"
                                       headerClass="rt_panelgrid_dtsmallhdg"
                                       rowClasses="rt_list_row_odd,rt_list_row_even"
                                       styleClass="dataTable" id="qualFirmResultTable" width="750"
                                       value="#{qualificationsSearchDataBean.searchResults}" var="firmList"
                                       rendered="#{qualificationsSearchDataBean.firmQualifications}">
                             <h:column id="frmTableFrmName">
                                  <f:facet name="header">
                                       <h:outputText id="frmTableFrmNameHeading" value="Firm Recognition Name" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:outputText id="frmTableFrmNameValue" value="#{firmList.pri_agy_rcg_fmt_n}" styleClass="rt_standard_data_text"/>
                             </h:column>
                             <h:column id="frmTableFrmCode">
                                  <f:facet name="header">
                                       <h:outputText id="frmTableFrmCodeHeading" value="Code" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:outputText id="frmTableFrmCodeValue" value="#{firmList.pri_agy_c}" styleClass="rt_standard_data_text"/>
                             </h:column>
                             <h:column id="frmTableQualification">
                                  <f:facet name="header">
                                       <h:outputText id="frmTableQualificationHeading" value="Qualification Status" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:selectOneMenu id="frmTableQualificationValue" value="#{firmList.pri_agy_qual_sta_c}"
                                                      onchange="javascript: updateQualStat(#{qualificationsSearchDataBean.firmQualTable.rowIndex},#{qualificationsSearchDataBean.personQualifications},#{qualificationsSearchDataBean.firmQualifications},#{firmList.pri_agy_unq_i},'#{firmList.pri_agy_rcg_fmt_n}',#{firmList.pri_agy_qual_sta_c},this.value,'#{firmList.pri_agy_blk_f}','#{firmList.pri_agy_exc_f}');">
                                       <f:selectItem itemValue="1" itemLabel="Not Qualified"/>
                                       <f:selectItem itemValue="2" itemLabel="On Schedule"/>
                                       <f:selectItem itemValue="3" itemLabel="Qualified"/>
                                  </h:selectOneMenu>
                             </h:column>
                             <h:column id="frmTableBlocked">
                                  <f:facet name="header">
                                       <h:outputText id="frmTableBlockedHeading" value="Blocked" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:selectOneMenu id="frmTableBlockedValue" value="#{firmList.pri_agy_blk_f}"
                                                      onchange="javascript: updateBlockFlag(#{qualificationsSearchDataBean.firmQualTable.rowIndex},#{qualificationsSearchDataBean.personQualifications},#{qualificationsSearchDataBean.firmQualifications},#{firmList.pri_agy_unq_i},'#{firmList.pri_agy_rcg_fmt_n}',#{firmList.pri_agy_qual_sta_c},'#{firmList.pri_agy_blk_f}',this.value,'#{firmList.pri_agy_exc_f}');">
                                       <f:selectItem itemValue="Y" itemLabel="Yes"/>
                                       <f:selectItem itemValue="N" itemLabel="No"/>
                                  </h:selectOneMenu>                    
                             </h:column>
                             <h:column id="frmTableException">
                                  <f:facet name="header">
                                       <h:outputText id="frmTableExceptionHeading" value="Exception" styleClass="rt_table_heading_left"/>
                                  </f:facet>
                                  <h:selectOneMenu id="frmTableExceptionValue" value="#{firmList.pri_agy_exc_f}"
                                                      onchange="javascript: updateExceptionFlag(#{qualificationsSearchDataBean.firmQualTable.rowIndex},#{qualificationsSearchDataBean.personQualifications},#{qualificationsSearchDataBean.firmQualifications},#{firmList.pri_agy_unq_i},'#{firmList.pri_agy_rcg_fmt_n}',#{firmList.pri_agy_qual_sta_c},'#{firmList.pri_agy_blk_f}','#{firmList.pri_agy_exc_f}',this.value);">
                                       <f:selectItem itemValue="Y" itemLabel="Yes"/>
                                       <f:selectItem itemValue="N" itemLabel="No"/>
                                  </h:selectOneMenu>     
                             </h:column>
                        </h:dataTable>
                   </h:panelGroup>
                   <h:panelGrid id="noPersonResultsGrid" columns="1" width="550" cellpadding="0" rendered="#{qualificationsSearchDataBean.searchResults == null}">
                        <h:outputText id="noPersonResultsMessage" styleClass="rt_standard_data_text" value="No results found." />
                   </h:panelGrid>
              </h:panelGroup>
              <h:commandButton id="updateQualButton" type="submit" value="" style="width: 0px;"
                                  action="#{qualificationsSearchActionBean.updateQualData}"/>
         </h:panelGroup>
         </h:form>
    </f:subview>

  • Java Server Faces on WebLogic 8.1 SP4 problem

    Hi,
              I'm very new to JSF development and WebLogic.
              I didn't find any JSF guide for WebLogic.
              I have built a simple JSF application using
              Java Studio Creator and exported WAR file for BEA WebLogic 8.1 etc.
              I uploaded the WAR to weblogic and deployed it.
              When I try to access the entry page I get the error below.
              I have not installed any JSF specific JAR-files to weblogic since the WAR file contains following files:
              Am I doing something really wrong ?
              Br,
              Kalle
              -clip-
              Archive Contents
              Name: firsttest.war
              Size: 7 641Kb
              Decompressed Size: 7 636Kb
              29 files in archive:
              Name | Size | Packed | Modified | Path
              activation.jar 82 297 82 297 24.02.2005 16:16 WEB-INF\lib\
              ApplicationBean1.class 429 429 24.02.2005 15:24 WEB-INF\classes\firsttest\
              commons-beanutils.jar 118 757 118 757 24.02.2005 16:16 WEB-INF\lib\
              commons-collections.jar 170 902 170 902 24.02.2005 16:16 WEB-INF\lib\
              commons-digester.jar 109 131 109 131 24.02.2005 16:16 WEB-INF\lib\
              commons-logging.jar 31 638 31 638 24.02.2005 16:16 WEB-INF\lib\
              jax-qname.jar 7 233 7 233 24.02.2005 16:16 WEB-INF\lib\
              jaxrpc-api.jar 56 908 56 908 24.02.2005 16:16 WEB-INF\lib\
              jaxrpc-impl.jar 4 227 190 4 227 190 24.02.2005 16:16 WEB-INF\lib\
              jaxrpc-spi.jar 39 179 39 179 24.02.2005 16:16 WEB-INF\lib\
              jsf-api.jar 360 883 360 883 24.02.2005 16:16 WEB-INF\lib\
              jsf-impl.jar 715 884 715 884 24.02.2005 16:16 WEB-INF\lib\
              jsfcl.jar 174 648 174 648 24.02.2005 16:16 WEB-INF\lib\
              mail.jar 520 705 520 705 24.02.2005 16:16 WEB-INF\lib\
              managed-beans.xml 948 948 24.02.2005 16:52 WEB-INF\
              MANIFEST.MF 106 106 25.02.2005 12:51 META-INF\
              navigation.xml 215 215 24.02.2005 15:24 WEB-INF\
              Page1.class 4 233 4 233 25.02.2005 12:48 WEB-INF\classes\firsttest\
              Page1.jsp 1 822 1 822 25.02.2005 12:48
              relaxngDatatype.jar 23 498 23 498 24.02.2005 16:16 WEB-INF\lib\
              ReportProvider.class 402 402 24.02.2005 16:42 WEB-INF\classes\firsttest\
              rowset.jar 126 268 126 268 24.02.2005 16:16 WEB-INF\lib\
              saaj-api.jar 35 830 35 830 24.02.2005 16:16 WEB-INF\lib\
              saaj-impl.jar 408 929 408 929 24.02.2005 16:16 WEB-INF\lib\
              SessionBean1.class 649 649 24.02.2005 15:24 WEB-INF\classes\firsttest\
              sqlx.jar 61 954 61 954 24.02.2005 16:16 WEB-INF\lib\
              stylesheet.css 671 671 24.02.2005 15:24 resources\
              web.xml 1 565 1 565 25.02.2005 12:51 WEB-INF\
              xsdlib.jar 536 818 536 818 24.02.2005 16:16 WEB-INF\lib\
              -clip-
              <Feb 25, 2005 2:28:57 PM EET> <Error> <HTTP> <BEA-101017> <[ServletContext(id=16357758,name=firsttest,conte
              xception.
              javax.servlet.jsp.JspException: Cannot find FacesContext
              at javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:405)
              at com.sun.faces.taglib.jsf_core.ViewTag.doStartTag(ViewTag.java:105)
              at jsp_servlet.__page1._jspService(__page1.java:178)
              at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
              at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1006)
              at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:419)
              at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:463)
              at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:315)
              at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.
              at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
              at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
              at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3764)
              at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2644)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)

    Hi,
              When I deploy JSF app onto Weblogic 8.1 sp4, I am getting the following error. Any idea?
              weblogic.management.DeploymentException: javax/servlet/jsp/el/ELException - with nested exception:
              [java.lang.NoClassDefFoundError: javax/servlet/jsp/el/ELException]
              at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.doCommit(SlaveDeployer.java:2423)
              at weblogic.management.deploy.slave.SlaveDeployer$Task.commit(SlaveDeployer.java:2138)
              at weblogic.management.deploy.slave.SlaveDeployer$Task.checkAutoCommit(SlaveDeployer.java:2237)
              at weblogic.management.deploy.slave.SlaveDeployer$Task.prepare(SlaveDeployer.java:2132)
              at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(SlaveDeployer.java:2384)
              at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:866)
              at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDeployer.java:594)
              at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:508)
              at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:25)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
              No Exception Messages
              Thanks for your help!!

  • Support for Java Server Faces

    I hope that in the next future will appear, on the market, IDE (such as JBuilder) or authoring tool (as Deamweaver), that support the creation of jsp pages. A sort of RAD for jsp+tag library.
    We expect such effort from software producer.
    Thanks
    Aldo Funicelli from Milan

    While I cannot share any specific product plans from any vendor, I would like to point out that all of the vendors of IDEs in the Java web application space are members of the JSR-127 expert group that is defining JavaServer Faces. Indeed, one of the primary design goals for the APIs is to ensure that development tools have sufficient information available to create high quality user interfaces at design time, so we're doing all we can to enable this kind of thing.
    As JavaServer Faces matures, I think you will be very pleased with the quality and quantity of tools support for it.
    Craig McClanahan

Maybe you are looking for

  • How do I stop email contacts 'suggestions'?

    How do I stop the 'helpful' email contacts suggested when I start to draft a new email?  Easy to accidentally send to wrong contact.  Is there anyway to (a) delete the names that currently come up and (b) stop new contacts being added? Solved! Go to

  • Warning message on startup

    Hi Everyone, I'm very new to Fireworks. Just starting to learn it with my trusty "Macromedia Studion 8 For Dummies"! On startup I'm getting the message "Problem loading the content XML. You've requested a language ('en') which does not have any avail

  • Convert csv to Excel

    Not sure if this is a Java or an MS Excel issue, but here it goes. In a web application I constructs an CSV file and open in Excel, the point is that I want automatically to apply an Excel template when the file is open in the client. How can I do th

  • Updating an XML Mode

    I've been studying the use of XML data in Oracle. So far I've been successful in passing xml data from my .NET application and using CLOBS to pass the data. I experimented with various functions such as DBMS_XMLSave...etc. So far, I'm loving it. I ca

  • HT201472 lost iphone 5

    I lost my iPhone 5 sometime ago - 25 Nov 2014 Unfortunately the police was of no help. I had to erase my data - so I did what any sane person would do... delete data the moment it was activated. It did get activated and data deleted. But I did not se