Java EE advantages and pitfalls