Have you installed another linux distro after ubuntu? If you have, it may have formated the swap you've been using and changed its UUID so it does not mount at boot time. This didn't happen in older ubuntu versions as the fstab file worked using /dev/hd* nomenclature, not UUIDs.
Find out what your partition UUIDs are by using
and copyf the swap partition UUID alphanumeric string. You can then backup your fstab file with
ls -l /dev/disk/by-uuid
and then edit your fstab with
sudo cp /etc/fstab /etc/fstabbak
changing the old UUID to new. Now should get it back and running.
gksudo gedit /etc/fstab
You could even go back to fstab using the /dev/hd* naming system, which still works, but as an exercise in understanding linux partitioning, I thought it worth giving you the whole works.