Ol� pessoal,

    Meu bean BMP tem 36 atributos, todos eles s�o campos de uma tabela. Qdo
executo o ejbStore, e ele faz os sets no PreparedStatement para inserir no
banco, d� erro. Quando diminuo esses campos para 32, ela d� certo. A partir
de 33, j� da erro. As vezes, (com 33 campos no PreparedStatement ) consigo
executar ele normalmente na primeira vez, a partir da segunda, ele da erro.
No ejbCreate, seto os mesmos 36 atributos e n�o d� erro. Segue abaixo o meu
m�todo ejbStore e os dados da exce��o, se alguem puder me ajudar..
agrade�o...

    Marcus

// ******** M�todo ejbStore ********

 public void ejbStore() {
  Connection conn = null;
  try{
   conn = Conexao.getConnection();
   AcidenteKey key = (AcidenteKey)ctx.getPrimaryKey();
   PreparedStatement stmt = conn.prepareStatement
    ("exec sp_smat_gravar_acidentes
?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?");//,?,?,?

   stmt.clearParameters();

      stmt.setInt(1,key.acidente);

   if(area == null)
       stmt.setNull(2,Types.INTEGER);
   else
       stmt.setInt(2,area.area);

   if(vinculoEmpregaticio == null)
       stmt.setNull(3,Types.INTEGER);
   else
       stmt.setInt(3,vinculoEmpregaticio.vinculoEmpregaticio);

   if(ocupacao == null)
       stmt.setNull(4,Types.INTEGER);
   else
       stmt.setInt(4,ocupacao.ocupacao);

   if(localAtendimento == null)
       stmt.setNull(5,Types.INTEGER);
   else
       stmt.setInt(5,localAtendimento.localAtendimento);

   if(empregador == null)
       stmt.setNull(6,Types.INTEGER);
   else
       stmt.setInt(6,empregador.empregador);

   if(medico == null)
       stmt.setNull(7,Types.INTEGER);
   else
       stmt.setInt(7,medico.medico);

   if(diagnostico == null)
       stmt.setNull(8,Types.INTEGER);
   else
       stmt.setInt(8,diagnostico.diagnostico);

   if(fonte == null)
       stmt.setNull(9,Types.INTEGER);
   else
       stmt.setInt(9,fonte.fonte);

   if(agenteCausador == null)
       stmt.setNull(10,Types.INTEGER);
   else
       stmt.setInt(10,agenteCausador.agenteCausador);

   if(tipoLocalAcidente == null)
       stmt.setNull(11,Types.INTEGER);
   else
       stmt.setInt(11,tipoLocalAcidente.tipoLocalAcidente);

   if(trabalhador == null)
       stmt.setNull(12,Types.INTEGER);
   else
       stmt.setInt(12,trabalhador.trabalhador);

   if(empregadorTerceiro == null)
       stmt.setNull(13,Types.INTEGER);
   else
       stmt.setInt(13,empregadorTerceiro.empregador);

   if(tipoAcidente == null)
       stmt.setNull(14,Types.INTEGER);
   else
       stmt.setInt(14,tipoAcidente.tipoAcidente);


   if(emitente == null)
       stmt.setNull(15,Types.INTEGER);
   else
       stmt.setInt(15,emitente.emitente);

   if(municipio == null)
       stmt.setNull(16,Types.INTEGER);
   else
       stmt.setInt(16,municipio.municipio);

   stmt.setString(17,converteData(dataAcidente));
   stmt.setString(18,registroPolicial);
   stmt.setString(19,amputacao);
   stmt.setString(20,obito);
   stmt.setInt(21,horasTrabalhadas);
   stmt.setString(22,descLocalAcidente);
   stmt.setString(23,numDocFonte);
   stmt.setString(24,converteData(dataEmissaoFonte));
   stmt.setString(25,naturezaLesao);
   stmt.setString(26,converteData(dataHoraDiagnostico));
   stmt.setString(27,afastamento);
   stmt.setString(28,internacao);
   stmt.setString(29,observacaoDiagnostico);
   stmt.setInt(30,duracaoTratamento);
   stmt.setString(31,aposentado);
   stmt.setFloat(32,remuneracao);//se setar at� aqui, nao da erro
   stmt.setString(33,distritoSaude);//A partir daqui j� da erro.
   //stmt.setString(34,converteData(ultimaTrabalhado));
   //System.out.println("ejbStore => Antes 9");
   //stmt.setString(35,descricaoSituacaoGeradora);
   //stmt.setString(36,descricaoDiagnostico);

      int rs = stmt.executeUpdate();


      if(rs != 1){
       throw new EJBException("Erro "+rs);
      }
  }
  catch(SQLException e){
   e.printStackTrace();
  }
  finally{
   try{
    conn.close();
   }
   catch(SQLException e){}
  }

 }

//********** Dados da exce��o ************

[01/06/03 20:55:20:638 GMT-03:00]  8ad637e ExceptionUtil E CNTR0021E:
Ocorreu uma exce��o que n�o � do aplicativo no bean
"BeanId(smat#smatEJB.jar#Acidente,
[EMAIL PROTECTED])": Dados da exce��o:
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
 at java.util.ArrayList.RangeCheck(ArrayList.java(Inlined Compiled Code))
 at java.util.ArrayList.set(ArrayList.java(Compiled Code))
 at
