java - Datatable Parameters are Null , causing NumberFormatException:Null. Any Solution? -


i have action annotation acts server side processing action jquery data-table. while getting params of datatable, m getting exception. class getting params is:

package com.healthslate.reports.view.actions;  import javax.servlet.http.httpservletrequest;  public class datatablesparamutility {  public static jquerydatatableparammodel getparam(httpservletrequest request) {     if(request.getparameter("secho")!=null || request.getparameter("secho")!= "")     {         jquerydatatableparammodel param = new jquerydatatableparammodel();         param.secho = request.getparameter("secho");         param.ssearch = request.getparameter("ssearch");         param.scolumns = request.getparameter("scolumns");         param.idisplaystart = integer.parseint(request.getparameter("idisplaystart"));         param.idisplaylength= integer.parseint(request.getparameter("idisplaylength") );         param.icolumns = integer.parseint( request.getparameter("icolumns") );         param.isortingcols = integer.parseint( request.getparameter("isortingcols") );         param.isortcolumnindex = integer.parseint(request.getparameter("isortcol_0"));         param.ssortdirection = request.getparameter("ssortdir_0");         return param;     }else         return null;     } } 

i getting exception @ param.idisplaystart = integer.parseint(request.getparameter("idisplaystart"));

exception :

http status 500 - null  type exception report  message null  description server encountered internal error prevented fulfilling request.  exception  java.lang.numberformatexception: null     java.lang.integer.parseint(unknown source)     java.lang.integer.parseint(unknown source)     com.healthslate.reports.view.actions.datatablesparamutility.getparam(datatablesparamutility.java:16)     com.healthslate.reports.view.actions.pagevisitreportmodifiedaction.serversidesearch(pagevisitreportmodifiedaction.java:78)     sun.reflect.nativemethodaccessorimpl.invoke0(native method)     sun.reflect.nativemethodaccessorimpl.invoke(unknown source)     sun.reflect.delegatingmethodaccessorimpl.invoke(unknown source)     java.lang.reflect.method.invoke(unknown source)     com.opensymphony.xwork2.defaultactioninvocation.invokeaction(defaultactioninvocation.java:450)     com.opensymphony.xwork2.defaultactioninvocation.invokeactiononly(defaultactioninvocation.java:289)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:252)     org.apache.struts2.interceptor.debugging.debugginginterceptor.intercept(debugginginterceptor.java:256)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.interceptor.defaultworkflowinterceptor.dointercept(defaultworkflowinterceptor.java:167)     com.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.validator.validationinterceptor.dointercept(validationinterceptor.java:265)     org.apache.struts2.interceptor.validation.annotationvalidationinterceptor.dointercept(annotationvalidationinterceptor.java:68)     com.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.interceptor.conversionerrorinterceptor.intercept(conversionerrorinterceptor.java:138)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.interceptor.parametersinterceptor.dointercept(parametersinterceptor.java:239)     com.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.interceptor.parametersinterceptor.dointercept(parametersinterceptor.java:239)     com.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.interceptor.staticparametersinterceptor.intercept(staticparametersinterceptor.java:191)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     org.apache.struts2.interceptor.multiselectinterceptor.intercept(multiselectinterceptor.java:73)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     org.apache.struts2.interceptor.checkboxinterceptor.intercept(checkboxinterceptor.java:91)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     org.apache.struts2.interceptor.fileuploadinterceptor.intercept(fileuploadinterceptor.java:252)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.interceptor.modeldriveninterceptor.intercept(modeldriveninterceptor.java:100)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.interceptor.scopedmodeldriveninterceptor.intercept(scopedmodeldriveninterceptor.java:141)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.interceptor.chaininginterceptor.intercept(chaininginterceptor.java:145)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.interceptor.prepareinterceptor.dointercept(prepareinterceptor.java:171)     com.opensymphony.xwork2.interceptor.methodfilterinterceptor.intercept(methodfilterinterceptor.java:98)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.interceptor.i18ninterceptor.intercept(i18ninterceptor.java:161)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     org.apache.struts2.interceptor.servletconfiginterceptor.intercept(servletconfiginterceptor.java:164)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.interceptor.aliasinterceptor.intercept(aliasinterceptor.java:193)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.opensymphony.xwork2.interceptor.exceptionmappinginterceptor.intercept(exceptionmappinginterceptor.java:189)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     com.googlecode.s2hibernate.struts2.plugin.interceptors.sessiontransactioninjectorinterceptor.intercept(sessiontransactioninjectorinterceptor.java:181)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     net.bull.javamelody.strutsinterceptor.intercept(strutsinterceptor.java:68)     com.opensymphony.xwork2.defaultactioninvocation.invoke(defaultactioninvocation.java:246)     org.apache.struts2.impl.strutsactionproxy.execute(strutsactionproxy.java:54)     org.apache.struts2.dispatcher.dispatcher.serviceaction(dispatcher.java:563)     org.apache.struts2.dispatcher.ng.executeoperations.executeaction(executeoperations.java:77)     org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter.dofilter(strutsprepareandexecutefilter.java:99)     org.displaytag.filter.responseoverridefilter.dofilter(responseoverridefilter.java:125) note full stack trace of root cause available in apache tomcat/7.0.35 logs. 

numberformatexception occurs when trying convert illegal value int value. need check value before trying read them int value

//check `idisplaystart` parameter not null  if(request.getparameter("idisplaystart")!=null) //do conversion if not null param.idisplaystart = integer.parseint(request.getparameter("idisplaystart")) 

note: idisplaystart parameter should contain valid value, can parsed int value. otherwise, numberformatexception. can create utility method takes input value, validate , conversion , return parsed int value. if exception occurs in utility method, return int value denoting failure or error


Comments

Popular posts from this blog

android - Get AccessToken using signpost OAuth without opening a browser (Two legged Oauth) -

org.mockito.exceptions.misusing.InvalidUseOfMatchersException: mockito -

google shop client API returns 400 bad request error while adding an item -