Вы можете использовать #{request.contextPath}
для динамического встраивания пути к контексту:
<form action="#{request.contextPath}/some.xhtml">
Если вы хотите отправить ID текущего представления, получите его по #{facesContext.viewRoot.viewId}
:
<form action="#{request.contextPath}#{facesContext.viewRoot.viewId}">
Или если вы по какой-то причине не сопоставили FacesServlet
с *.xhtml
, или вы не хотите зависеть от его сопоставления, и ваш контейнер поддерживает EL 2.2 (или JBoss EL), тогда используйте ViewHandler#getActionURL()
вместо:
<form action="#{facesContext.application.viewHandler.getActionURL(facesContext, view.viewId)}">