10 Replies Latest reply on Nov 4, 2009 10:05 AM by cash1981

    Two new scopes in JSF 2.0 - no conversation scope

    asookazian

      flash and view scopes are available in JSF 2.0.


      as are custom scopes.


      flash is basically equivalent to conversation scope (survives multiple redirects for multiple pages) and seems to be a rip off of RoR's flash concept.


      any comments?

        • 1. Re: Two new scopes in JSF 2.0 - no conversation scope

          Arbi Sookazian wrote on Sep 10, 2009 00:38:


          flash and view scopes are available in JSF 2.0.


          That is good to know, specially the flash scope, I guess that means my wish for ScopeType.TEMP_CONVERSATION has been granted.





          as are custom scopes.

          flash is basically equivalent to conversation scope (survives multiple redirects for multiple pages) and seems to be a rip off of RoR's flash concept.

          any comments?


          Flash is pretty much what I asked for a while ago, a consistent way to pass information form one request in to the next, that is not affected byt the existence (or not) of long running conversation, without flash (a non promotable temp conversation), it is impossible to re-utilize navigation paths that work with temp running conversations if a long running conversation is now running, so I am really happy to know flash is now available in JSF.

          • 2. Re: Two new scopes in JSF 2.0 - no conversation scope

            I wonder how all this will be handled in Seam 3...

            • 3. Re: Two new scopes in JSF 2.0 - no conversation scope
              pmuir

              BTW Flash is not conversation scope, it's equivalent to a transient (temporary) conversation in Seam 2.

              • 4. Re: Two new scopes in JSF 2.0 - no conversation scope

                Pete Muir wrote on Sep 13, 2009 20:55:


                BTW Flash is not conversation scope, it's equivalent to a transient (temporary) conversation in Seam 2.


                Am I the only one to see the contradiction?

                • 5. Re: Two new scopes in JSF 2.0 - no conversation scope

                  I mean AFAIK temp. conversation are still conversations. They are not long, but that does not make them any less conversational

                  • 6. Re: Two new scopes in JSF 2.0 - no conversation scope
                    nickarls

                    Well, I don't see temp conversation as much more than a request is sort of a very short conversation. It's more of like using a NONE enum instead of null. With the exception that it has a conversation ID so we know beforehand what the ID will be in case we promote it to a LRC...

                    • 7. Re: Two new scopes in JSF 2.0 - no conversation scope

                      Nicklas Karlsson wrote on Sep 15, 2009 10:07:


                      Well, I don't see temp conversation as much more than a request is sort of a very short conversation. It's more of like using a NONE enum instead of null. With the exception that it has a conversation ID so we know beforehand what the ID will be in case we promote it to a LRC...


                      I find really strange that you guys do not consider temp conversations worthy of being called conversations (while at the same time calling them conversations), maybe Seam 3 should adopt part RoR (and now JSF 2.0) nomenclature and start to call them Flash, I would be fine with that, as long as we have several kinds of flash:



                      1. Flash (the normal kind, that is always flash, with a behavior that is always the same not matter the context)

                      2. Promotable Flash (Flash that, when a method with @Begin is called, promotes its contents to a Conversation)




                      And of course and stop calling Conversations Long, after all, with the new nomenclature the Long ones are actually the only kind of conversation available.


                      For the case of nesting Flash an Conversation scopes we could have:



                      1. Nested Flash (as the normal Flash scope, but with one (or many) Conversation in the background)

                      2. Nested Promotable Flash (as the Nested Flash, with one (or many) Conversation in the background, but also promotable by a new call to @Begin)



                      How do you feel about this ideas? I think it would help to make it very clear what is, and what is not a conversation (and make Seam scope nomenclature much more consistent)


                      • 8. Re: Two new scopes in JSF 2.0 - no conversation scope
                        asookazian

                        Why didn't the EG add conversation scope to JSF 2?  Is it because it's part of JSR 299?  But what if you want to use conversation scope with JSF 2 but not with Seam or Weld?

                        • 9. Re: Two new scopes in JSF 2.0 - no conversation scope
                          nickarls

                          Probably to avoid duplication. I guess it would be possible to do some sort of conversation hack on top of JSF 2 with view parameters and an EL-resolver that would pick the correct instances from a Map-like structure.

                          • 10. Re: Two new scopes in JSF 2.0 - no conversation scope
                            cash1981

                            I think this is a very good idea. Many newbies find it difficult to understand the concept of conversation versus long-running conversation. Seperating these two with different names and have conversation acting as long-running is simple, understandable and generally a good idea!