Нажатие на commandLink снова вызывает preRenderView
В моем фейслете у меня есть следующая команда linkLink:
<h:form>
<p:commandLink id="excelExport" action="#{studentBean.exportReport()}" ajax="false">
<f:param name="type" value="EXCEL" />
<p:graphicImage library="img" name="excel.png" width="20" />
</p:commandLink>
</h:form>
Вот что я имею в своем бобе:
@ManagedBean
@RequestScoped
public class StudentBean implements Serializable {
.............
@ManagedProperty(value = "#{param.type}")
private String typeOfExport;
.............
public void preRender(ComponentSystemEvent event) {
System.out.println("Inside prerender");
if (FacesHelper.isAjaxRequest()) {
return;
}
}
.............
public void exportReport() {
System.out.println("Type of Report is: " + typeOfExport);
}
}
Теперь я хотел бы выполнить метод exportReport, как только я нажму на commandLink. Но здесь происходит следующее: после выполнения метода он снова собирается в preRender. Я не хочу снова отображать всю форму. Есть идеи, какую ошибку я здесь делаю?