java - MariaDB NullPointerException While calling stored procedure -
i getting nullpointerexception while calling stored procedure using jpa , mariadb.
it's working fine first time, when try second time it's giving exception.
when restart server it's working again first time.
i using spring boot 1.5.6.
maven dependency :
<dependency> <groupid>org.mariadb.jdbc</groupid> <artifactid>mariadb-java-client</artifactid> <version>1.5.7</version> </dependency> these application.properties
spring.datasource.url=jdbc:mariadb://localhost:3306/webapp spring.datasource.username=test spring.datasource.password=test spring.datasource.driverclassname=org.mariadb.jdbc.driver spring.jpa.hibernate.ddl-auto=create-drop spring.jpa.show-sql=true java code is
@override public user register(user user) { storedprocedurequery storedprocedurequery = entitymanager.createstoredprocedurequery("webapp.register") .registerstoredprocedureparameter(1, string.class, parametermode.in).setparameter(1, user.getemail()) .registerstoredprocedureparameter(2, string.class, parametermode.in).setparameter(2, user.getpassword()) .registerstoredprocedureparameter(3, string.class, parametermode.in).setparameter(3, user.getname()) .registerstoredprocedureparameter(4, string.class, parametermode.in).setparameter(4, "") .registerstoredprocedureparameter(5, string.class, parametermode.in).setparameter(5, "") .registerstoredprocedureparameter(6, long.class, parametermode.out); storedprocedurequery.execute(); long userid = (long)storedprocedurequery.getoutputparametervalue(6); user.setuserid(userid); return user; } and exception got @ line storedprocedurequery.execute(); is
hibernate: {call webapp.register(?,?,?,?,?,?)} java.lang.nullpointerexception: null @ org.mariadb.jdbc.mariadbserverpreparedstatement.prepare(mariadbserverpreparedstatement.java:143) ~[mariadb-java-client-1.5.7.jar:na] @ org.mariadb.jdbc.mariadbserverpreparedstatement.clone(mariadbserverpreparedstatement.java:134) ~[mariadb-java-client-1.5.7.jar:na] @ org.mariadb.jdbc.abstractcallableprocedurestatement.clone(abstractcallableprocedurestatement.java:98) ~[mariadb-java-client-1.5.7.jar:na] @ org.mariadb.jdbc.mariadbprocedurestatement.clone(mariadbprocedurestatement.java:119) ~[mariadb-java-client-1.5.7.jar:na] @ org.mariadb.jdbc.mariadbprocedurestatement.clone(mariadbprocedurestatement.java:62) ~[mariadb-java-client-1.5.7.jar:na] @ org.mariadb.jdbc.mariadbconnection.preparecall(mariadbconnection.java:479) ~[mariadb-java-client-1.5.7.jar:na] @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) ~[na:1.8.0_121] @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:62) ~[na:1.8.0_121] @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) ~[na:1.8.0_121] @ java.lang.reflect.method.invoke(method.java:498) ~[na:1.8.0_121] @ org.apache.tomcat.jdbc.pool.proxyconnection.invoke(proxyconnection.java:126) ~[tomcat-jdbc-8.5.16.jar:na] @ org.apache.tomcat.jdbc.pool.jdbcinterceptor.invoke(jdbcinterceptor.java:108) ~[tomcat-jdbc-8.5.16.jar:na] @ org.apache.tomcat.jdbc.pool.interceptor.abstractcreatestatementinterceptor.invoke(abstractcreatestatementinterceptor.java:75) ~[tomcat-jdbc-8.5.16.jar:na] @ org.apache.tomcat.jdbc.pool.jdbcinterceptor.invoke(jdbcinterceptor.java:108) ~[tomcat-jdbc-8.5.16.jar:na] @ org.apache.tomcat.jdbc.pool.disposableconnectionfacade.invoke(disposableconnectionfacade.java:81) ~[tomcat-jdbc-8.5.16.jar:na] @ com.sun.proxy.$proxy80.preparecall(unknown source) ~[na:na] @ org.hibernate.engine.jdbc.internal.statementpreparerimpl$1.doprepare(statementpreparerimpl.java:86) ~[hibernate-core-5.0.12.final.jar:5.0.12.final] @ org.hibernate.engine.jdbc.internal.statementpreparerimpl$statementpreparationtemplate.preparestatement(statementpreparerimpl.java:172) ~[hibernate-core-5.0.12.final.jar:5.0.12.final]
Comments
Post a Comment