Вот простой пример использования, который мне не удается реализовать: я хочу создать ссылку или кнопку, которая вызывает метод (действие) сервера и будет перенаправлять на страницу без сохранения параметра cid
.
Я использую JSF2, JBoss 7 и Seam 3.
Вот два метода, которые я безуспешно попробовал.
Первый, h:commandLink
<h:commandLink action="pages/home.xhtml"
actionListener="#{identity.logout()}"
value="#{bundles.layout.logout}" />
Здесь вызывается identity.logout()
, но затем браузер перенаправляется на pages/home.xhtml?cid=1
, поэтому, если я снова войду в систему, у меня будет ошибка
org.jboss.weld.context.ContextNotActiveException: WELD-001303 No active contexts for scope type javax.enterprise.context.ConversationScoped
.
Второй, h:link
<h:link outcome="/pages/home.xhtml" value="#{bundles.layout.logout}">
<f:ajax event="click" listener="#{identity.logout()}" />
</h:link>
Здесь у меня нет cid
в сгенерированной гиперссылке, но метод identity.logout()
не называется ...
У кого-нибудь есть идея?