The <catch> tags is for catching events that may happen during the call, for example, trying to fetch a non-existent document. It is not for catching code errors. If you look at your call logs for this app, you'll see a parse error like this:
DocumentParser::FetchDocument - Parse error in file "http://...", line 15, column 15 - Element 'form' is not valid for content model: '(#PCDATA|audio|enumerate|value|assign|clear|data|disconnect|exit|foreach|goto|if|log|prompt|reprompt|return|script|submit|throw|var)*'
errno: 205 uri http://...
Parse errors like this can be avoided and should be caught during QA.