2016-09-10 3 views
1

Я пытаюсь удалить объект из таблицы, но когда я нажимаю кнопку «удалить», ничего не происходит, и он должен вызывать метод, который удалит этот конкретный объект. Появляется MethodNotFoundException, и я понятия не имею, почему. Вот код:p: commandLink не реагирует на метод - MethodNotFoundException

.xhtml:

   <p:column headerText="Imię"> 
        <h:outputText value="#{client.firstName}" /> 
       </p:column> 
       <p:column headerText="Nazwisko"> 
        <h:outputText value="#{client.lastName}" /> 
       </p:column> 

       <p:column>     
        <p:commandLink type="submit" value="Usuń" 
        style="font-size: 11px" 
         update="searcher:table:clientsTable" 
         ajax="true" 
         actionListener="#{clientBean.deleteClient(client)}" 
         styleClass="btn btn-danger resized-font delete-btn" 
         icon="glyphicon glyphicon-trash"> 
         <span class="glyphicon glyphicon-trash"></span>          
        </p:commandLink> 


        <a href="klienci/#{client.ID}" 
        style="font-size: 11px" 
         class="btn btn-primary resized-font"><span 
         class="glyphicon glyphicon-book"></span> Informacje</a> 

       </p:column> 
      </p:dataTable> 
     </h:form> 

метод из ClientBean:

public void deleteClient(Client client){ 
    clientDao.delete(client); 
} 

исключение:

SEVERE: javax.el.MethodNotFoundException: Method not found: [email protected](com.firanycrm.model.Client) 
+0

сделал вы пытаетесь добавить 'Ajax' событие?!? –

ответ

0

Вам не нужно ставить p:commandLink типа в submit, и попробуйте добавить process="@this" к вашему p:commandLink

<p:commandLink value="Delete" 
       update="table" 
       actionListener="#{clientBean.deleteClient(client)}" 
       process="@this" /> 
Смежные вопросы