...Assuming that the library is correctly handling errors from metadata requests. I'm pretty sure that it is. If not, fix that, too.
Nathan: I think it would be very cool if, at least for getdap4, the error code returned by the server became the exit code for getdap4. This is possible in the DAP4 version because the errors are transmitted in such a way that the client should be able to get them easily. In DAP2 this is probably not possible.
James: The D4Connect code would have to be modified to extract the error and I think the d4serialize methods would too.