enable it on the server as a result of pressing the commandButton. can you
answer some of the questions I posed earlier?
If we see the whole picture, then perhaps we can come up with a complete
solution.

-Richard

2011/3/4 Håkon Sagehaug <[email protected]>

> Hi
>
> Thanks for the tips and holding out this thread.  To kick of the poll do I
> use rendered=true/false, it should have had a enable/disable. Or can I set
> the interval to 0 or -1.
>
> Cheers, Håkon
>
> On 4 March 2011 14:18, Scott O'Bryan <[email protected]> wrote:
>
> > Yeah, I agree with Richard now that I know your trying to dynamically
> > update it.  The poll components will kick off the AJAX request and
> > your partialTrigger (set to the poll component) will allow the text to
> > change.
> >
> > I would also suggest disabling the poll component when you don't
> > expect any changes (ie. Maybe it doesn't start until the login is
> > submitted and then it turns off after the login successfully
> > completed).
> >
> > Does anyone know of "Streaming Requests" are handled in the next
> > servlet spec?  If so, it would be cool for JSF to
> > Do something with them, allow renderkits like Trinidad to stream
> > updates in a more generic fashion.
> >
> > On Mar 4, 2011, at 5:53 AM, Richard Yee <[email protected]> wrote:
> >
> > > Hakon,
> > > See my email from yesterday.  That is why I suggested using the tr:poll
> > component. How many different status messages will you have? What period
> of
> > time will the messages be changing? Depending on these answers, the
> tr:poll
> > component or the statusIndicator will work. Can you list the sequence of
> > events the timing (ie. 2 seconds or 2 minutes later xxx happens on the
> > server.) are you starting a separate thread that eventually updates a
> status
> > message?
> > >
> > > Richard
> > >
> > > Sent from my iPhone
> > >
> > > On Mar 4, 2011, at 1:34 AM, Håkon Sagehaug <[email protected]>
> > wrote:
> > >
> > >> Hi
> > >>
> > >> I put the form in various places, but I could not get the wanted
> effect.
> > >> Just curious, since this is an update of a value on the server side.
> The
> > >> clients somehow needs to know if the value have changed or not.  I
> guess
> > >> this is somewhere referred to as server push. My impression of the
> > >> partialTriggers is that an action is taken on the client side, and
> then
> > >> something is triggered on the client side.
> > >> So in my case the the value form the backing bean id read, but only
> when
> > the
> > >> button is clicked, not the hole "login session". Is this correct? I
> > guess
> > >> what to me sounds correct is to have some sort of value change
> listener
> > on
> > >> the value for the output text, but I guess that's more for input text
> > etc
> > >>
> > >> Did this make sense?
> > >>
> > >> Cheers, Håkon
> > >>
> > >>
> > >> On 3 March 2011 18:18, Scott O'Bryan <[email protected]> wrote:
> > >>
> > >>> Hakkon, put the form around everything and see if it changes the PPR
> > >>>
> > >>>
> > >>>
> > >>> On 03/03/2011 10:00 AM, Richard Yee wrote:
> > >>>
> > >>>> what is the initial value of pollText in your backing bean? If it is
> > "",
> > >>>> you
> > >>>> should set it to something else, ie. "Processing".
> > >>>>
> > >>>> The outputText inside statusIndicator will only show during the time
> > the
> > >>>> Ajax request is being made. Once the response is returned, it will
> > >>>> disappear.
> > >>>>
> > >>>> -Richard
> > >>>>
> > >>>>
> > >>>>
> > >>>> 2011/3/3 Håkon Sagehaug<[email protected]>
> > >>>>
> > >>>> Hi
> > >>>>>
> > >>>>> I now have my login page like this
> > >>>>>
> > >>>>> <?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";
> > >>>>>  xmlns:f="http://java.sun.com/jsf/core";
> > >>>>>  xmlns:h="http://java.sun.com/jsf/html";
> > >>>>>  xmlns:tr="http://myfaces.apache.org/trinidad";>
> > >>>>>
> > >>>>> <f:view>
> > >>>>>  <tr:document title="eSysbio-myFaces-Trinidad">
> > >>>>>
> > >>>>>      <tr:panelPage>
> > >>>>>          <f:facet name="infoStatus">
> > >>>>>              <tr:legend name="required" />
> > >>>>>          </f:facet>
> > >>>>>          <tr:form>
> > >>>>>              <h:panelGrid colums="2">
> > >>>>>                  <tr:outputLabel value="Username" />
> > >>>>>                  <tr:inputText id="username"
> > >>>>> value="#{helloWorldBacking.username}"
> > >>>>>                      required="true" />
> > >>>>>                  <tr:outputLabel value="Password" />
> > >>>>>                  <tr:inputText id="password"
> > >>>>> value="#{helloWorldBacking.password}"
> > >>>>>                      required="true" secret="true" />
> > >>>>>
> > >>>>>              </h:panelGrid>
> > >>>>>              <tr:commandButton id="loginButton" text="Login"
> > >>>>> partialSubmit="true"
> > >>>>>                  actionListener="#{helloWorldBacking.send}" />
> > >>>>>
> > >>>>>
> > >>>>>              <!--
> > >>>>>              <tr:statusIndicator>
> > >>>>>                  <tr:outputText
> value="#{helloWorldBacking.pollText}"
> > >>>>> />
> > >>>>>              </tr:statusIndicator>
> > >>>>>               -->
> > >>>>>              <tr:outputText value="#{helloWorldBacking.pollText}"
> > >>>>>                  partialTriggers="loginButton" />
> > >>>>>          </tr:form>
> > >>>>>      </tr:panelPage>
> > >>>>>
> > >>>>>  </tr:document>
> > >>>>> </f:view>
> > >>>>> </html>
> > >>>>>
> > >>>>> But then I got nothing in the outPutText field. Any other hint/tips
> > or
> > >>>>> tricks. I really appreciate the help
> > >>>>>
> > >>>>> Cheers, Håkon
> > >>>>>
> > >>>>> On 3 March 2011 17:25, Scott O'Bryan<[email protected]>  wrote:
> > >>>>>
> > >>>>> That doesn't seem to make any sense to me Richard.  The poll
> > component
> > >>>>>> does not replace statusIndicator, they simply do two different
> > things.
> > >>>>>> The purpose of the poll component is to initiate a request based
> on
> > a
> > >>>>>> clock instead of a user click.  You still need some way to display
> > the
> > >>>>>> information..
> > >>>>>>
> > >>>>>> Hakon,
> > >>>>>>
> > >>>>>> The partial trigger in this case should be on the output text
> > although
> > >>>>>> having it on the status indicator should also work (you'll just
> get
> > a
> > >>>>>> larger payload).
> > >>>>>>
> > >>>>>> Try this.  Remove the status indicator and only have the output
> > text.
> > >>>>>> Make sure your outputText is located inside the form (possible
> your
> > >>>>>> getting a scoping issue).
> > >>>>>>
> > >>>>>> Does that work?  It should.
> > >>>>>>
> > >>>>>> On Mar 3, 2011, at 9:06 AM, Richard Yee<[email protected]>
> > >>>>>> wrote:
> > >>>>>>
> > >>>>>> You don't want statusIndicator, use tr:poll instead
> > >>>>>>>
> > >>>>>>> Richard
> > >>>>>>>
> > >>>>>>> Sent from my iPhone
> > >>>>>>>
> > >>>>>>> On Mar 3, 2011, at 7:48 AM, Håkon Sagehaug<[email protected]
> >
> > >>>>>>>
> > >>>>>> wrote:
> > >>>>>>
> > >>>>>>> Hi
> > >>>>>>>>
> > >>>>>>>> Yes, that was an old cut and past mistake, I've got loginButton
> as
> > id
> > >>>>>>>>
> > >>>>>>> for
> > >>>>>>
> > >>>>>>> the button. The latest test are with loginButton, not button2. So
> > this
> > >>>>>>>>
> > >>>>>>> way
> > >>>>>>
> > >>>>>>> of doing it should normally work?
> > >>>>>>>>
> > >>>>>>>> cheers, Håkon
> > >>>>>>>>
> > >>>>>>>> On 3 March 2011 16:35, Scott O'Bryan<[email protected]>
>  wrote:
> > >>>>>>>>
> > >>>>>>>> Umm.  Considering the id of your button is button2, I'm not sure
> > why
> > >>>>>>>>> your partialTrigger is loginButton.  Can you explain?
> > >>>>>>>>>
> > >>>>>>>>> On Mar 3, 2011, at 6:46 AM, "Håkon Sagehaug"<
> > [email protected]>
> > >>>>>>>>> wrote:
> > >>>>>>>>>
> > >>>>>>>>> Hi all,
> > >>>>>>>>>>
> > >>>>>>>>>> I might not get the full point here ;). Here is what I tried,
> > put
> > >>>>>>>>>>
> > >>>>>>>>> trigger
> > >>>>>>
> > >>>>>>> on
> > >>>>>>>>>
> > >>>>>>>>>> the statusIndicator like here
> > >>>>>>>>>>
> > >>>>>>>>>> <tr:statusIndicator partialTriggers="loginButton">
> > >>>>>>>>>>                <f:facet name="busy">
> > >>>>>>>>>>                    <tr:outputText
> > >>>>>>>>>>
> > >>>>>>>>> value="#{helloWorldBacking.pollText}"
> > >>>>>>>>>
> > >>>>>>>>>> />
> > >>>>>>>>>>                </f:facet>
> > >>>>>>>>>>            </tr:statusIndicator>
> > >>>>>>>>>>
> > >>>>>>>>>> And on the outputText like here
> > >>>>>>>>>>
> > >>>>>>>>>> <tr:statusIndicator partialTriggers="loginButton">
> > >>>>>>>>>>                <f:facet name="busy">
> > >>>>>>>>>>                    <tr:outputText
> > >>>>>>>>>>
> > >>>>>>>>> value="#{helloWorldBacking.pollText}"
> > >>>>>>>>>
> > >>>>>>>>>> partialTriggers="loginButton"/>
> > >>>>>>>>>>                </f:facet>
> > >>>>>>>>>>            </tr:statusIndicator>
> > >>>>>>>>>>
> > >>>>>>>>>> Where loginButton is
> > >>>>>>>>>>
> > >>>>>>>>>> <tr:commandButton id="button2" text="Login"
> > partialSubmit="true"/>
> > >>>>>>>>>>
> > >>>>>>>>>> But nothing seems to have the wanted effect. I looks like it
> > picks
> > >>>>>>>>>>
> > >>>>>>>>> up
> > >>>>>
> > >>>>>> the
> > >>>>>>
> > >>>>>>> initial value for the helloWorldBacking.pollText, but when this
> > >>>>>>>>>>
> > >>>>>>>>> value
> > >>>>>
> > >>>>>> changes it's it not propagated in the UI. Maybe this can't be done
> > >>>>>>>>>>
> > >>>>>>>>> like
> > >>>>>>
> > >>>>>>> I've
> > >>>>>>>>>
> > >>>>>>>>>> sketched out. The backing code is the same as sent in a
> earlier
> > >>>>>>>>>>
> > >>>>>>>>> email.
> > >>>>>
> > >>>>>> Other tips?
> > >>>>>>>>>>
> > >>>>>>>>>> Cheers, Håkon
> > >>>>>>>>>>
> > >>>>>>>>>>
> > >>>>>>>>>> On 3 March 2011 05:23, Richard Yee<[email protected]>
> >  wrote:
> > >>>>>>>>>>
> > >>>>>>>>>> Try putting it inside the tr:form or inside your panelPage
> > >>>>>>>>>>>
> > >>>>>>>>>>>
> > >>>>>>>>>>> -Richard
> > >>>>>>>>>>>
> > >>>>>>>>>>> 2011/3/1 Håkon Sagehaug<[email protected]>
> > >>>>>>>>>>>
> > >>>>>>>>>>> Hi
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> Thanks for the reply, here is my xhtml, with a simple login
> > form
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> <tr:document title="Login Demo">
> > >>>>>>>>>>>>   <tr:statusIndicator>
> > >>>>>>>>>>>>       <f:facet name="busy">
> > >>>>>>>>>>>>           <tr:outputText
> value="#{helloWorldBacking.pollText}"
> > >>>>>>>>>>>>
> > >>>>>>>>>>> />
> > >>>>>
> > >>>>>>       </f:facet>
> > >>>>>>>>>>>>   </tr:statusIndicator>
> > >>>>>>>>>>>>   <tr:form>
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>       <tr:panelPage>
> > >>>>>>>>>>>>           <f:facet name="infoStatus">
> > >>>>>>>>>>>>               <tr:legend name="required" />
> > >>>>>>>>>>>>           </f:facet>
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>           <tr:inputText label="Username" id="username"
> > >>>>>>>>>>>>               value="#{helloWorldBacking.username}"
> > >>>>>>>>>>>>
> > >>>>>>>>>>> required="true"
> > >>>>>>
> > >>>>>>> />
> > >>>>>>>>>>>
> > >>>>>>>>>>>>           <tr:inputText label="Password" id="password"
> > >>>>>>>>>>>>               value="#{helloWorldBacking.password}"
> > >>>>>>>>>>>>
> > >>>>>>>>>>> required="true"
> > >>>>>>
> > >>>>>>> secret="true" />
> > >>>>>>>>>>>>           <tr:commandButton id="button2" text="Login"
> > >>>>>>>>>>>> partialSubmit="true"
> > >>>>>>>>>>>>               action="#{helloWorldBacking.send}" />
> > >>>>>>>>>>>>       </tr:panelPage>
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>   </tr:form>
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> </tr:document>
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> And parts of the backing bean
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> public String send() {
> > >>>>>>>>>>>>   FacesContext facesContext =
> > FacesContext.getCurrentInstance();
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>   System.out.println("user name " + username + " is logged
> in
> > "
> > >>>>>>>>>>>>           + userLoggedIn);
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>   try {
> > >>>>>>>>>>>>       Thread.sleep(5000);
> > >>>>>>>>>>>>       Token tok = tokenMgr.getToken(username, password,
> true);
> > >>>>>>>>>>>>      Thread.sleep(2000);
> > >>>>>>>>>>>>       pollText = "Token fetched";
> > >>>>>>>>>>>>       if (tok != null) {
> > >>>>>>>>>>>>           userLoggedIn = true;
> > >>>>>>>>>>>>           return ("success");
> > >>>>>>>>>>>>       }
> > >>>>>>>>>>>>       username = "";
> > >>>>>>>>>>>>       password = "";
> > >>>>>>>>>>>>   } catch (TrustException e1) {
> > >>>>>>>>>>>>       e1.printStackTrace();
> > >>>>>>>>>>>>   } catch (AxisFault e) {
> > >>>>>>>>>>>>       e.printStackTrace();
> > >>>>>>>>>>>>   } catch (FileNotFoundException e) {
> > >>>>>>>>>>>>       e.printStackTrace();
> > >>>>>>>>>>>>   } catch (XMLStreamException e) {
> > >>>>>>>>>>>>       e.printStackTrace();
> > >>>>>>>>>>>>   } catch (InterruptedException e) {
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>       e.printStackTrace();
> > >>>>>>>>>>>>   }
> > >>>>>>>>>>>>   FacesMessage message = new FacesMessage("Login failed");
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>   facesContext.addMessage("username", message);
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>   username = "";
> > >>>>>>>>>>>>   password = "";
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>   return ("error");
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> }
> > >>>>>>>>>>>> As you can see I sleep the thread to simulate the operations
> > >>>>>>>>>>>>
> > >>>>>>>>>>> needed
> > >>>>>
> > >>>>>> to
> > >>>>>>
> > >>>>>>> log
> > >>>>>>>>>>>
> > >>>>>>>>>>>> in the user, for now I'm only getting the token. After that
> > I'll
> > >>>>>>>>>>>>
> > >>>>>>>>>>> fetch
> > >>>>>>
> > >>>>>>> the
> > >>>>>>>>>>>
> > >>>>>>>>>>>> project, data etc...
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> So I wanted the pollText to apear  dynmically in the status
> > >>>>>>>>>>>>
> > >>>>>>>>>>> indicator,
> > >>>>>>
> > >>>>>>> but
> > >>>>>>>>>>>
> > >>>>>>>>>>>> can get it to update,.
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> Any tips?
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> cheers, Håkon
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> On 1 March 2011 23:23, Scott O'Bryan<[email protected]>
> >  wrote:
> > >>>>>>>>>>>>
> > >>>>>>>>>>>> I see no reason why this wouldn't work..  What specifically
> is
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>> failing
> > >>>>>>
> > >>>>>>> for you and perhaps a code snipi might help me visualize your
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>> issue.
> > >>>>>>
> > >>>>>>> On Mar 1, 2011, at 3:04 PM, "Håkon Sagehaug"<
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>> [email protected]>
> > >>>>>>
> > >>>>>>> wrote:
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>> Hi all,
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> I've just stared using Trinidad and myFaces, and had a
> > question.
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>> I'm
> > >>>>>>
> > >>>>>>> implementing a login in page for uses, and wanted to use the
> > >>>>>>>>>>>>>> statusIndicator, to give back messages for the user like
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> 1. Got user information
> > >>>>>>>>>>>>>> 2. Loading datasets
> > >>>>>>>>>>>>>> 3. Logged in
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> And tried to have a  tr:outputText within the
> > statusIndicator.
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>> The
> > >>>>>
> > >>>>>> value
> > >>>>>>>>>>>>
> > >>>>>>>>>>>>> for
> > >>>>>>>>>>>>>
> > >>>>>>>>>>>>>> the outPuttext would be linked to a backing bean, but I
> was
> > not
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>> very
> > >>>>>>
> > >>>>>>> successful, do you have any other tips?
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> I guess one can use the progressIndicator, but I would
> like
> > text
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>> to
> > >>>>>>
> > >>>>>>> be
> > >>>>>>>>>>>
> > >>>>>>>>>>>> returned not a procentage progress.
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>> cheers, Håkon
> > >>>>>>>>>>>>>>
> > >>>>>>>>>>>>>
> > >>>
> >
>

Reply via email to