JWM claims to support _NET_CURRENT_DESKTOP, but does not set it until the first change of desktop.
This was found while investigating a problem with Citrix Receiver (www.citrix.com) running with JWM and seems to violate a MUST in EWMH.
Examination of the current (579) source suggests the bug is still present there. It seems that the call to ReadCurrentDesktop() should set it,
but that fails because the global variable "initializing" has been cleared. My guess is that staticaly initializing the global "currentDesktop" to -1 would fix this.