One caveat is that you did not provide any new information for the code that could handle the exception; You only provided something useful to the developer when debugging the problem. It may be all you need, but it seems a little shortsighted.
I prefer not to throw an exception of exactly the same type, especially one as general as an exception, because I could deal with a ConnectionTimeoutException exception, but I was not able to handle a PlanetExplodedException exception. I would not know how to deal with a general exception, except perhaps for registering it.
source share