Executing AJAX with a JSF Button

Is there a way to get a JSF Button to fire off an AJAX event, which could call a Page Bean method?
I'm thinking something like a DropDown's valueChangeListenerExpression...you can assign a method to it and, when the DropDown is changed, it fires off method without submitting the page.
actionListenerExpression does not seem to do this.
Any ideas?

I'm using Woodstock components.
I don't necessarily think its a component library issue, though. I simply want to be able to fire off an AJAX event with any component I want, whether its changing a pulldown or clicking a link/button.
For example, a workaround for this would be to have the button modify the value of a hidden field. This would then fire off the processValueChange method of the component via AJAX and then I could put my code in there. It just doesn't make sense to me why I wouldn't be able to do this directly.

Similar Messages

  • Ajax with jsf problem

    Hi
    I have small problem here. I worked struts with ajax before. currently. I m trying to work on ajax with jsf, here i m getting the problem. i created one ajaxaction class its extends httpservlets. then i created one manage bean, then i want to call the class using javascript, i dont know how to do. can any one help for me.
    Thanks

    I have never worked with the AJAX + JSF combo before, but I know that you can invoke a managed bean action using javascript and the h:commandLink and h:commandButton elements.
    <h:form id="form1">
        <h:commandLink id="link1" action="#{MyBean.action1}"><h:outputText value="link" /></h:commandLink>
        <h:commandButton id="button1" action="#{MyBean.action2}" value="button" />
    </h:form>
    <f:verbatim><script>
        function myFunction() {
            document.getElementById('form1:link1').onclick(); // this invokes the #{MyBean.action1}
            document.getElementById('form1:button1').click(); // this invokes the #{MyBean.action2}
    </script></f:verbatim>I haven't tried other ways yet. But this might give you an idea.

  • Executing Javascript with button

    How can I go about executing javascript with an item level button?
    In the HTML DB 2 day tutorial it says this:
    Calling a JavaScript from a button is a great way to confirm a request. Oracle HTML
    DB actually uses this technique for the delete operation of most objects. For example,
    when you delete a button, a JavaScript Alert Box appears asking you to confirm your
    request. Consider the following example:
    <script language="JavaScript1.1" type="text/javascript">
    function deleteConfirm(msg)
    var confDel = msg;
    if(confDel ==null)
    confDel= confirm("Would you like to perform this delete action?");
    else
    confDel= confirm(msg);
    if (confDel== true)
    doSubmit('Delete');
    </script>
    This example creates a function to confirm a delete action and then calls that function
    from a button. Note that the function optionally submits the page and sets the value of
    the internal variable :REQUEST to "Delete," thus performing the delete using a process
    that conditionally executes based on the value of request.
    Note that when you create the button you would need to select the Action Redirect to
    URL without submitting page . Then, you would specify a URL target such as the
    following:
    javascript:confirmDelete('Would you like to perform this delete action?');
    Can I only do this from a region button?

    hi,
    I have created a javascript form validation and finally (if its passes the validation) I am setting the :REQUEST as doSubmit('GO');
    I am calling a conditional process with condition as request = expression1
    with expression 1 as GO.
    The javascript is as follows
    function message_name_not_null(){
    if(document.getElementById('P14_MESSAGE_NAME').value.length==0)
    alert("Message Name is Mandatory!!");
    return;
    else if(document.getElementById('P14_MESSAGE_TEXT').value.length==0)
    alert("Message Text is Mandatory!!");
    return;
    else
    doSubmit('GO');
    My problem is my process is not getting called in button click(I have called the javascript from this button as javascript:message_name_not_null(); in Optional URL Redirect section)
    I have specified the :REQUEST value in the branches also.
    Any sort of help please..
    Thanks in Advance
    Kaushik

  • Ajax with JSF Component

    How is it possible to embed Ajax with JSF Components. Every JSF request by default hits the Faces Servlet. Is it possible to by pass this flow for certain events?

    Wouldn't use it, that project is practically dead. It's has never been further developed/documented/supported since version 0.1 alpha in 2005.
    Ajax4jsf is still active and has excellent documentation/support.
    It might be good to know that the upcoming JSF 2.0 provides ajaxical capabilities.

  • Can I use Ajax with jsf

    Hi All,
    Is JSF 1.1 supports AJAX or not???
    Please tell me..

    JSF RI 1.1 = Java Server Faces Reference Implementation 1.1.
    It is the Sun reference implementation of JSF. There are also 3rd party implementations of JSF available, like MyFaces, Tomahawk, IceFaces, ADF, etcetera.
    If you aren't limited to JSF RI version 1.1, I recommend you to use version 1.2. It provides more features and benefits.
    Here are some links:
    https://javaserverfaces.dev.java.net
    http://java.sun.com/javaee/javaserverfaces/1.2/docs/tlddocs/
    http://jsftutorials.net
    http://java.sun.com/javaee/5/docs/tutorial/doc/ (starting at chapter 9)
    http://jboss.org/projects/jbossAjax4jsf (most widely used AJAX library for JSF)

  • Postback on Ajax render on JSF 2.0

    Hallo everyone,
    I have a .xhtml page divided in several h:form and I am trying to use the Ajax feature to refresh just some part of the page following user clicks without navigation in other pages.
    The problem is that for example the first click on a button in one of these forms is not recognized as a Postback so the 2-5 Phases are skipped (I logged the LifeCycle).
    The second click on that form then works well. BUT it will need two clicks on another form to have again a Postback.
    I am having this problem both using f:ajax tag either jsf.ajax.request script.
    Do I have to use a huge h:form containing all my elements? Or can I have force a postback trough a PhaseListener? How?
    Please help,
    Christian

    First of all thanks for the reply.
    I am already using the tag with different render forms as:
    <h:form id="form1" >
    <h:commandButton id="idButton1" image="/images/myImage1.png" actionListener="#{BeanJSF.doAction}" >
    <f:attribute name="paramID" value="#{BeanJSF.currentResultsData.rowData.recordID}"/>
    <f:ajax execute="@form" render="@form :form2" />
    </h:commandButton>
    <h:outputText value="BeanJSF.someResult" />
    </h:form>
    <h:form id="form2" >
    <h:commandButton id="idButton2" image="/images/myImage2.png" actionListener="#{BeanJSF.doOtherAction}" >
    <f:attribute name="paramID" value="#{BeanJSF.currentResultsData.rowData.recordID}"/>
    <f:ajax execute="@form" render="@form :form1" />
    </h:commandButton>
    <h:outputText value="BeanJSF.someOtherResult" />
    </h:form>
    My problem is that the first submit of one form is not a Postback (from the Lifecycle point of view) so just the second click goes trough the 2-5 phases.
    Do you have any ideas?
    Christian

  • Stuck Thread when closing dialog window with 'X' browser button

    Hello,
    I moved my application to JDev 11.1.1.3 and it seems I've got a problem appearing since. Here it is:
    I've a bouded task-flow having 5-6 JSP pages.
    3 of them can open a dialog window to show a PDF report using dialog:report such as:
    <control-flow-rule id="__1">
    <from-activity-id id="__2">etats</from-activity-id>
    <control-flow-case id="__3">
    <from-outcome id="__7">dialog:goReportEtat</from-outcome>
    <to-activity-id id="__8">report</to-activity-id>
    </control-flow-case>
    </control-flow-rule>
    <control-flow-rule id="__9">
    <from-activity-id id="__10">real</from-activity-id>
    <control-flow-case id="__11">
    <from-outcome id="__13">dialog:goReportReal</from-outcome>
    <to-activity-id id="__12">report</to-activity-id>
    </control-flow-case>
    </control-flow-rule>
    <control-flow-rule id="__14">
    <from-activity-id id="__15">previ</from-activity-id>
    <control-flow-case id="__16">
    <from-outcome id="__18">dialog:goReportPrevi</from-outcome>
    <to-activity-id id="__17">report</to-activity-id>
    </control-flow-case>
    </control-flow-rule>
    When a go to "Etat" page, launch my report window, close it with the 'X' button of the browser and going back to let's say "Real" page, the page just won't load completely and I got this error after 10 mins:
    *<Error> <WebLogicServer> <BEA-000337> <[STUCK] ExecuteThread: '13' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "616" seconds working on the request "weblogic.servlet.internal.ServletRequestImpl@1c68ec0[*
    *GET /myapp/faces/javascript/favicon.js?_adf.ctrl-state=1303iqjhth_40 HTTP/1.1*
    *User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.2.6) Gecko/20100625 Firefox/3.6.6 (.NET CLR 3.5.30729)*
    *Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8*
    *Accept-Language: fr*
    *Accept-Encoding: gzip,deflate*
    *Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7*
    *Keep-Alive: 115*
    *Connection: keep-alive*
    *Referer: http://127.0.0.1:7101/myapp/faces/my-flow/real?_adf.ctrl-state=1303iqjhth_7&_afrLoop=255213241325922*
    *Cookie: JSESSIONID=t942Mx3KqWtx05CvKcYMfGyCKNBV9nf27jsvLcpRMKJJnyng7Gjj!1056711659*
    *]", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:*
    *     sun.misc.Unsafe.park(Native Method)*
    *     java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)*
    *     java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:747)*
    *     java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:778)*
    *     java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1114)*
    *     java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:186)*
    *     java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:262)*
    *     oracle.adf.model.dcframe.DataControlFrameImpl.lock(DataControlFrameImpl.java:294)*
    *     oracle.adf.model.dcframe.DataControlFrameImpl.beginRequest(DataControlFrameImpl.java:336)*
    *     oracle.adf.model.BindingContext.setCurrentFrame(BindingContext.java:2107)*
    *     oracle.adf.model.BindingContext.setCurrentDataControlFrame(BindingContext.java:2009)*
    *     oracle.adfinternal.controller.util.model.DCFrameImpl.makeCurrent(DCFrameImpl.java:126)*
    *     oracle.adfinternal.controller.state.ViewPortContextImpl.makeCurrent(ViewPortContextImpl.java:1006)*
    *     oracle.adfinternal.controller.state.RequestState.setCurrentViewPortContext(RequestState.java:159)*
    *     oracle.adfinternal.controller.state.ControllerState.setCurrentViewPort(ControllerState.java:1247)*
    *     oracle.adfinternal.controller.state.ControllerState.releaseViewPort(ControllerState.java:1413)*
    *     oracle.adfinternal.controller.state.ControllerState.processViewPortReleaseQueue(ControllerState.java:2114)*
    *     oracle.adfinternal.controller.application.SyncNavigationStateListener.afterPhase(SyncNavigationStateListener.java:62)*
    *     oracle.adfinternal.controller.lifecycle.ADFLifecycleImpl$PagePhaseListenerWrapper.afterPhase(ADFLifecycleImpl.java:531)*
    *     oracle.adfinternal.controller.lifecycle.LifecycleImpl.internalDispatchAfterEvent(LifecycleImpl.java:120)*
    *     oracle.adfinternal.controller.lifecycle.LifecycleImpl.dispatchAfterPagePhaseEvent(LifecycleImpl.java:168)*
    *     oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$PhaseInvokerImpl.dispatchAfterPagePhaseEvent(ADFPhaseListener.java:124)*
    *     oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.afterPhase(ADFPhaseListener.java:70)*
    *     oracle.adfinternal.controller.faces.lifecycle.ADFLifecyclePhaseListener.afterPhase(ADFLifecyclePhaseListener.java:53)*
    *     oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:364)*
    *     oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:205)*
    *     javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)*
    *     weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)*
    *     weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)*
    *     weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)*
    *     weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)*
    *     weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)*
    *     com.figaret.payroll.view.util.ApplicationSessionExpiryFilter.doFilter(ApplicationSessionExpiryFilter.java:124)*
    *     weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)*
    *     oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)*
    *     weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)*
    *     oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:97)*
    *     org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)*
    *     oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)*
    *     org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)*
    *     org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)*
    *     org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)*
    *     org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)*
    *     weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)*
    *     oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:330)*
    *     weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)*
    *     weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)*
    *     weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)*
    *     weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.doIt(WebAppServletContext.java:3684)*
    *     weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3650)*
    *     weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)*
    *     weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)*
    *     weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2268)*
    *     weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2174)*
    *     weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1446)*
    *     weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)*
    *     weblogic.work.ExecuteThread.run(ExecuteThread.java:173)*
    After a while, my Weblogic Server throws an outOfMemoryException and I have to restart it which is dreadful in production mode.
    My report page contains just an inline tag receiving a bytes Arrays from a Servlet to show the PDF doc:
    <?xml version='1.0' encoding='windows-1252'?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
    <jsp:directive.page contentType="text/html;charset=windows-1252"/>
    <f:view>
    <af:document title="#{res['report.title']}" id="d1">
    <af:form id="f1">
    <af:panelStretchLayout startWidth="0px" endWidth="0px" topHeight="30px"
    bottomHeight="30px" styleClass="AFVisualRoot"
    id="pt_psl1">
    <f:facet name="top">
    <!--<af:commandButton text="#{res['template.null']}" id="close"
    partialSubmit="true" visible="true"
    immediate="true">
    <af:returnActionListener/>
    </af:commandButton>-->
    </f:facet>
    <f:facet name="center">
    <af:inlineFrame shortDesc="#{res['report.title']}" id="if1"
    source="/pdf/report.pdf"/>
    </f:facet>
    </af:panelStretchLayout>
    </af:form>
    </af:document>
    </f:view>
    </jsp:root>
    I tested by putting a button into my report page to close the page and containing a returnActionListener tag and when I close the page with this button, everything is fine.
    <af:commandButton text="" id="close"
    partialSubmit="true" visible="true"
    immediate="true">
    <af:returnActionListener/>
    </af:commandButton>
    Is this normal?
    My problem is that our users are used to close the dialog using 'X' button so it is a 'must' for me to make it work.
    Is this normal? OR Am i doing something wrong there?
    I spent a full week looking for mistakes and searching into the net but I'm lost there
    Any help welcome! :)
    Jack

    Hi Puthanampatti,
    That's what I thought and I did try to do what you said:
    I added this into my report page:
    <f:facet name="metaContainer">
    <af:resource type="javascript">
    window.onbeforeunload = simulateClick;
    function simulateClick() {
    if (document.getElementById('close') != null) {
    // simulate a click
    //alert('simulate a click');
    document.getElementById('close').click();
    //alert('CLICKED');
    </af:resource>
    </f:facet>
    And here my close button into report page:
    <af:commandButton text="#{res['template.null']}" id="close"
    partialSubmit="true" visible="true"
    clientComponent="true" immediate="true">
    <af:returnActionListener/>
    </af:commandButton>
    But, this doesn't resolve the problem.
    When doing so, I have this javascript error:
    Erreur : AdfXMLRequest is not defined
    Fichier Source : http://127.0.0.1:7101/payroll/afr/partition/gecko/default/opt/core-11.1.1.3.0-0084.js
    Ligne : 457
    SO now I'm quite lost and dunno what to do next.
    I am 99% sure it was working well when I was developing with JDev11.1.1.2.
    Is it not a regression?
    Jack

  • Problem with Richfaces, JSF 1.2, Facelets application

    Hello
    I have trouble using Weblogic 10.3.3 with my JSF-application which is constructed using Richfaces 3.3.3 and Facelets. First I had problems with deployment but with adding weblogic.xml to project.
    This is the weblogic.xml content :
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <weblogic-web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-web-app http://www.bea.com/ns/weblogic/weblogic-web-app/1.0/weblogic-web-app.xsd"
    xmlns="http://www.bea.com/ns/weblogic/weblogic-web-app">
    <library-ref>
    <library-name>jsf</library-name>
    <specification-version>1.2</specification-version>
    <implementation-version>1.2</implementation-version>
    <exact-match>false</exact-match>
    </library-ref>
    <container-descriptor>
    <prefer-web-inf-classes>true</prefer-web-inf-classes>
    </container-descriptor>
    </weblogic-web-app>
    This application works without problems in Glassfish 2.1 but when I try to access my application in Weblogic, I get following exception :
    Error 500--Internal Server Error
    javax.el.ELException: /Main.xhtml: The class 'katva.soa.logging.web.soaloggerweb.SessionController' does not have the property 'navigateToMonitor'.
         at com.sun.facelets.compiler.AttributeInstruction.write(AttributeInstruction.java:53)
         at com.sun.facelets.compiler.UIInstructions.encodeBegin(UIInstructions.java:39)
         at com.sun.facelets.compiler.UILeaf.encodeAll(UILeaf.java:149)
         at javax.faces.component.UIComponent.encodeAll(UIComponent.java:942)
         at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
         at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
         at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
         at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:109)
         at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
         at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
         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 org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)
         at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
         at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)
         at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:330)
         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.doIt(WebAppServletContext.java:3684)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3650)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2268)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2174)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1446)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    SessionController - managed bean has method mentioned above, here is the part of the page where the SessionController - bean is referenced:
    <a4j:form id="linkForm">
    <li><h:commandLink value="#{msgs.Main_logSearchLink}" action="#{SessionController.navigateToMonitor}"/></li>
    <li><h:commandLink value="#{msgs.Main_maintenanceLink}" action="#{SessionController.navigateMaintenance}"/></li>
    </a4j:form>
    Could someone help with this ? I am getting desperate and I would need to solve this quite quickly...
    Thank you for everyone who can help with this
    Best Regards Tuomas Katva

    This is probably related: Facelets not rendered on Weblogic 10.3.3
    A step by step example
    - create a web.xml file, with the following contents:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://java.sun.com/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
             version="2.5">
        <context-param>
            <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
            <param-value>.xhtml</param-value>
        </context-param>
        <context-param>
            <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
            <param-value>server</param-value>
        </context-param>
        <context-param>
            <param-name>org.richfaces.SKIN</param-name>
            <param-value>blueSky</param-value>
        </context-param>
        <context-param>
            <param-name>org.richfaces.CONTROL_SKINNING</param-name>
            <param-value>enable</param-value>
        </context-param>
        <filter>
            <filter-name>RichFaces Filter</filter-name>
            <filter-class>org.ajax4jsf.Filter</filter-class>
        </filter>
        <filter-mapping>
            <filter-name>RichFaces Filter</filter-name>
            <servlet-name>Faces Servlet</servlet-name>
            <dispatcher>REQUEST</dispatcher>
            <dispatcher>FORWARD</dispatcher>
            <dispatcher>INCLUDE</dispatcher>
        </filter-mapping>
        <servlet>
            <servlet-name>Faces Servlet</servlet-name>
            <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>Faces Servlet</servlet-name>
            <url-pattern>/faces/*</url-pattern>
        </servlet-mapping>
        <listener>
            <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
        </listener>
    </web-app>- create a faces-config.xml file with at least the following contents:
    <?xml version='1.0' encoding='UTF-8'?>
    <faces-config xmlns="http://java.sun.com/xml/ns/javaee"
                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"
                  version="1.2">
        <application>
            <view-handler>com.sun.facelets.FaceletViewHandler</view-handler>
        </application>
    </faces-config>- create an example page
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE html
            PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
            "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:a4j="http://richfaces.org/a4j"
          xmlns:rich="http://richfaces.org/rich">
    <head>
        <title></title>
    </head>
    <body>
    <a4j:form id="form">
        <rich:panel header="Login" style="width: 750px">
            <h:panelGrid columns="3">
                <h:outputText id="label" value="Password"/>
                <h:inputText id="login" value="Type Your Password"/>
                <rich:message for="login"/>
                <f:facet name="footer">
                    <rich:toolBar height="20" itemSeparator="line">
                        <rich:toolBarGroup location="right">
                            <h:commandButton value="Click To Login"/>
                        </rich:toolBarGroup>
                    </rich:toolBar>
                </f:facet>
            </h:panelGrid>
        </rich:panel>
    </a4j:form>
    </body>
    </html>- package this into the following structure:
    WAR
        WEB-INF
             faces-config.xml
             web.xml
             lib
                commons-beanutils-1.7.0.jar
                commons-collections-3.2.jar
                commons-digester-1.8.jar
                commons-logging-1.0.4.jar
                jhighlight-1.0.jar
                jsf-api.jar
                jsf-facelets.jar
                jsf-impl.jar
                jstl-api-1.2.jar
                jstl-impl-1.2.jar
                richfaces-api-3.3.1.GA.jar
                richfaces-impl-3.3.1.GA.jar
                richfaces-ui-3.3.1.GA.jar
        test.xhtmlAnd deploy it to WebLogic. Upon deployment the following logging is observed:
    Jul 4, 2011 2:09:44 PM com.sun.faces.config.ConfigureListener contextInitialized
    INFO: Initializing Mojarra (1.2_14-b01-FCS) for context '/JSFFaceletsRichFaces'
    Jul 4, 2011 2:09:45 PM com.sun.faces.spi.InjectionProviderFactory getProviderInstance
    SEVERE: JSF1030: The specified InjectionProvider implementation 'com.bea.faces.WeblogicInjectionProvider' cannot be loaded.
    Jul 4, 2011 2:09:45 PM com.sun.faces.spi.InjectionProviderFactory createInstance
    INFO: JSF1048: PostConstruct/PreDestroy annotations present.  ManagedBeans methods marked with these annotations will have said annotations processed.
    Jul 4, 2011 2:09:45 PM org.ajax4jsf.cache.CacheManager getCacheFactory
    INFO: Selected [org.ajax4jsf.cache.LRUMapCacheFactory] cache factory
    Jul 4, 2011 2:09:45 PM org.ajax4jsf.cache.LRUMapCacheFactory createCache
    INFO: Creating LRUMap cache instance using parameters: {org.richfaces.CONTROL_SKINNING=enable, javax.faces.STATE_SAVING_METHOD=server, javax.faces.DEFAULT_SUFFIX=.xhtml, com.sun.faces.injectionProvider=com.bea.faces.WeblogicInjectionProvider, org.richfaces.SKIN=blueSky}
    Jul 4, 2011 2:09:45 PM org.ajax4jsf.cache.LRUMapCacheFactory createCache
    INFO: Creating LRUMap cache instance of default capacity
    Jul 4, 2011 2:09:45 PM org.ajax4jsf.cache.CacheManager getCacheFactory
    INFO: Selected [org.ajax4jsf.cache.LRUMapCacheFactory] cache factory
    Jul 4, 2011 2:09:45 PM org.ajax4jsf.cache.LRUMapCacheFactory createCache
    INFO: Creating LRUMap cache instance using parameters: {org.richfaces.CONTROL_SKINNING=enable, javax.faces.STATE_SAVING_METHOD=server, javax.faces.DEFAULT_SUFFIX=.xhtml, com.sun.faces.injectionProvider=com.bea.faces.WeblogicInjectionProvider, org.richfaces.SKIN=blueSky}
    Jul 4, 2011 2:09:45 PM org.ajax4jsf.cache.LRUMapCacheFactory createCache
    INFO: Creating LRUMap cache instance of default capacityEnter the URL to access the application, for example, http://localhost:7001/JSFFaceletsRichFaces/faces/test.xhtml
    et voila RichFaces and Facelets on WebLogic

  • Execute JavaScript from Item Region Button

    How do I execute a JavaScript using a button displayed among this region's items?
    When I create a "button in a region position", I am given the "Optional URL Redirect" which can be used to specify the JavaScript as the URL Target. This option is not available when the button is created to be displayed among the region's items - and I don't understand why there is this limitation on Item Level Buttons.

    Scott,
    I have no idea how I got this new OTN Id? Tell me what you know!
    I signed on using what I believe is my regular Email Address, but I am no longer attached to the old OTN Id. And I no longer have the gold medal next to my name. Isn't that sad :(
    I really ticks me that we are still (after how many years with Oracle) unable to change our Email Address and keep the same account. What is that with Oracle? Can't anyone teach those people good design (like don't use an externally supplied key as the internal identifier for your customer). I recently sold my Web Domain, and so my Email Address will soon change. The new owner is allowing me to keep my Email Address until Feb 2008.

  • Validate.nullTest working only with the EMAIL button

    Hello,
    This piece of code is working just great when submiting a form by
    email.
    TextField1.validate.nullTest = "error"; (highlighting the empty fields when pushing the EMAIL button)
    On the print button it doesn't have any effect. How can I highlight
    the required fields when clicking the print button the same easy way
    as with the email button? (I have other highlighting scripts but I want to use the exact same method as used on EMAIL)
    Your input is really appreciated! And any explanations for this stupid behavior?

    To make this functionality you can use two buttons trick:
    First button Print, onClick event should has this script: realPrintButton.execEvent("click").
    Second button is invisble Print button.
    So, when you click on your first button print validation is appear and real print will be executed.

  • ANN: Ajax4jsf . New Open Source project that brings AJAX capability to JSF

    I would like to inform everybody about the new Open Source project - Ajax4jsf. It is hosted on java.net
    URL: https://ajax4jsf.dev.java.net/
    Ajax4jsf is a rich component framework that has been created exclusively to bring rich user interface functionality to the JavaServer Faces. It enables page-wide AJAX support instead of the traditional component-wide. It means you can define the event on the page that invoke AJAX request and area(s) of the page that should be synchronized with the JSF Component Tree after the AJAX request changes the data on the server according to the events fired on the client.
    Actually, ajax4jsf is based on the framework, Alexander Smirnov introduced last summer ( http://smirnov.org.ru/en/ajax-jsf.html ) . He is an architect for ajax4jsf right now.
    In addition to the features the previous version of his framework had, we already added the following:
    * Framework for support easy change "look and feel" ( skinning )
    * Support for handle off-page resources ( JavaScript, CSS styles, images, objects). Resources can be placed in application classpath ( for example, put in JAR), generated by program ( for example, paint images by Java2D or JAI ), with full caching support
    * Templating system for easy creating components renderers ( using jsp-like xml template instead of direct call write...() methods )
    * Special JTidy-based response filter - it can correct any HTML code from components to avoid incompatibilities with DHTML
    Sergey : https://ajax4jsf.dev.java.net/

    You can find (simple) samples here:
    [https://javaserverfaces.dev.java.net/servlets/ProjectDocumentList?folderID=4036&expandFolder=4036&folderID=0]
    [http://www.coreservlets.com/JSF-Tutorial/]
    You can find a HTML/rich text editor as JSF component in the Mojarra Scales component library: [https://scales.dev.java.net/htmlEditor.html].

  • Help with using same buttons on timeline

    This is really basic,
    I've got 3 buttons on the main timeline, which is 25 frames. All my actions are on frame 14.
    Three buttons work on frame 15. But these same 3 buttons stop working on frame 17  - why?
    Please visit link below:
    http://www.simplecelebrations.info

    If your code is on frame 14 and your buttons are on frame 15, those buttons can't work unless they were on frame 14 first.  If you place new instances of these buttons on frame 17 but do not assign code for them, they will not work.  When you assign code to objects, such as buttons, they need to be present when that code executes.  So if you execute that code in frame 14, and the buttons are in frame 17, they are not present when that code executes so they cannot work.
    What you may find easier to deal with might be to have the buttons span the timeline where they are needed, meaning they have a keyframe at frame 14 where they get coded, and that extends as far down the timeline as you know those buttons need to be accessible.  You do not create new keyframes of them.  Then, if you need to hide the buttons for any reason, then you hide them by setting their visible property to be false. And if you need to display them again, you set it to true.
    There is not issue with having different buttons command the same thing, but if you are going to do that, then the different buttons should share the same function.  When I want to share a function or other code, such as variables, I always create a layer that I dedicate to the entire timeline.  It extends from frame 1 thru the last frame of the timeline.  All code on this layer is in frame 1. Any code on this layer is then accessible by anything along the timeline.  Then, as needed, I will have another actions layer that deals with frame level actions.
    So what I would do in your case, if you want to use different instances of the same buttons, would be to have the shared layer hold my event handler functions.  Then in my frame level actions layer I would have keyframes where I have the buttons and assign my event listners in those frames.  So if I had identical buttons in frames 15 and 17, but they were different instances, then in frame 15 I would have the same event listener assignments as I do in frame 17.  These listeners would be calling on the same functions that I have in that shared actionscript layer.
    // frame 15 code of frame level actions layer
    stop();
    btn1.addEventListener(MouseEvent.CLICK,go15);
    btn2.addEventListener(MouseEvent.CLICK,go18);
    btn3.addEventListener(MouseEvent.CLICK,go19);
    btn4.addEventListener(MouseEvent.CLICK,go20);
    btnb.addEventListener(MouseEvent.CLICK,go15);
    btnc.addEventListener(MouseEvent.CLICK,go17);
    // frame 17 code of frame level actions layer
    stop();
    btn1.addEventListener(MouseEvent.CLICK,go15);
    btn2.addEventListener(MouseEvent.CLICK,go18);
    btn3.addEventListener(MouseEvent.CLICK,go19);
    btn4.addEventListener(MouseEvent.CLICK,go20);
    btnb.addEventListener(MouseEvent.CLICK,go15);
    btnc.addEventListener(MouseEvent.CLICK,go17);
    frame 1 of shared actionscript layer...
    function go15(e:MouseEvent):void
    gotoAndStop(15);
    function go18(e:MouseEvent):void
    gotoAndStop(18);
    function go19(e:MouseEvent):void
    gotoAndStop (19);
    function go20(e:MouseEvent):void
    gotoAndStop (20);
    function go17(e:MouseEvent):void
    gotoAndStop (17);

  • Ajax with jdeveloper

    hi everyone
    i confront some difficulties when tried to use ajax. i created a JSF page and i used ajax and i used some views after that i did run the page and the browser said access denied
    i do not know why is that happened so could i find any help here ?
    thx in advance

    You can only find help by being more specific about what you tried to do. see : http://forums.oracle.com/forums/ann.jspa?annID=56
    Here is a little intro to developing Ajax with JDeveloper: http://www.oracle.com/technology/obe/obe11jdev/ps1/adf_richclient/adfrichclient.htm

  • How do I create multiple TEBs with one submit button on one page in Captivate 7

    I've read other posts on this topic (which refer primarily to earlier versions of Captivate) and am still at a loss as to how to put multiple text entry boxes on a page with one submit button. Here's my scenario:
    I am creating test questions.
    Each test question has multiple text entry boxes (for numbers only).
    Student should be able to enter numbers into the textboxes in any order.
    Then there is one Submit button that should initiate validating all the text entries, and move to a scoring page (so I can test it). (What would be best is if this button not only did the above, but also submitted scores to the LMS.  But that is not my question at this time.)
    I'd like this question to be set up as a template so that I can duplicate it, be able to add or delete text boxes and change the values required in the text boxes.  
    Here is an image of a sample question page with multiple TEBs. The yellow boxes tell the student where they need to enter text:
    Any help or direction to help is appreciated!!

    I think the problem here is that Arlhoolie wants all of the different TEBs to behave as if they were part of a single interaction that submits only ONE result to the quiz.  Using multiple TEBs in Captivate means that you have multiple scored objects and therefore multiple results being submitted to the quiz.
    If you want a single Success or Failure result submitted to the quiz based on the results from multiple interactive objects then there really is no simple way to do it.  But you could try using the Infosemantics Interactive Master widget to combine all the TEBs as slave objects that report to the Master Widget, which then reports a single score to the quiz based on the results from the slave objects.
    You can learn more about the Master widget here:
    http://www.infosemantics.com.au/adobe-captivate-widgets/interactive-master
    http://www.infosemantics.com.au/interactivemaster/help
    You can download a free trial version of the widget here:
    http://www.infosemantics.com.au/adobe-captivate-widgets/download-free-trial-widgets
    One caveat you should be aware of is that this widget is not HTML5 compatible.

  • Terrance Devlin answered a question about iPhoto (4-2012) re:copying iPhoto Library to an ExHD, and losing all the albums. I can't locate the "Choose Library" when I open iPhoto with the opt button. Can anyone help?

    I tried to move my images (over 25,000) to an External Hard drive to open up some memory, hoping to make my computer run faster. It took three hours to move the images and I see them all in the mac's menus. However when I try to open them with iPhoto now, none appeared. and when I tried to import them back to the main HD they come in to iPhoto just fine, but not with the albums nor any of the massive organization i'd created in the original. this represents years of images, and I can't imagine that I'd have to recopy them into folders/albums again.
    Terrance Devlin answered a similar question back in April of last year. He said to make sure the ExHD is formatted to MAC OS Extended (Journaled) and to move the library to the ExHD and then open iPhoto with the option button and select "Choose Library" from the resulting menu.
    Command "I" tells me that the new drive is formatted correctly. I can't locate the "Choose Library" when I open iPhoto with the opt button.
    First, I wondered if the application needs to be on the same drive as the Library. I sure would like to know if I can find out how to restore all the folders I had them in. Terrance's advice helped the user that had asked the question.
    Here's the url for that archived discussion: https://discussions.apple.com/thread/3849933?start=0&tstart=0
    Can anyone help? I'm using iPhoto 5. My MAC is an OS X version 10.4.11.
    thanks, brokenlom

    Here are Apple's instructions:
    If you are using iPhoto ’06 or earlier, you will need to follow these steps to tell iPhoto where the Library is now located:
    Hold down the Option key on the keyboard and open iPhoto. Keep the Option key held down until you are prompted to create or choose an iPhoto Library.
    Click Choose Library.
    Locate and select the iPhoto Library in its new location.
    (from http://support.apple.com/kb/HT1229 )
    Below (in the link below) is what you should see when holding down the option key and opening iPhoto. Keep holding down the option key until this dialogue comes up. You want to select the Choose Library button.
    http://appleclinic.wordpress.com/2008/04/06/change-default-dir-iphoto/

Maybe you are looking for