Hi,
    I would like to make a
        suggestion how to bring JSF and JAX-RS closer together. 
        
        I am working with JSF for the early binning. And so I went
        through all the browser problems caused by the POSTBACK
        mechanism of JSF. Of course, since version 2.0 we have a
        solution (or workaround) with the <h:link> and
        with the  query param "faces-redirect=true". This works
        well, so this here is no criticism.
        
        But as a result of the Post/Redirect/Get pattern I see in my own
        application now often a construction like this:
        
        1) The Action Method
        A Action-Method of a CDI bean returns an navigation outcome like
        this:
        
      ....
         public String myActionMethod() {
           ...
        
           String
        actionResult="ticket.xhtml?id=112233&faces-redirect=true";
           return actionResult;
         }
        ....
       
        This method adds the faces-redirect for the JSF POSTBACK. 
      
    
        2) The JSF Page
        My jsf page on the other hand has to deal with this custom query
        param 'id'. So for example my ticket.xhtml page has an
        header with something like this:
        
        ....
              <h:head>
                  <!-- support deep link for ticket id -->
                  <f:metadata>
                      <f:viewParam name="id"
          value="#{myController.ticketId}" />
                  </f:metadata>
              </h:head>
          ....
        
        
        3) The Controller
        And finally my CDI Controller has the corresponding setter
        method to load the data from the backend:
        
        ....
              public void setTicketId(String id) {
                this.id=id;
                if (id != null && !id.isEmpty()) {
                  myTicket=myServiceEJB.load(id);
                  // finally we destroy the param to avoid a reload on
          the next postback
                  id = null; // !
                }
              }
          ....
        
        
        As a result users can now bookmark links like the following:
        
          
          http://..../ticket.xhtml?id=111222333
        
        
        This works fro bookmarking and also for the jsf action methods.
        But it is after all a little bit clumsy.....
        
        In MVC 1.0 we see how JAX-RS can leverage the navigation of a
        web framework. So what I am now thinking about is the following:
        
      
    Is it possible to
        combine JAX-RS with JSF in a similar way as it is used by MVC
        1.0? 
        So for the scenario above, I imagine a CDI bean which looks like
        this:
        
        
        @JSFController
          @Path("ticket")
          public class TicketController {
            ...
            @GET
            @Path("/{id}")
            public String loadTicket(@PathParam("id") String
          ticketID) {
              myTicket=myServiceEJB.load(ticketID);
              return "ticket.xhtml";
            }
            ...
          }
        
        The imaginary annotation '@JSFController' does nothing
        but instruct the JSF rendering engine to load the page
        ticket.xhtml as an outcome. 
        And as a result users can load any JSF page with a pure JAX-RS
        resource. 
        
            /ticket/112233
        
        Also action methods can use the JAX-RS URL pattern as well. From
        my example in the beginning the action method would now simply
        look like this:
        
        ....
           public String myActionMethod() {
             ...
             return "/ticket/112233";
           }
          ....
        
        So my questions are: 
      
    - Is it worth
        discussing this proposal? 
        - Is it possible to redirect from a JAX-RS Resource Method to
        the JSF rendering engine? 
        - Or do I overlook some of the complexity of JSF here?
    I think that JSF would
        be much more natural to use and the POSTBACK would be completely
        hidden from the user. Maybe this could be a big step forward for
        JSF in general?
        
        Please let me know what you think and if here is the right place
        to discuss it?
        
        Best regards
        Ralph