Po bitki pri Cerro Gordu 18. aprila 1847 je bil povišan v brevet majorja. Bojeval se je tudi v Contreras, Churubusco.
In Chapultepec. Zadnjič je bil ranjen. Do konca vojne je prejel dodatne promocije v poročnika polkovnika in polkovnika, vendar je bil njegov stalni čin še vedno kapitan inženirjev in ostal je kapitan, dokler ni bil leta 1855 premeščen v konjenico.