} catch (Exception e) {
StringBuffer msgBuffer = new StringBuffer();
msgBuffer.append(DECIPHER_ERROR + "\n" + " Tag being processed : " + tag.getTagName() + "\n"
+ " Current Tag Line : " + tag.getTagLine());
appendLineDetails(msgBuffer);
ParserException ex = new ParserException(msgBuffer.toString(), e);
parser.getFeedback().error(msgBuffer.toString(), ex);
throw ex;
}
}
node = EndTag.find(line, posInLine);
if (node != null)
return node;
} else {
node = stringParser.find(this, line, posInLine, balance_quotes);
if (node != null)
return node;
}
return null;
} catch (ParserException pe) {
throw pe;
} catch (Exception e) {
StringBuffer msgBuffer = new StringBuffer(
"NodeReader.readElement() : Error occurred while trying to read the next element,");
StringWriter sw = new StringWriter();
e.printStackTrace(new PrintWriter(sw));
appendLineDetails(msgBuffer);
msgBuffer.append("\n Caused by:\n").append(sw.getBuffer().toString());
ParserException ex = new ParserException(msgBuffer.toString(), e);
parser.getFeedback().error(msgBuffer.toString(), ex);
throw ex;
}
}