Further examination of JBoss code seems to indicate the DeploymentManager is not really connected to the appserver. So the JBossTarget.getAvailableModules() will returns null which will get processed by deployMgr.getAvailableModule() (and undoudtedly will encounter NPE).
I guess my question now is -- Does JBoss really support JSR-88?
Finally I got it working (at least past the point of exception). The correct (probably) connection URI is: "jboss-deployer://localhost:1099/jmx/invoker/RMIAdaptor". If you don't specify the path "/jmx/invoker/RMIAdaptor", JBoss will incorrectly default it to "/jmx/invoker/RIMAdaptor".