Римский полководец видел, что в данный момент карфагенская армия численно превосходит его войска, и поэтому был вынужден отказаться от сухопутного сражения. Поэтому он подготовил к битве 35 квинквирем, посадил на них отборных легионеров и отплыл из Таррагоны на юг. Противники встретились у устья Ибера, где стоял на якоре карфагенский флот. Сципион рассчитывал напасть на пунийцев внезапно, но служба разведки была поставлена у Гасдрубала хорошо, и он был своевременно извещен о приближении вражеских кораблей. Карфагенская армия выстроилась на берегу, а сорок кораблей Гамилькара вышли в открытое море и приготовились к бою. Гасдрубал разъезжал на коне вдоль побережья, любуясь зрелищем морской битвы.
Но любоваться было нечем. Римляне так быстро и умело атаковали пунийцев, те не выдержали натиска, потеряли два корабля и стали отступать к берегу. В результате продолжающихся атак карфагеняне лишились весел на четырех кораблях, после чего на эти суда устремилась римская морская пехота. По перекидным мосткам легионеры перебрались на вражеские корабли и перебили всех находившихся там воинов. В панике Гамилькар приказал капитанам выбрасывать корабли на берег, а командам спасаться под защитой сухопутной армии. Один за другим карфагенские корабли врезались носами в прибрежный песок, а насмерть перепуганные моряки прыгали за борт и по мелководью бежали к берегу. К брошенным кораблям подходили вражеские квинквиремы, римляне канатами привязывали пунийские суда за корму и вновь быстро уходили в море. Гасдрубал и опомниться не успел, как 25 карфагенских кораблей были захвачены неприятелем и уведены на буксире. Эта победа имела для римлян стратегическое значение, поскольку теперь их флот хозяйничал в водах вдоль восточного побережья Испании. «
Зато Сципион перешел в наступление. Римские корабли спустились вдоль побережья к югу, высадили десант и внезапной атакой захватили и разграбили город Онусу. После чего Гней Корнелий повел флот на Новый Карфаген. Однако орешек оказался не по зубам, и всё закончилось банальным разорением окрестностей и поджогом строений, лежавших за линией городских укреплений. Затем был сделан набег на Лонгунтику, где римляне захватили склады с запасами спарта[69]
, а затем подвергли двухдневной осаде город Эбус, расположенный на Питиусских островах. Успехи римлян настолько впечатлили окрестные народы, что жители Балеарских островов прислали к Кальву посольство с просьбой заключить мир. Мало того, когда Сципион после рейда по островам вернулся в Испанию, к нему пришли послы от многих иберийских племен и согласились признать над собой власть Рима. По свидетельству Тита Ливия, «Несмотря на успехи Гнея Корнелия, сенаторы решили послать в Испанию дополнительные силы. Причины, почему они решились на такой шаг, Полибий излагает по-военному четко: «