Nadpisuję taką metodę:
@Override
public void registerFunctions(FunctionRegistry registry) {
final CommandLinkInfo linkAddProductToContract = new CommandLinkInfo("Best").icon("plus").htmlId("addProduct").requiredFunction("AddAnotherProduct");
registry.registerNavigationFunction(CustomerTabs.NAVIGATION_STRING, "Bestellung", linkAddProductToContract, this);
AjaxFunctionItem loadBasketDialog = new AjaxFunctionItem("oo");
loadBasketDialog.setHtmlId("loadBasket");
loadBasketDialog.setIcon("plus");
loadBasketDialog.setOnclick("ajax:designerWorkflowDetail.prepareCopyWorkflow()");
loadBasketDialog.setRequiredFunction("AOrderEntry");
loadBasketDialog.setUpdate("@root:**:loadBasketDialog");
loadBasketDialog.setOncomplete("$('.loadBasketOverlay').modal()");
registry.registerAjaxFunction(Startpage.NAVIGATION_STRING, "Best", loadBasketDialog);
}
I teraz jak w przeglądarce wkleję po zalogowaniu: http://localhost:8080/bbb/serviceBookList.jsf, to otrzymam:
javax.faces.FacesException: Invalid search expression: @root:**:loadBasketDialog The subexpression @findIdRecursively(loadBasketDialog) doesn't exist, or it can't be resolved. net.bootsfaces.component.navCommandLink.NavCommandLink functionsForm:loadBasket
Additional information: Invalid search expression - couldn't find id @findIdRecursively(loadBasketDialog).
Complete search expression: @root:**:loadBasketDialog
Wiem, że te **, to odpowiednik @findIdRecursively(loadBasketDialog) i tu jest problem. Kompletnie nie wiem jak to ugryźć. Słabo też znam JSF szczerze mówiąc. Any idea?