title: Primefaces exception INFO: java.lang.ArithmeticException: / by zero java.lang.ArithmeticException: / by zero
body: <p>I have implemented LazyLoading for datatable. When I run through datatable by using pagination I am getting the following exceptions.  </p>
  
  <pre><code>com.sun.faces.context.PartialViewContextImpl processPartial
  INFO: java.lang.ArithmeticException: / by zero
  java.lang.ArithmeticException: / by zero
      at org.primefaces.model.LazyDataModel.setRowIndex(LazyDataModel.java:62)
      at org.primefaces.component.api.UIData.setRowModel(UIData.java:411)
      at org.primefaces.component.api.UIData.setRowIndex(UIData.java:403)
  </code></pre>
  
  <p>ManagedBean</p>
  
  <pre><code>@PostConstruct
      public LazyDataModel&lt;Request&gt; getLazyModel() {
            if (lazyModel == null) {
             lazyModel = new LazyDataModel&lt;Request&gt;() {
  
              @Override
              public List&lt;Request&gt; load(int startingAt, int maxPerPage, String sortField,
                         SortOrder sortOrder, Map&lt;String, String&gt; filters) {
               return getRequestService().getRequest(startingAt, maxPerPage, sortField, sortOrder, filters);
              }
             };
             lazyModel.setRowCount(getRequestService().getRequestCount());           
  
            }
            return lazyModel;
           }
  </code></pre>
  
  <p>JSF</p>
  
  <pre><code>&lt;h:form&gt;
          &lt;p:dataTable id="dataTable" var="req" lazy="true" value="#{reqMB.lazyModel}"
              paginator="true" rows="10"
              paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
              rowsPerPageTemplate="5,10,15"&gt;
  </code></pre>
  
  <p>DAO for getting row count.</p>
  
  <pre><code>int count = ((Long)sessionFactory.getCurrentSession().createQuery
  ("select count(*) from Request").uniqueResult()).intValue();
  </code></pre>
  
  <p><strong>Update 1</strong></p>
  
  <pre><code>com.sun.faces.context.PartialViewContextImpl processPartial
  INFO: java.lang.ArithmeticException: / by zero
  java.lang.ArithmeticException: / by zero
      at org.primefaces.model.LazyDataModel.setRowIndex(LazyDataModel.java:62)
      at org.primefaces.component.api.UIData.setRowModel(UIData.java:411)
      at org.primefaces.component.api.UIData.setRowIndex(UIData.java:403)
      at org.primefaces.component.api.UIData.processChildren(UIData.java:291)
      at org.primefaces.component.api.UIData.processPhase(UIData.java:263)
      at org.primefaces.component.api.UIData.processDecodes(UIData.java:229)
      at com.sun.faces.context.PartialViewContextImpl$PhaseAwareVisitCallback.visit(PartialViewContextImpl.java:506)
      at com.sun.faces.component.visit.PartialVisitContext.invokeVisitCallback(PartialVisitContext.java:183)
      at org.primefaces.component.api.UIData.visitTree(UIData.java:641)
      at javax.faces.component.UIComponent.visitTree(UIComponent.java:1601)
      at javax.faces.component.UIForm.visitTree(UIForm.java:344)
      at javax.faces.component.UIComponent.visitTree(UIComponent.java:1601)
      at javax.faces.component.UIComponent.visitTree(UIComponent.java:1601)
      at com.sun.faces.context.PartialViewContextImpl.processComponents(PartialViewContextImpl.java:376)
      at com.sun.faces.context.PartialViewContextImpl.processPartial(PartialViewContextImpl.java:252)
      at javax.faces.context.PartialViewContextWrapper.processPartial(PartialViewContextWrapper.java:183)
      at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:931)
      at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:78)
      at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
      at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)
      at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
      at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
      at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301)
      at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
      at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
      at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
      at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3730)
      at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696)
      at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
      at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
      at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273)
      at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
      at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490)
      at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
      at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
  </code></pre>