Java e os erros inexperados

Por que será que os sistemas desenvolvidos atualmente sempre dão erros inexperados? Provavelmente porque o sistema não foi bem modelado antes de começar a implementação.

Este é um erro que ocorreu na página de Vale:

Ocorreu um erro inesperado. Utilize as informações abaixo para entrar em contato com o suporte.
 
Sistema: 	SGP Web - Sistema de Gerenciamento de Passagem
Ambiente: 	PRD - prd296.cvrd.br
Transação: 	
    com.accenture.cvrd.framework.model.dao.exception.PersistenceException: Falha ao executar a query:
    at com.accenture.cvrd.framework.model.dao.MappingQuery.executeQuery(MappingQuery.java:1321)
    at com.accenture.cvrd.framework.model.dao.MappingQuery.findByColumns(MappingQuery.java:292)
    at com.accenture.cvrd.framework.model.dao.MappingQuery.findByColumns(MappingQuery.java:242)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.impl.FerroviaDAOImpl$1.doInConnection(FerroviaDAOImpl.java:35)
    at com.accenture.cvrd.framework.model.dao.ConnectionTemplate.execute(ConnectionTemplate.java:55)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.impl.FerroviaDAOImpl.getFerroviaPeloId(FerroviaDAOImpl.java:32)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.services.impl.CoreServiceImpl.getFerrovia(CoreServiceImpl.java:1080)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.common.presentation.internet.action.LoginInternetHelper.persisteFerroviaNaSessao(LoginInternetHelper.java:37)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.presentation.vendapassagem.internet.action.PrincipalActionInternet.preparaPesquisaPassagens(PrincipalActionInternet.java:95)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.presentation.vendapassagem.internet.action.PrincipalActionInternet$1.executeLogic(PrincipalActionInternet.java:56)
    at com.accenture.cvrd.framework.presentation.action.BaseCommand.execute(BaseCommand.java:161)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.presentation.vendapassagem.internet.action.PrincipalActionInternet.execute(PrincipalActionInternet.java:51)
    at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:734)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:391)
    at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:908)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:458)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
    at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: java.sql.SQLException: Protocol violation
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:138)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:175)
    at oracle.jdbc.driver.DatabaseError.check_error(DatabaseError.java:898)
    at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:656)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:185)
    at oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPreparedStatement.java:503)
    at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:1029)
    at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:535)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1126)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3001)
    at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3043)
    at oracle_jdbc_driver_T4CPreparedStatement_Proxy.executeQuery()
    at com.accenture.cvrd.framework.model.dao.MappingQuery.executeQuery(MappingQuery.java:1316)
    ... 26 more

Para que não conhece a implementação do sistema, estas mensagens de erro são mais enigmáticas que o código em hexadecimal dos BSoD do Windows.

Mas bacane né? Recebo de presente um monte de código de erro, mas as não consigo comprar as passagens.

Update: Após clicar no botão voltar e preencher os campos de Origem e Destino recebo novas mensagens de “esperança”:

Ocorreu um erro inesperado. Utilize as informações abaixo para entrar em contato com o suporte.
 
