就在甘茂的十五萬秦、蜀聯軍攻打漢中的時候,屈匄的十萬楚軍正在商洛與司馬錯、庶長章的十八萬秦軍對峙。三月二十二日,屈匄接到漢中快馬傳報,方知秦、蜀的十五萬大軍合擊漢中劉襄的數萬楚軍,漢中危在旦夕,後悔一個月前不聽付將侯醜的勸告,撥軍回駐漢中。隨急召侯醜商議,侯醜:“漢中的二萬楚軍,怎能抵擋十五萬秦、蜀聯軍一擊?不出十日,漢中便會失守,現在舉兵回援,尚能保住上庸(安康)。再過十日,上庸(安康)便不保了”。屈匄正準備調軍回援漢中,探馬又來報:“樗裏疾率五萬秦軍從洛南東出,已到五裏川(鎮),正向我商南包抄過來”。侯醜:“果然不出所料!將軍宜將大軍撤回少習、商南,五萬楚軍向安康開拔,或許還能把秦軍拒於石泉以西”。
屈匄:“現在十萬大軍一撤,司馬錯、庶長章二路十八萬大軍就會乘勢掩殺過來,我軍就得大敗。為今之計,隻有守住商洛,放棄漢中,全力將秦軍打退,然後用商洛換回漢中”。侯醜:“漢中一失,甘茂大軍必出鄖西,合擊商南”。屈匄:“甘茂大軍破漢中、取安康,必自損二、三萬軍,能到商南合擊不過五、六萬兵,會合樗裏疾,最多是十一萬秦軍,我商南楚、齊聯軍五萬,西峽、浙川尚有五、六萬,正好與之抗衡。秦軍身在楚地,不出半個月,必敗無疑。商南秦軍一敗,商洛秦軍自然便退”。侯醜:“將軍得雖是,但兩處抗衡的軍隊有七萬是齊軍,一旦齊軍在背後插刀,那可就是三十五萬秦、齊聯軍撲殺十八萬楚軍了”! 屈匄:“侯將軍怎麼就對齊軍如此多疑呢”?侯醜:“屈將軍不聽侯某忠言,十多萬楚軍必死在秦、齊聯軍之手”!完長歎而去。
四月二十日上午,屈匄和侯醜正在帳中議事,忽見探馬慌張來報:“稟報將軍!漢中、安康已被秦、蜀軍隊占領,甘茂的五萬秦軍已到鄖西,正在向商南開來。樗裏疾的五萬秦軍已出西官莊”。 屈匄鎮定地:“傳令三軍!驚慌失措,臨陣退逃者,斬”!隨令商南的五萬軍隊(楚軍三萬,齊軍二萬)迎戰樗裏疾的五萬秦軍,西峽、浙川的五萬楚軍迎戰甘茂的五萬秦軍,少習、商邑二萬楚軍隨時準備出擊。
二後,樗裏疾的五萬秦軍紮營於上羅家莊,這裏離商南城關鎮大約二十裏。商南楚將隨對齊將:“樗裏疾的五萬秦軍正在安營紮寨,趁其立腳未穩,打他個措手不及”。齊將:“善”!於是,三萬楚軍、二萬齊軍齊出,分二路攻擊秦軍。半時後,楚軍一萬騎兵、齊軍五千騎兵先到,樗裏疾隨率一萬秦軍騎兵列陣以待,樗裏疾見楚、齊二路騎兵已到,未等其列陣,即令一萬秦軍騎兵全線出擊,意圖打亂楚、齊軍騎兵。楚將見秦軍騎兵奔殺過來,並不慌張,不愧是屈匄的將領,遂令一萬楚軍騎兵變為二縱隊,齊軍騎兵為左路,楚軍騎兵為中、右路,衝殺反擊。楚、齊三路騎兵疾向秦軍騎兵衝殺過去。不一會,雙方接戰,秦軍萬騎被衝開成三段,混戰起來。秦軍騎兵雖勇,戰鬥力很強,但數量比楚、齊軍騎兵兵少了五千,漸漸地被楚、齊軍騎兵包圍。
雙方激戰半個多時,樗裏疾見楚、齊軍騎兵兵數量占優勢,秦軍騎兵損失嚴重,再打下去,一萬騎兵會死傷殆盡,想令步兵出擊助戰,隻聽殺聲震,由遠而近,三萬五千名楚、齊步兵已經趕到,戰場形勢非常嚴竣。樗裏疾心裏很清楚,再過半時,秦軍騎兵必敗無疑,騎兵一敗,步兵擋不住楚、齊軍騎兵兵的衝擊,也必然會敗。因此,樗裏疾不敢下令步兵出擊,急令全體騎兵殺出包圍,撤回營寨。楚、齊軍騎兵追至營前,被秦軍步兵弓箭射回。這一戰,秦軍馬軍被斬二千兵,楚、齊聯軍損失一千五百兵。楚、齊聯軍列陣叫戰,樗裏疾堅閉營寨,任由楚軍挑戰,就是不出寨迎戰。聯軍無奈,隻好退回商南城關鎮大營。捷訊傳到,屈匄大喜,唯有侯醜憂心忡忡。