Stored procedure no SQL Server dando erro de nullpoiteException

Pessoal… as outras consultas estão funcionando perfeitamente mas apenas essa que está dando erro… eu gostaria de retornar o valor máximo da chave primária (MAX)
mas o java captura erro de nullpoitException.
quando eu executo direto do banco, ele funciona.

Código java:

 //------------------- Retornar o código da garantia quando o produto for cadastrado. --------------------------
public void Exibir_Cod_Garantia() throws SQLException{
ResultSet rst;


                        cn = sql.CriarConexao();
                        CallableStatement cs;

		try {
			cs = cn.prepareCall("up_Retornar_Cod_Garantia");

                   cs.execute();
                   rst = cs.executeQuery();

                   int cod_Garantia = 0;

                   while(rst.next()){

                    cod_Garantia   =    rst.getInt("cod_Garantia");

                  }

		} catch (Exception ex){
                        JOptionPane.showMessageDialog(null, "ERRO!!!");
			ex.printStackTrace();
		}
}

Stored procedure:

create procedure up_Retornar_Cod_Garantia

as
          
  set xact_abort on
  begin transaction

  
       select max ( cod_Garantia ) from tb_Mega_Eletronica
  
 
  
  commit transaction      
        

ERRO:

java.lang.NullPointerException
        at garantia_mega_eletronica.Stored_Procedures.Exibir_Cod_Garantia(Stored_Procedures.java:23)
        at garantia_mega_eletronica.Cadastrar_Produto.botao_Novo_CadastroActionPerformed(Cadastrar_Produto.java:484)
        at garantia_mega_eletronica.Cadastrar_Produto.access$000(Cadastrar_Produto.java:6)
        at garantia_mega_eletronica.Cadastrar_Produto$1.actionPerformed(Cadastrar_Produto.java:80)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
        at java.awt.Component.processMouseEvent(Component.java:6267)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
        at java.awt.Component.processEvent(Component.java:6032)
        at java.awt.Container.processEvent(Container.java:2041)
        at java.awt.Component.dispatchEventImpl(Component.java:4630)
        at java.awt.Container.dispatchEventImpl(Container.java:2099)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
        at java.awt.Container.dispatchEventImpl(Container.java:2085)
        at java.awt.Window.dispatchEventImpl(Window.java:2478)
        at java.awt.Component.dispatchEvent(Component.java:4460)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Oi!

O erro mais comum em JAVA.

String s = null; s.valueOf(10);

Basicamente, é algo assim.

Essa linha, representa qual linha no código postado por ti?
Tem de analisar porque está tendo uma referência nula :slight_smile:

Essa-> cs = cn.prepareCall("up_Retornar_Cod_Garantia");

justamente a que chama a stored procedure.
é como se ele não encontrasse a stored procedure…
pq eu apaguei o nome e continua dando o mesmo erro.

Oi!

Cara, o método prepareCall do Connection não gera um NullPointerException.

Aposto que a variavél cn (que deve ser Connection) está nula :slight_smile: