次のコードを含むページがあります。
<h:body>
<h:form>
<h:graphicImage id="logo" alt="pir logo" url="/images/logo.png" />
<h1>Wybrane produkty:</h1>
<h:dataTable value="#{selectedItemBean.list}" var="l"
styleClass="order-table" headerClass="order-table-header"
rowClasses="order-table-odd-row,order-table-even-row">
<h:column>
<f:facet name="header">
Symbol
</f:facet>
#{l.symbol}
</h:column>
<h:column>
<f:facet name="header">
Opis
</f:facet>
#{l.opis}
</h:column>
<h:column>
<f:facet name="header">
Cena
</f:facet>
#{l.cena}
</h:column>
</h:dataTable>
<input value="Popraw" type="button" onclick="history.go(-1)" />
<h:commandButton value="Print" action="#{selectedItemBean.printPDF}" />
</h:form>
コマンドボタンを実行しようとすると、次の例外が発生しました。
SEVERE: javax.el.MethodNotFoundException: Method not found: pl.com.pir.beans.SelectedItemBean@7cd2da43.printPDF()
私は何が間違っているのだろうか?
ビーンソース:
@ManagedBean
@SessionScoped
public class SelectedItemBean implements Serializable {
private static final long serialVersionUID = 1L;
private List<Product> list = new ArrayList<Product>();
public SelectedItemBean() {}
//................. SOME CODE
public void printPDF() {
PrintToPDF pdf = new PrintToPDF();
try {
pdf.createPdf("", list);
} catch(IOException ioe) {
ioe.printStackTrace();
} catch(DocumentException de) {
de.printStackTrace();
}
}
//................. SOME CODE
}
result.xhtml のデータテーブルは適切に処理されています。この例外についてはよく読みましたが、解決策が見つかりませんでした。