Depends on the cause of the problem.
If you are using several socks or boots in the uniform, that can mess things up.
Only specify one pair of boots when using the over clothing option. Often the boots will not be picked up until the current worn shoes are degraded and there are no alternative shoes. Caps and mittens normally prevent picking up helmets and gauntlets. Once option is to never import those, destroy all you get from sieges and let them degrade until only armor is available.
When using the uniform replaces clothing option, you can add 1 pair of socks and 1 pair of boots to the uniform. Most of the time the dwarf will wear only 1 sock and 2 boots.
It is much messier when the cause is a reclaimed fortress, where the military now only wearing a part of their armor. Messed up owner tags probably. Best is to assign a uniform without anything in it first and start over with assigning armor. Since it can take long for militia members to return after a reclaim, it is even better to remove all dwarves from the militia before resign so they do not get send on missions while you are not in control.
Armor skill is relevant for how much the dwarves are hindered by the weight of the armor. Make sure your dwarves have some armor skill before sending them into combat with multi layer armor.
I often start with the default metal armor over clothing. Dwarves will equip a chestpiece, legarmor, shield, weapon and sometimes a helmet. Whenever they get hit on a piece of clothing during sparring, they increase their armor skill. This setting also allows the dwarf to wear his jewelry, keeping some happier.
Near the end of the year I swap to armor replaces clothing. Spring is dangerous.
Archers are treated somewhat similar. However I specify no material. If there are enough metal armor pieces, they will wear them.
Contrary to some other comments , but also according to the wiki, you can wear a hood and gloves in combination with armor. A uniform I often use for the better trained dwarves:
(metal) helmet
hood
shirt
(metal) mail shirt
(metal) breastplate
cloak
gloves
(metal) gauntlets
trousers
(metal) greaves
socks (only one will be worn most of the time)
(metal) high boots
shield
melee weapon (own choice)
By double layering all body parts you will slightly increase damage absorption, but maybe just as important, reduce the risk of forgotten beast contamination during the inevitable armor swaps.
A very light armor set can be obtained by using bone armor and leather. This is mostly useful for training or when you want to circumvent clothing decay:
white helmet
(hood)
leather armor
(cloak)
white gauntlets
white leg armor
leather low boots
buckler
weapon (own choice)
As militia often let food to rot on the ground in their rooms when changing duty, do not let your militia carry food unless you need to station them for long times. A training or civilian uniform might also be better off without carried drinks.