Lerna,
Back when we first implemented iControl (2001) SOAPFaults were only allowed to consist of a string so we chose to include the exception contents within that string. Not the most ideal implementation but that was all that we had.
Since then, the SOAP specs have been enhanced to support extendable Faults but not all client environtments support it so we opted to keep our original implementation in place.
So to answer your questions: No, we don't expose them as separate distinct exceptions but require the client to parse the response. And, No, this isn't a problem with wsdl2java.
-Joe