why the archive of custom taxonomy term shows nothing?

You solved this yourself by running a new query, but a new query should not be necessary as @Milo states in the comments to your question. The main query should be doing automatically what your secondary query is doing.

I suspect this has something to do with the way you have registered that custom post type, since I am able to duplicate this problem only when I register a type with a 'public' => false argument. There may be other arguments that could do this, or argument combinations, but that is the only one I found in my less than exhaustive search. Use 'public' => true when you register the post type, if you are not already doing so.