He fought in the Second Seminole War, including the Battle of Wahoo Swamp, receiving a brevet major appointment for gallant conduct. During the Mexican–American War, Morris served as Major of the Artillery Battalion of the "Army of Occupation" and fought at the Battle of Palo Alto and Battle of Resaca de la Palma. Returning to the United States in 1848, Morris was promoted to major, 4th Artillery and served in various garrison and frontier positions. In early 1861, he was stationed at Fort Ridgely, Minnesota.