Sistema: 	SGP Web - Sistema de Gerenciamento de Passagem
Ambiente: 	PRD - prd296.cvrd.br
Transação: 	
    com.accenture.cvrd.framework.model.dao.exception.PersistenceException: Erro ao executar o mapRow(): java.sql.SQLException: OALL8 is in an inconsistent state.
    at com.accenture.cvrd.framework.model.dao.MappingQuery.createDataList(MappingQuery.java:1247)
    at com.accenture.cvrd.framework.model.dao.MappingQuery.resultSetToList(MappingQuery.java:1195)
    at com.accenture.cvrd.framework.model.dao.MappingQuery.executeQuery(MappingQuery.java:1317)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.query.SgpMappingQuery.executeQueryComCache(SgpMappingQuery.java:159)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.query.SgpMappingQuery.findByFilter(SgpMappingQuery.java:124)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.query.SgpMappingQuery.findByFilter(SgpMappingQuery.java:233)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.impl.TremDAOImpl$12.doInConnection(TremDAOImpl.java:349)
    at com.accenture.cvrd.framework.model.dao.ConnectionTemplate.execute(ConnectionTemplate.java:55)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.impl.TremDAOImpl.getTrensPorComplementoRotaData(TremDAOImpl.java:337)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.vendapassagem.ServicoVendaPassagem.obtemPassagensMesmaRota(ServicoVendaPassagem.java:714)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.vendapassagem.ServicoVendaPassagem.pesquisaPassagensDisponiveis(ServicoVendaPassagem.java:277)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.services.impl.CoreServiceImpl.pesquisaPassagens(CoreServiceImpl.java:1555)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.presentation.vendapassagem.common.action.command.PesquisarPassagensCommand.executeLogic(PesquisarPassagensCommand.java:88)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.presentation.vendapassagem.internet.action.VendaPassagemInternetAction$2.executeLogic(VendaPassagemInternetAction.java:106)
    at com.accenture.cvrd.framework.presentation.action.BaseCommand.execute(BaseCommand.java:161)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.presentation.vendapassagem.internet.action.VendaPassagemInternetAction.pesquisaPassagens(VendaPassagemInternetAction.java:113)
    at sun.reflect.GeneratedMethodAccessor913.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:592)
    at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)
    at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)
    at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:734)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:391)
    at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:908)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:458)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
    at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: com.accenture.cvrd.framework.model.dao.exception.PersistenceException: Falha ao executar a query:
    at com.accenture.cvrd.framework.model.dao.MappingQuery.executeQuery(MappingQuery.java:1321)
    at com.accenture.cvrd.framework.model.dao.MappingQuery.executeQuery(MappingQuery.java:476)
    at com.accenture.cvrd.framework.model.dao.MappingQuery.executeForObject(MappingQuery.java:667)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.query.SgpMappingQuery.findByKey(SgpMappingQuery.java:306)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.query.SgpMappingQuery.findByKey(SgpMappingQuery.java:254)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.ferrovia.model.dao.impl.OSUnilogDAOImpl$1.doInConnection(OSUnilogDAOImpl.java:23)
    at com.accenture.cvrd.framework.model.dao.ConnectionTemplate.execute(ConnectionTemplate.java:55)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.ferrovia.model.dao.impl.OSUnilogDAOImpl.getPeloId(OSUnilogDAOImpl.java:21)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.ferrovia.model.unilog.ServicoOSUnilogImpl.getOrdemServico(ServicoOSUnilogImpl.java:13)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.query.TremQuery.mapRow(TremQuery.java:97)
    at com.accenture.cvrd.framework.model.dao.MappingQuery.createDataList(MappingQuery.java:1245)
    ... 35 more
    Caused by: java.sql.SQLException: OALL8 is in an inconsistent state.
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:138)
    at oracle.jdbc.driver.T4C8Oall.init(T4C8Oall.java:325)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:170)
    at oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPreparedStatement.java:503)
    at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:1029)
    at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:535)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1126)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3001)
    at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3043)
    at oracle_jdbc_driver_T4CPreparedStatement_Proxy.executeQuery()
    at com.accenture.cvrd.framework.model.dao.MappingQuery.executeQuery(MappingQuery.java:1316)
    ... 45 more

E a pergunta que não quer calar: você contrataria a empresa que desenvolveu este sistema para desenvolver um software de missão crítica para a sua empresa/indústria/usina nuclear? 😛

Update2: Ao logar no sistema eu recebo:

Ocorreu um erro inesperado. Utilize as informações abaixo para entrar em contato com o suporte.
 