com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement.countParameter(WSJdbcPrepa
redStatement.java(Compiled Code))
 at
com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement.setString(WSJdbcPreparedSt
atement.java:1206)
 at br.smat.ejb.acidente.AcidenteBean.ejbStore(AcidenteBean.java:922)
 at com.ibm.ejs.container.BeanManagedBeanO.store(BeanManagedBeanO.java:200)
 at
com.ibm.ejs.container.EntityBeanO.beforeCompletion(EntityBeanO.java:1032)
 at com.ibm.ejs.container.ContainerTx.beforeCompletion(ContainerTx.java:489)
 at com.ibm.ejs.util.tran.SyncDriver.beforeCompletion(SyncDriver.java:226)
 at
com.ibm.ejs.jts.jta.TransactionImpl$SyncronizationWrapper.before_completion(
TransactionImpl.java:1233)
 at
com.ibm.ejs.jts.jts.CoordinatorImpl$Sync.beforePrepare(CoordinatorImpl.java:
1162)
 at
com.ibm.ejs.jts.tran.EventCallback.executeCallback(EventCallback.java:166)
 at
com.ibm.ejs.jts.tran.EventCallback.executeCallbackTree(EventCallback.java:13
2)
 at
com.ibm.ejs.jts.tran.EventPrepare.ExecuteBeforePrepareCallbacks(EventPrepare
.java:307)
 at
com.ibm.ejs.jts.tran.EventPrepare.event_LocalPrepareWork(EventPrepare.java:2
87)
 at
com.ibm.ejs.jts.tran.EventPrepare.event_BecomeCoordinator(EventPrepare.java:
970)
 at
com.ibm.ejs.jts.tran.EventControl.event_EndTopLevel(EventControl.java:295)
 at com.ibm.ejs.jts.tran.TrecInterface.end(TrecInterface.java:89)
 at com.ibm.ejs.jts.jts.TerminatorImpl.commit(TerminatorImpl.java:104)
 at com.ibm.ejs.jts.jts.CurrentImpl.commit(CurrentImpl.java:248)
 at com.ibm.ejs.jts.jts.CurrentSet.commit(CurrentSet.java:316)
 at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:540)
 at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:128)
 at
com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.jav
a:531)
 at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:2801)
 at
br.smat.ejb.acidente.EJSLocalBMPAcidente_d1942e0c.getAcidente(EJSLocalBMPAci
dente_d1942e0c.java:516)
 at java.lang.reflect.Method.invoke(Native Method)
 at
com.ibm.etools.utc.model.ReflectionMethodModel.invoke(ReflectionMethodModel.
java:68)
 at com.ibm.etools.utc.servlet.InvokeServlet.invoke(InvokeServlet.java:110)
 at com.ibm.etools.utc.servlet.InvokeServlet.doPost(InvokeServlet.java:323)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java(Compiled Code))
 at
com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServle
tInstance.java:110)
 at
com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecy
cleServlet.java:174)
 at
com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServ
let.java:313)
 at
com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecyc
leServlet.java:116)
 at
com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java
:258)
 at
com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidSer
vletReferenceState.java:42)
 at
com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletIns
tanceReference.java:40)
 at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(
WebAppRequestDispatcher.java:872)
 at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppReques
tDispatcher.java(Compiled Code))
 at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequest
Dispatcher.java:173)
 at
com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:79)
 at
com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker
.java:199)
 at
com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(C
achedInvocation.java:71)
 at
com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletReq
uestProcessor.java:182)
 at
com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListene
r.java:331)
 at
com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.jav
a:56)
 at
com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:432)
 at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:343)
 at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:592)







---------------------------------------------------------------------
Para cancelar a subscri��o, envie mensagem para: [EMAIL PROTECTED]
Para comandos adicionais, envie mensagem para: [EMAIL PROTECTED]

Responder a