이 북마크는 북마크 가능한 GET 요청을 발생시키는 속성에 적절한 URL을 가진 <h:outputLink>완전한 HTML <a>요소를 렌더링합니다 href. 관리 Bean 조치 메소드를 직접 호출 할 수 없습니다.
<h:outputLink value="destination.xhtml">link text</h:outputLink>
은 (숨겨진) POST 양식을 제출하고 관리 Bean 조치 메소드를 호출 할 수 있는 스크립트 <h:commandLink>로 HTML <a>요소를 렌더링합니다 onclick. 또한 안에 배치해야합니다 <h:form>.
<h:form>
<h:commandLink value="link text" action="destination" />
</h:form>
POST 후 리디렉션을 트리거하는 의 ?faces-redirect=true매개 변수 <h:commandLink>( Post-Redirect-Get 패턴에 따라)는 링크를 실제로 클릭 할 때만 대상 페이지의 책갈피 기능을 향상시킵니다 (URL은 더 이상 "뒤에 있지 않습니다"). 하지만 요소 href의 <a>요소를 완전한 URL로 변경하지는 않습니다 . 여전히 남아 있습니다 #.
<h:form>
<h:commandLink value="link text" action="destination?faces-redirect=true" />
</h:form>
JSF 2.0부터는 <h:link>URL 대신보기 ID (탐색 사례 결과)를 사용할 수있는 것도 있습니다. <a>에 적절한 URL을 사용하여 HTML 요소를 생성합니다 href.
<h:link value="link text" outcome="destination" />
따라서 SO 사용자 이름 링크와 같이 순수하고 북마크 가능한 페이지 간 탐색을 위해서는 <h:outputLink>또는 을 사용하십시오 <h:link>. 봇은 일반적으로 POST 양식이나 JS 코드를 암호화하지 않기 때문에 SEO에도 더 좋습니다. 또한 페이지를 북마크 할 수 있고 URL이 더 이상 "뒤에"있지 않으므로 UX가 향상됩니다.
당신이 생성자 또는 전처리 작업을 수행 할 수 있습니다 필요한 경우 @PostConstruct(A)의 @RequestScoped또는 @ViewScoped @ManagedBean어떤 문제의 대상 페이지에 연결되어 있습니다. GET 매개 변수를 사용 @ManagedProperty하거나 <f:viewParam>Bean 특성으로 설정할 수 있습니다 .
또한보십시오:
UICommand구성 요소 만 구성 요소에 들어가면됩니다UIForm.