Guía de desarrollo

Local Navigation

Gestionar excepciones

La RIM Cryptographic API presenta dos excepciones:

Excepción Descripción

javacard.security.CryptoException

CryptoException es la excepción que surge con más frecuencia. En aquellos casos en los que sea posible, se producirá una excepción de subclase que indicará la causa del error. Entre los ejemplos de subclases CryptoException, podemos distinguir InvalidKeyPairException, InvalidKeyFormatException y InvalidSignatureFormatException.

En caso de que ninguna de las subclases se ajuste al error, se devolverá CryptoException.

CryptoIOException

CryptoIOException es una excepción IOException que contiene una excepción CryptoException. Algunas de las clases relacionadas con el flujo, como EncryptorOutputStream, sólo pueden producir devolver IOException.

La excepción CryptoIOException se da únicamente cuando tiene lugar una excepción IOException dentro de un miembro de cifrado. Por ejemplo, si se produce un error y surge una excepción IOException en un flujo EncryptorOutputStream, se producirá una excepción CryptoIOException, en lugar de IOException.

Con el objeto de facilitarle el proceso de depuración de la aplicación, la excepción CryptoIOException se gestiona de forma independiente de la excepción IOException.

Ejemplo de código

En el siguiente ejemplo de código, se utiliza un bloque try/catch para permitir al gestor de excepciones que capte cada una de las excepciones. La cadena asociada con la excepción se muestra en la consola, para que pueda comprobar el registro con el fin de determinar si se ha producido una excepción.

try
{
    //*cryptographic code
} 
catch( IOException e ) 
{
    System.out.println(e.toString());
}
catch( CryptoTokenException e )
{
    System.out.println(e.toString());
}

¿Le ha resultado útil esta información? Envíenos sus comentarios.