This discussion is archived
8 Replies Latest reply: Dec 21, 2012 5:58 AM by Farshid Zarinara RSS

JHS lov autocomplete is not work correctly

Farshid Zarinara Newbie
Currently Being Moderated
Jdeveloper:Studio Edition Version 11.1.2.2.0
Jheadstart:11.1.2.1.28

hi steven
i sent a testcase to idevcoe_nl@oracle.com
when i have a field with default value in form layout , the JHS LOV autocomplete is not work correctly
  • 1. Re: JHS lov autocomplete is not work correctly
    Steven Davelaar Employee ACE
    Currently Being Moderated
    Farshid,

    I ran the tescase but the LOV autocomplete works fine.
    Can you provide detailed sequence of steps to reproduce the issue?

    Steven Davelaar,
    JHeadstart team.
  • 2. Re: JHS lov autocomplete is not work correctly
    Farshid Zarinara Newbie
    Currently Being Moderated
    Hi steven and thank you for reply
    the problem is in the form layout not in the table layout
    after i click the new coutries button .
    in the form layout
    1-I entered the CountryId -----Tab
    2-I entered the CountryName ---- Tab
    3-and finally I entered E(for Europe) ----Tab

    and the errore message was --->Attribute CountryId in AppModule.CountriesView1 is required.

    Farshid
  • 3. Re: JHS lov autocomplete is not work correctly
    Steven Davelaar Employee ACE
    Currently Being Moderated
    Farshid,

    OK, I now was able to reproduce the problem.
    Can you try following:
    - subclass LovItemBean class and override method validateACtion as follows:

    public String validationAction()
    {
    String result = super.validationAction();
    if (isValidationStarted() && getLovValidationRow()!=null)
    {
    JsfUtils.getFacesContext().renderResponse();
    }
    return result;
    }

    Steven Davelaar,
    JHeadstart Team.
  • 4. Re: JHS lov autocomplete is not work correctly
    Farshid Zarinara Newbie
    Currently Being Moderated
    thanks steven but it is not work for me
    this is my subclass


    package oracle.jheadstart.controller.jsf.bean;

    import oracle.jheadstart.controller.jsf.util.JsfUtils;

    public class LovItemBean1 extends LovItemBean {
    public LovItemBean1() {
    super();
    }
    public String validationAction()
    {
    String result = super.validationAction();
    if (isValidationStarted() && getLovValidationRow()!=null)
    {
    JsfUtils.getFacesContext().renderResponse();
    }
    return result;
    }
    }


    and it is not work
  • 5. Re: JHS lov autocomplete is not work correctly
    Farshid Zarinara Newbie
    Currently Being Moderated
    my problem is not solved
  • 6. Re: JHS lov autocomplete is not work correctly
    Steven Davelaar Employee ACE
    Currently Being Moderated
    Farshid,

    OK, investigated this in more detail.
    You are right, the fix I proposed before is not working.
    It turns out you don't need a subclass at all, all you need to do is add two properties (immediate=true and partialSubmit=true) to the hidden button that is used to validate the LOV value:

    <f:facet name="end">
    <af:panelGroupLayout id="pgl0" valign="top" layout="horizontal">
    <af:commandLink immediate="true" partialSubmit="true" id="cl0"
    actionListener="#{pageFlowScope.CountriesRegionNameLovItem.lovIconClicked}">
    <af:image source="/jheadstart/images/lov.png"
    id="CountriesRegionNameIcon" clientComponent="true"/>
    </af:commandLink>
    <af:commandButton text="hidden" id="cb4" rendered="false" partialSubmit="true"
    immediate="true"
    action="#{pageFlowScope.CountriesRegionNameLovItem.validationAction}"
    binding="#{pageFlowScope.CountriesRegionNameLovItem.validationButton}"/>
    </af:panelGroupLayout>
    </f:facet>

    To generate these properties you need to modify the formLovItem.vm and tableLovItem.vm templates

    Steven Davelaar,
    Jheadstart Team.
  • 7. Re: JHS lov autocomplete is not work correctly
    Farshid Zarinara Newbie
    Currently Being Moderated
    thank you Steven
  • 8. Re: JHS lov autocomplete is not work correctly
    Farshid Zarinara Newbie
    Currently Being Moderated
    Hi Steven
    Today again I have a problem with JHS lov autocomplete

    Error Message Method not found: oracle.jheadstart.controller.jsf.bean.JhsSearchBean@3debed.quickSearch(java.lang.String, java.lang.Object)
    Stack Trace javax.el.MethodNotFoundException: Method not found: oracle.jheadstart.controller.jsf.bean.JhsSearchBean@3debed.quickSearch(java.lang.String, java.lang.Object)
         at com.sun.el.util.ReflectionUtil.getMethod(Unknown Source)
         at com.sun.el.parser.AstValue.getMethodInfo(Unknown Source)
         at com.sun.el.MethodExpressionImpl.getMethodInfo(Unknown Source)
         at oracle.adf.controller.internal.util.ELInterfaceImpl.getReturnType(ELInterfaceImpl.java:214)
         at oracle.adfinternal.controller.activity.MethodCallActivityLogic.execute(MethodCallActivityLogic.java:136)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.executeActivity(ControlFlowEngine.java:1091)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.doRouting(ControlFlowEngine.java:982)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.doRouting(ControlFlowEngine.java:880)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.routeFromActivity(ControlFlowEngine.java:553)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.performControlFlow(ControlFlowEngine.java:158)
         at oracle.adfinternal.controller.application.NavigationHandlerImpl.handleAdfcNavigation(NavigationHandlerImpl.java:115)
         at oracle.adfinternal.controller.application.NavigationHandlerImpl.handleNavigation(NavigationHandlerImpl.java:84)
         at org.apache.myfaces.trinidadinternal.application.NavigationHandlerImpl.handleNavigation(NavigationHandlerImpl.java:50)
         at oracle.jheadstart.controller.jsf.application.JhsNavigationHandlerImpl.handleNavigation(JhsNavigationHandlerImpl.java:149)
         at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:130)
         at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:190)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:130)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:461)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:134)
         at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:112)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:130)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:461)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:134)
         at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:106)
         at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:159)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:130)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:461)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:134)
         at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:112)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:130)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:461)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:134)
         at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:106)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:1134)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:402)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:207)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:508)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:173)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:125)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:199)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.jheadstart.controller.jsf.AuthenticationFilter.doFilter(AuthenticationFilter.java:282)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
         at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)

    and i think
    the problem is not solved yet

    but it is work som times

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points