Mapper and service call
I think the mapper looks ok, but in the cost centers management method, you violate encapsulation by directly manipulating the travel's cost centers list.

I'd rather leave the list management to the travel class:

class Travel {
    ...
    void addCostCenter(CostCenter c) {
       ...
    }

    void removeCostCenter(CostCenter c) {
       ...
    }

    boolean containsCostCenter(CostCenter c) {
        ...
    }

    CostCenter findByDetails(Long detailsId) {
        ....
    }
}


... and use it like this:

protected void assignCostCenter(CostCenterDTO costCenterDTO, Travel travel, Long detailsId) throws BusinessException {
    // note: moved outside declaration of CostCenter to smaller scope
    if (costCenterDTO.getCostCenters() != null) {
        Center center = commonDao.find(costCenterDTO.getCostCenters().getId());
        CostCenter costCenter = costCenterDTOMapper.mapToDTO(costCenterDTO.getCostCenters(), travel, detailsId, center);
        // can costCenterDTOMapper.mapToDTO actually return null? If not, declare it like that and
        // remove the ugly null-check
        if (costCenter != null &amp;&amp; !travel.containsCostCenter(costCenter)) {
            // depending on the business logic, you might also consider
            //    travel.addCostCenterIfNotExists(costCenter)
            // and skip the if
            travel.addCostCenter(costCenter);
        }
    } else {
        travel.removeCostCenter(travel.findByDetails(detailsId));
    }
}