Are you using OpenGL (or JOGL) at all?? The link you posted involves using functions in OpenGL for cross products and normalization. That being said, these functions are easy enough to do out step by step.
Here's the math: https://math.stackexchange.com/questions/305642/how-to-find-surface-normal-of-a-triangle