2017-08-14 13 views
0

この問題を解決しようとしましたが、これを解決するためのフォームが見つかりませんでした。設定は、WebSphereここ内部例外:java.sql.SQLException:内部エラー:1

[14/08/17 15:18:54:242 CDT] 00000053 SystemOut  O [EL Warning]: 2017-08-14 15:18:54.227--UnitOfWork(-1037272639)--Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.4.2.qualifier): org.eclipse.persistence.exceptions.DatabaseException 
Internal Exception: java.sql.SQLException: Falta el parámetro IN o OUT en el índice:: 1 
Error Code: 17041 
Call: select nvl(sum(exh.montopagoprimaneta),0) FROM midas.tdpagocoberturareasegurador exh where exh.idtoplanpagoscobertura= :idtoplanpagoscobertura and exh.idreasegurador= :idreasegurador and exh.estatuspago= :estatuspago 
Query: DataReadQuery(sql="select nvl(sum(exh.montopagoprimaneta),0) FROM midas.tdpagocoberturareasegurador exh where exh.idtoplanpagoscobertura= :idtoplanpagoscobertura and exh.idreasegurador= :idreasegurador and exh.estatuspago= :estatuspago ") 
[14/08/17 15:18:54:242 CDT] 00000053 BusinessExcep E CNTR0020E: EJB ha generado una excepción no esperada (no declarada) al invocar el método "getmontoPagadoReasegurador" en el bean "BeanId(DEV-MidasPersistencia#MidasPersistencia.jar#ContratoFacultativoFacade, null)". Datos de la excepción:Local Exception Stack: 
Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.4.2.qualifier): org.eclipse.persistence.exceptions.DatabaseException 
Internal Exception: java.sql.SQLException: Falta el parámetro IN o OUT en el índice:: 1 
Error Code: 17041 
Call: select nvl(sum(exh.montopagoprimaneta),0) FROM midas.tdpagocoberturareasegurador exh where exh.idtoplanpagoscobertura= :idtoplanpagoscobertura and exh.idreasegurador= :idreasegurador and exh.estatuspago= :estatuspago 
Query: DataReadQuery(sql="select nvl(sum(exh.montopagoprimaneta),0) FROM midas.tdpagocoberturareasegurador exh where exh.idtoplanpagoscobertura= :idtoplanpagoscobertura and exh.idreasegurador= :idreasegurador and exh.estatuspago= :estatuspago ") 

コード

public Double getmontoPagadoReasegurador(PagoCoberturaReaseguradorId id){ 
     String queryString = "select nvl(sum(exh.montopagoprimaneta),0) FROM midas.tdpagocoberturareasegurador exh " 
       + " where exh.idtoplanpagoscobertura= :idtoplanpagoscobertura " 
       + " and exh.idreasegurador= :idreasegurador " 
       + " and exh.estatuspago= :estatuspago "; 
      Query query = entityManager.createNativeQuery(queryString); 
      query.setParameter("IdToPlanPagosCobertura", id.getIdToPlanPagosCobertura()); 
      query.setParameter("IdReasegurador", id.getIdReasegurador()); 
      query.setParameter("estatusPago", PagoCoberturaReaseguradorDTO.PAGADO); 
      return Utilerias.obtenerBigDecimal(query.getSingleResult()).doubleValue(); 
    } 
+0

これをクリーンアップできますか? –

答えて

0

であるあなたが渡しているクエリパラメータを確認してください。大文字と小文字を区別します。あなたにコードを修正しました。今すぐお試しください。

public Double getmontoPagadoReasegurador(PagoCoberturaReaseguradorId id){ 
     String queryString = "select nvl(sum(exh.montopagoprimaneta),0) FROM midas.tdpagocoberturareasegurador exh " 
       + " where exh.idtoplanpagoscobertura= :idtoplanpagoscobertura " 
       + " and exh.idreasegurador= :idreasegurador " 
       + " and exh.estatuspago= :estatuspago "; 
      Query query = entityManager.createNativeQuery(queryString); 
      query.setParameter("idtoplanpagoscobertura", id.getIdToPlanPagosCobertura()); 
      query.setParameter("idreasegurador", id.getIdReasegurador()); 
      query.setParameter("estatuspago", PagoCoberturaReaseguradorDTO.PAGADO); 
      return Utilerias.obtenerBigDecimal(query.getSingleResult()).doubleValue(); 
    } 
+0

あなたのコメントとあなたの助けを借りてこの問題が解決された場合、私はあなたに教えてください – MarcuzVon

関連する問題