2
假設我有一個Grid
有一些鏈接來編輯Entity
。這是我.tml
文件如何在我的Tapestry 5應用程序中創建簡單和重構的頁面鏈接?
<table t:id="personGrid">
<!-- ... -->
<p:editCell>
<p t:id="edit">${person.lastName}</p>
</p:editCell>
<!-- ... -->
</table>
在我.java
文件我有這樣的:
@Component(parameters = {"context=person.employeeNumber", "page=person/PersonPage"})
private PageLink edit;
這是succint,我沒有寫很多的樣板代碼。這裏的陷阱是如果我重構employeeNumber
或PersonPage
。它將不再起作用,最糟糕的是我不會有錯誤信息。
我發現我可以使用PageRenderLinkSource
,而不是像這樣:
@Inject
private PageRenderLinkSource editPersonLink;
// ...
Object onActionFromEdit(String employeeNumber)
{
return editPersonLink.createPageRenderLinkWithContext(PersonPage.class, employeeNumber);
}
這是相當不錯的。它沒有更多的樣板,但它是重構證明。
我的問題是,我仍然要保持
@Component(parameters = {"context=person.employeeNumber", "page=PersonPage"})
private PageLink edit;
在我.java
文件,否則掛毯會抱怨缺少@Component
。
所以我的問題是,如何實現一些沒有樣板的重構參數化頁面鏈接?
我使用的是Tapestry 5.3.6。
雖然我已經發現,解決方案我正在接受你的答案。 –