Weld
  1. Weld
  2. WELD-919

Conversation propagation token that negates the "cid" parameter

    Details

    • Type: Feature Request Feature Request
    • Status: Resolved Resolved (View Workflow)
    • Priority: Major Major
    • Resolution: Done
    • Affects Version/s: 1.1.1.Final
    • Fix Version/s: 1.1.2.Final
    • Component/s: Conversations
    • Labels:
      None
    • Similar Issues:
      Show 10 results 

      Description

      A method that negates the propagation of the cid parameter by the ConversationAwareViewHandler so that a non-transient is not resumed even if there is a cid parameter in the request. Stripping it out on a per-component-basis is tricky.

      Suggested implementation: change the last line in WeldPhaseListener.getConversationId to

      return facesContext.getExternalContext().getRequestParameterMap().containsKey("nocid") ? null : cid;

        Issue Links

          Activity

          Hide
          Nicklas Karlsson
          added a comment -

          Of course, this could be expanded in Seam2-style to name the parameter "conversationPropagation" and have values of "none" and "end" to differ between just abandoning the conversation and ending it.

          Show
          Nicklas Karlsson
          added a comment - Of course, this could be expanded in Seam2-style to name the parameter "conversationPropagation" and have values of "none" and "end" to differ between just abandoning the conversation and ending it.
          Hide
          Ales Justin
          added a comment -

          What would be the diff between "none" and "end" in this case?

          Show
          Ales Justin
          added a comment - What would be the diff between "none" and "end" in this case?
          Hide
          Nicklas Karlsson
          added a comment -

          "none" would be the default and would leave the conversation in the background to be resumed (until it would timeout) while "end" would call for an explicit end of the non-transient conversation indicated by the cid.

          Show
          Nicklas Karlsson
          added a comment - "none" would be the default and would leave the conversation in the background to be resumed (until it would timeout) while "end" would call for an explicit end of the non-transient conversation indicated by the cid.
          Hide
          Ales Justin
          added a comment -

          Do we really want to push this kind of logic into WeldPhaseListener?

          Show
          Ales Justin
          added a comment - Do we really want to push this kind of logic into WeldPhaseListener?
          Hide
          Pete Muir
          added a comment -

          Nik, make sure you add a CDI feature request as well.

          Show
          Pete Muir
          added a comment - Nik, make sure you add a CDI feature request as well.

            People

            • Assignee:
              Ales Justin
              Reporter:
              Nicklas Karlsson
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: