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 > > >>>>>>>>>>>>>> > > >>>>>>>>>>>>> > > >>> > > >

