Как использовать view-params с JSP?

Я хотел бы использовать параметры просмотра для получения закладок URL-адресов с помощью JSF 2, но я использую JSP и все справки и примеры, которые я могу найти, использует Facelets. Вот хочу я до сих пор:

search.jsp (вызывающая страница):

  <t:commandLink action="...">
      <f:param name="param1" value="foo"/>
      <h:outputText value="..."/>                  
  </t:commandLink>

лица-config.xml:

  <navigation-rule>
    <navigation-case>
      <from-outcome>go_edit</from-outcome>
      <to-view-id>/views/edit.jsp</to-view-id>
      <redirect>
        <view-param>
          <name>param1</name>
          <value>#{edit.param1}</value>
        </view-param>
      </redirect>
    </navigation-case>
  </navigation-rule>

Edit.java (редактирование бина поддержки страницы):

public class Edit extends ... {

  private String param1;

  public String getParam1(){
    return param1;
  }

  public void setParam1(String param1){
    this.param1 = param1;
  }

  ...
}

Я думаю, что проблема в том, что я не добавил параметры просмотра на страницу редактирования (например, edit.jsp). Я нашел только примеры Facelet, которые выглядят так:

<f:metadata>
    <f:viewParam name="id" value="#{bean.id}" />
</f:metadata>

У меня вопрос, могу ли я использовать параметры просмотра JSP? Может кто-нибудь предоставить или указать мне полный пример? Особенно часть с целевой страницей (например, edit.jsp).

1 ответ

Решение

Это невозможно JSP устарела с JSF 2.0 в декабре 2009 года (уже почти 4 года назад!). Все новые специальные теги JSF 2.x доступны только для Facelets, но не для JSP. По сути, с JSP доступны только специальные теги JSF 1.x. Другими словами, теги JSF 2.x <f:metadata>, <f:viewParam>, <f:ajax>, <h:head>, <h:outputScript>и т. д. не доступны для JSP.

Нет смысла работать с устаревшей технологией. Самое время мигрировать.

Другие вопросы по тегам