Cuando un cliente recibe un error del intervalo 400 o 5XX de las API de BFC, la carga útil resultante está formada por un registro driver_fault. El registro driver_fault contiene los campos siguientes:
|
Campo |
Contenido |
Notes |
|
Tipo |
string() del tipo client | driver | dependency |
Indica si el error está provocado por la solicitud del cliente, si es un error interno del controlador o si está originado por una dependencia (en cuyo caso se transferirá información adicional en el campo del motivo, por ejemplo el driver_faults anidado generado en la dependencia). |
|
subtype |
string() del tipo missing | conflict | unexpected |
Indica que la llamada está intentando realizar una operación en un recurso ausente, causa un conflicto dentro del BFC (por ejemplo, la creación o actualización de una entidad generaría un duplicado) o es inesperada en cualquier otro sentido (valor predeterminado). Lo utiliza la API de BFC para ayudar en la devolución de códigos de respuesta de HTTP correctos. Por ejemplo, un subtipo missing genera un código de estado de HTTP 404 mientras que un conflicto genera un código de estado 403. |
|
code |
string() con los valores completos <tenant>/<component_name>.<fault>. |
Por ejemplo: bbc/grid_service.fault_required_field, bbc/grid_service.fault_runtime_error. |
|
fmt |
string() con {integer()} para hacer referencia a los argumentos. |
Por ejemplo: "El nombre del grid {0} no es válido". {0} se reemplaza por la primera entrada del campo args. |
|
args |
Lista que contiene [number()|string()|string()] |
Estos valores se combinan (mediante sustitución) con fmt para crear el mensaje de error. |
|
Ruta |
[integer()] |
Representa la ruta en la lista de argumentos de funciones donde está la incidencia. Si el error está en el segundo valor del tercer argumento, la ruta sería [2,1]. Los valores se inician en 0, los argumentos tipo tupla se consideran como listas y los registros se consideran como listas y excluyen el primer argumento (el nombre del registro) en sus rutas. |
|
function |
Nombre string() de la función (además de la aridad) que se está ejecutando. |
Por ejemplo: "createGrid/4". Este ejemplo indica que se ha hecho una llamada a la función createGrid, que utiliza cuatro argumentos. |
|
dependency_id |
integer() |
El ID de componente del componente de dependencia que ha generado el fallo. Se utiliza cuando driver_fault type = dependency indica que la solicitud está aprovechando otro componente o recurso externo para ejecutar la operación. |
|
motivo |
[driver_fault()] |
Contiene algunos errores anidados. |
|
detalles |
string() |
Contiene más información detallada sobre el error. Por ejemplo, el seguimiento de pila. |
Nota: Todos los campos contienen el valor JSON null cuando están vacíos.
| Copyright © 2012 CA. Todos los derechos reservados. |
|