Sistema: 	SGP Web - Sistema de Gerenciamento de Passagem
Ambiente: 	PRD - prd296.cvrd.br
Transação: 	

    com.accenture.cvrd.framework.model.dao.exception.PersistenceException: Erro ao executar o mapRow(): java.sql.SQLException: Protocol violation
    at com.accenture.cvrd.framework.model.dao.MappingQuery.createDataList(MappingQuery.java:1247)
    at com.accenture.cvrd.framework.model.dao.MappingQuery.resultSetToList(MappingQuery.java:1195)
    at com.accenture.cvrd.framework.model.dao.MappingQuery.executeQuery(MappingQuery.java:1317)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.query.SgpMappingQuery.executeQuery(SgpMappingQuery.java:42)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.impl.VendaPassagemDAOImpl$18.doInConnection(VendaPassagemDAOImpl.java:494)
    at com.accenture.cvrd.framework.model.dao.ConnectionTemplate.execute(ConnectionTemplate.java:55)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.impl.VendaPassagemDAOImpl.getVendasInternetSatisfazendo(VendaPassagemDAOImpl.java:491)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.vendapassagem.ServicoVendaPassagem.getVendasInternetPeloFiltro(ServicoVendaPassagem.java:1679)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.services.impl.CoreServiceImpl.getVendasInternetPeloFiltro(CoreServiceImpl.java:5715)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.presentation.vendapassagem.internet.action.MinhasPassagensAction$1.executeLogic(MinhasPassagensAction.java:83)
    at com.accenture.cvrd.framework.presentation.action.BaseCommand.execute(BaseCommand.java:161)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.presentation.vendapassagem.internet.action.MinhasPassagensAction.listar(MinhasPassagensAction.java:98)
    at sun.reflect.GeneratedMethodAccessor1471.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:592)
    at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270)
    at org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:187)
    at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:734)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:391)
    at com.evermind.server.http.ServletRequestDispatcher.unprivileged_forward(ServletRequestDispatcher.java:280)
    at com.evermind.server.http.ServletRequestDispatcher.access$100(ServletRequestDispatcher.java:68)
    at com.evermind.server.http.ServletRequestDispatcher$2.oc4jRun(ServletRequestDispatcher.java:214)
    at oracle.oc4j.security.OC4JSecurity.doPrivileged(OC4JSecurity.java:284)
    at com.evermind.server.http.ServletRequestDispatcher.forward(ServletRequestDispatcher.java:219)
    at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
    at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:734)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:391)
    at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:908)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:458)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
    at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
    at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: com.accenture.cvrd.framework.model.dao.exception.PersistenceException: Falha ao executar a query:
    at com.accenture.cvrd.framework.model.dao.MappingQuery.executeQuery(MappingQuery.java:1321)
    at com.accenture.cvrd.framework.model.dao.MappingQuery.executeQuery(MappingQuery.java:476)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.impl.CarroTremDAOImpl$6.doInConnection(CarroTremDAOImpl.java:104)
    at com.accenture.cvrd.framework.model.dao.ConnectionTemplate.execute(ConnectionTemplate.java:55)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.impl.CarroTremDAOImpl.getPeloCarro(CarroTremDAOImpl.java:91)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.impl.TremDAOImpl.associaLocalFerroviarioDesembarqueCarro(TremDAOImpl.java:60)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.impl.TremDAOImpl$1.doInConnection(TremDAOImpl.java:48)
    at com.accenture.cvrd.framework.model.dao.ConnectionTemplate.execute(ConnectionTemplate.java:55)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.impl.TremDAOImpl.getPeloId(TremDAOImpl.java:40)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.query.BilhetePassagemQuery.obtemTremUtilizandoCache(BilhetePassagemQuery.java:269)
    at br.com.vale.cm.gerenciamentopassagem.sgpweb.core.model.dao.query.BilhetePassagemQuery.mapRow(BilhetePassagemQuery.java:180)
    at com.accenture.cvrd.framework.model.dao.MappingQuery.createDataList(MappingQuery.java:1245)
    ... 45 more
    Caused by: java.sql.SQLException: Protocol violation
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:138)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:175)
    at oracle.jdbc.driver.DatabaseError.check_error(DatabaseError.java:898)
    at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:656)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:185)
    at oracle.jdbc.driver.T4CPreparedStatement.execute_for_describe(T4CPreparedStatement.java:503)
    at oracle.jdbc.driver.OracleStatement.execute_maybe_describe(OracleStatement.java:1029)
    at oracle.jdbc.driver.T4CPreparedStatement.execute_maybe_describe(T4CPreparedStatement.java:535)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1126)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3001)
    at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3043)
    at oracle_jdbc_driver_T4CPreparedStatement_Proxy.executeQuery()
    at com.accenture.cvrd.framework.model.dao.MappingQuery.executeQuery(MappingQuery.java:1316)
    ... 56 more

Como dá pra ver nada neste site funciona!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s