private void validateTarget(FacesContext facesContext, String label, List<?> targetEntries, List<?> oldSource, List<?> oldTarget) {
        String clientId = getClientId(facesContext);

        for (int i = 0; i < targetEntries.size(); i++) {
            Object targetItem = targetEntries.get(i);
            // Check if target item exists in source list
            if (!oldSource.contains(targetItem) && !oldTarget.contains(targetItem)) {
                FacesMessage message = MessageFactory.getFacesMessage(facesContext, UPDATE_MESSAGE_ID, FacesMessage.SEVERITY_ERROR, label);
                facesContext.addMessage(clientId, message);
                setValid(false);
                break;
            }
        }
    }
Validates the target entries against the source entries. If a target entry is not found in the source entries,
an error message is added to the FacesContext and the component is marked as invalid.

@param facesContext The current FacesContext.
@param label The label to be used in the error message.
@param targetEntries The list of target entries to be validated.
@param oldSource The original list of source entries to validate against.
@param oldTarget The original list of target entries to validate against.
@see <a href="https://github.com/primefaces/primefaces/issues/12059">GitHub #12059</a>
primefaces/src/main/java/org/primefaces/component/picklist/PickList.java