Servlet - o que eu faço quando eu tenho throws diferentes de IOException?como eu faço pra lançar?

2 respostas
K

Ola pessoal

tenho o seguinte problema
em alguns( pra nao dizer todos) eu tenho throws diferentes de IOException(e ate onde eu sei, servlet so pode lançar IOException).
Nestes casos, como eu faco com os meus throws diferentes de IOException?
posso fazer ate try e cacth, mas nao sei se isso é o correto, e estou tendo caso em que perco o erro por causa disso?
eu lanco os throws como IOException mesmo?

qual é a maneira “correta” de se fazer nestes casos?

abs
T+

2 Respostas

Luiz_Augusto_Prado

vc quer um tratamento geral?

usa Exception no lugar de IOException

victorwss

Encadeamento de exceções ao resgate!

Essa é a forma geral:

try {
    ...
} catch (Exception e) {
    throw new IOException(e);
}

Talvez o que você vá querer é isso:

try {
    ...
} catch (Throwable e) {
    if (e instanceof IOException) throw (IOException) e;
    throw new IOException(e);
}

Ou então isso:

Talvez o que você vá querer é isso:

try {
    ...
} catch (Throwable e) {
    if (e instanceof RuntimeException) throw (RuntimeException) e;
    if (e instanceof Error) throw (Error) e;
    if (e instanceof IOException) throw (IOException) e;
    throw new IOException(e);
}
Criado 1 de julho de 2008
Ultima resposta 1 de jul. de 2008
Respostas 2
Participantes 3