Estou com um problema, quando rodo meu programa pelo debug ele esta pegando uma exception geral e quando rodo com o executavel ele pega uma exception especifica o problema é que preciso gravar numa tabela de erro a mensagem especifica não a generica alguem já passou por isso
Eu tive este problema mas não foi eu quem resolvi, a pessoa que resolveu para mim alterou o escopo do tratamento de exceção, no meu caso ele acrescentou o throws ao método
(e na chamada)
try {
geraRelatorio(pdf, filePath);
JOptionPane.showMessageDialog(this, “Relatório salvo com sucesso”, “Info”, JOptionPane.INFORMATION_MESSAGE);
} catch (Exception ex) {
ex.printStackTrace();
JOptionPane.showMessageDialog(this, “Houve um problema na escrita do arquivo, por favor verifique se este”
+ “arquivo não está sendo utilizado por outra aplicação.”, “Erro”, JOptionPane.ERROR_MESSAGE);
Não, no seu print está a tela de debug da sua IDE.
Um StackTrace é um texto contendo toda a pilha de chamada até o momento em que a exceção foi lançada.
Para usar o printStackTrace basta colocar dentro do catch:
ex.printStackTrace();
Ao executar, vai aparecer uma “lista” de erros se ocorrer naquele trecho de código.
No try/catch tem os filtros de exceções são SicsFaultDetails e Exception, se uma exceção for diferente de SicsFaultDetails, será tratada no filtro Exception.
Se não está sendo tratada na SicsFaultDetails mas está na Exception, então não é uma exceção SicsFaultDetails e pode ser uma outra exceção que vc desconheça.
Somente chamando o printStackTrace é possível identificar o que está acontecendo.
SICS0007 - SICS Message
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:357)
at java.lang.Class.newInstance(Class.java:310)
at org.apache.axis.encoding.ser.BeanDeserializer.(BeanDeserializer.java:104)
at org.apache.axis.encoding.ser.BeanDeserializer.(BeanDeserializer.java:90)
at com.SicsNt.www.SystemTypes.SicsFaultDetails.getDeserializer(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.axis.encoding.ser.BaseDeserializerFactory.getSpecialized(BaseDeserializerFactory.java:154)
at org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(BaseDeserializerFactory.java:84)
at org.apache.axis.encoding.DeserializationContext.getDeserializer(DeserializationContext.java:464)
at org.apache.axis.encoding.DeserializationContext.getDeserializerForType(DeserializationContext.java:547)
at org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetailsBuilder.java:157)
at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2756)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:647)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
at org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java:796)
at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:144)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
at org.apache.axis.client.Call.invoke(Call.java:2767)
at org.apache.axis.client.Call.invoke(Call.java:2443)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)
at com.SicsWsBusinessEntryPoint.www.SicsWsBusinessEntryPoint_interface.SicsWsBusinessEntryPointBindingStub.generateAutoProtectionCommit(Unknown Source)
at com.csc.LegatusBR.xml.sics.SicsPC_Policy.GenerateAutoProtectionCommitNoChained(SicsPC_Policy.java:640)
at com.csc.LegatusBR.xml.sics.SicsPC_Policy.CreateSectionsNoChained(SicsPC_Policy.java:717)
at com.csc.LegatusBR.xml.sics.SicsPC_Policy.StartCededDsg(SicsPC_Policy.java:207)
at com.csc.LegatusBR.entities.ThProcessIn.run(ThProcessIn.java:253)
nesse caso deu certo pegou a mensagem que eu preciso, o problema é quando gero o .jar que ai nao tenho como debugar porque nao passa pelo SicsFaultDetails e vai direto para a Exception
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
faultSubcode:
faultString: SICS0007 - SICS Message --> Essa mesagem vem quando executo o .jar
faultActor:
faultNode:
faultDetail:
{http://www.SicsNt.com/SystemTypes}FaultDetails:
date xsi:type=“xsd:date”>2018-03-20
time xsi:type=“xsd:time”>16:34:48 time>
xpath>/generateAutoProtectionInput /xpath>
explanation>The Main Limit of section 1.1.1036.01 is exceeding the program limit of BRL. --> essa mensagem vem no debug
explanation>
Galera obrigado pelas suas dicas, descobri que o problema não é quando debugo e o execuavel o problema é que no debug estou usando o tomcat como web service e o no cliente faz por websphere, agora não sei se será alguma configuração que tem que setar lá