Interfaz Mapper.getFieldValue

/** 
 * Si un valor de campo especializado no puede ser cubierto por la
 * funcionalidad <code>SearchServiceMapper.getValue()
 * <code> este método
 * se deberá anular en el correlacionador para el servicio de búsqueda
 *   específico.
 * @param objList lista de objetos de entidad para este ID de servicio
 *   de correlacionadores.
 * @param field el campo cuyo valor es necesario.
 */ 
Object getFieldValue(final SearchServiceKey serviceId, 
   final List objList, final SearchServiceFieldDtls fieldDtls);

La infraestructura del Servidor de búsqueda genérico intentará recuperar un valor de atributo de entidad a partir de una lista de objetos utilizando metadatos de campo recuperados de la tabla de campos del de búsqueda. Normalmente, las objectLists contendrán estructuras dtls de entidad y en esos casos resulta trivial para el Servidor de búsqueda genérico utilizar el reflejo para identificar el atributo correcto y obtener su valor; esto es exactamente lo que se realiza entre bastidores.

No obstante, si la objectList contiene algo distinto de una estructura dtls de entidad (como en el caso de Person Search, donde hay un AddressElementDtlsList presente, que contiene una sola estructura AddressElement) y, a continuación, el método de interfaz Mapper.getFieldValue debe ser implementado por desarrolladores de búsqueda.

El método de interfaz Mapper.getFieldValue debe implementarse si un correlacionador no puede correlacionar automáticamente un valor de atributo específico. La entidad relevante correspondiente y el nombre de campo se pasan a través del parámetro de estructura fieldDtls, y el valor del atributo puede recuperarse del objList mediante un reflejo. Corresponde al desarrollador de búsquedas implementar esta interfaz del método para el tipo o tipos a los que se debe prestar servicio.

No se deben devolver series vacías de este método, siempre se deben devolver valores nulos.