Asdrúbal había estado a la defensiva desde la derrota de su flota en la batalla del río Ebro en la primavera de 217 a. C.