1 Reply Latest reply on Sep 20, 2008 3:04 PM by nbelaevski

    Ajax4JSF configuration issue

    chintzjboss

      Hi,

      We are developing JSF application which uses ajax4jsf. Following version of jars distribution we are using.

      ajax4jsf-1.1.1.jar
      myfaces-api-1.1.5.jar
      myfaces-impl-1.1.5.jar
      tomahawk-1.1.6.jar

      Development environment: JDK 1.4 and Websphere 6.0 app server.

      Problem description:
      when i am using <a4j:support> inside <f:selectItem> it is giving below exception. My managed bean is in "request" scope. but if i put it into "session" scope then ajax call works fine.

      ---- Begin backtrace for Nested Throwables
      
      java.lang.NoSuchMethodError: java.lang.StringBuffer: method insert(ILjava/lang/CharSequence;)Ljava/lang/StringBuffer; not found
      
       at javax.faces.component._SelectItemsIterator.getPathToComponent(_SelectItemsIterator.java:232)
      
       at javax.faces.component._SelectItemsIterator.getPathToComponent(_SelectItemsIterator.java:203)
      
       at javax.faces.component._SelectItemsIterator.hasNext(_SelectItemsIterator.java:134)
      
       at javax.faces.component._SelectItemsUtil.matchValue(_SelectItemsUtil.java:47)
      
       at javax.faces.component.UISelectOne.validateValue(UISelectOne.java:56)
      
       at javax.faces.component.UIInput.validate(UIInput.java:354)
      
       at javax.faces.component.UIInput.processValidators(UIInput.java:184)
      
       at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:627)
      
       at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:627)
      
       at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:627)
      
       at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:627)
      
       at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:627)
      
       at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:627)
      
       at javax.faces.component.UIForm.processValidators(UIForm.java:73)
      
       at javax.faces.component.UIComponentBase.processValidators(UIComponentBase.java:627)
      
       at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:149)
      
       at org.ajax4jsf.component.AjaxViewRoot.access$201(AjaxViewRoot.java:57)
      
       at org.ajax4jsf.component.AjaxViewRoot$3.invokeRoot(AjaxViewRoot.java:319)
      
       at org.ajax4jsf.context.JsfOneOneInvoker.invokeOnRegionOrRoot(JsfOneOneInvoker.java:56)
      
       at org.ajax4jsf.context.AjaxContextImpl.invokeOnRegionOrRoot(AjaxContextImpl.java:170)
      
       at org.ajax4jsf.component.AjaxViewRoot.processValidators(AjaxViewRoot.java:333)
      
       at org.apache.myfaces.lifecycle.ProcessValidationsExecutor.execute(ProcessValidationsExecutor.java:32)
      
       at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:95)
      
       at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:70)
      
       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:139)
      
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1212)
      
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1173)
      
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:92)
      
       at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:100)
      
       at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:142)
      
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:77)
      
       at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
      
       at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
      
       at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:142)
      
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:77)
      
       at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
      
       at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:142)
      
       at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:77)
      
       at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:626)
      
       at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:2837)
      
       at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:220)
      
       at com.ibm.ws.webcontainer.VirtualHost.handleRequest(VirtualHost.java:204)
      
       at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1681)
      
       at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:77)
      
       at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:421)
      
       at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:367)
      
       at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:94)
      
       at com.ibm.ws.tcp.channel.impl.WorkQueueManager.requestComplete(WorkQueueManager.java:548)
      
       at com.ibm.ws.tcp.channel.impl.WorkQueueManager.attemptIO(WorkQueueManager.java:601)
      
       at com.ibm.ws.tcp.channel.impl.WorkQueueManager.workerRun(WorkQueueManager.java:934)
      
       at com.ibm.ws.tcp.channel.impl.WorkQueueManager$Worker.run(WorkQueueManager.java:1021)
      
       at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1332)
      


      we don't what is real cause of this error. and we can't put all our managed bean into session scope.


      Kindly suggest proper resoultion.

      Regards
      Chintan