Cisco ASDM recently started giving me the following error: unconnected sockets not implemented.

After checking around, it seems that this is a known issue with newer Java releases, specifically the current version seems to require JRE 1.6u7.

Downgrading is an option but it is unnecessary.

This dialog controls which JVMs will be used when using JNLP (Java Network Launch Protocol). This is the technology behind the Cisco ASDM Java Applet. Uncheck the newer JVM versions and run the ASDM applet from the Cisco ASA web interface... this fix will not work with the ASDM Launcher.

This way you can still use the newer JVM for most applications, even re-enable/disable them for JNLP as needed.