IBM's J2EE Best Practices
IBM has a list of J2EE Best Practices, and I agree with the whole thing at every point, though I must admit that I haven't followed it strictly. I haven't been using unit tests or J2EE container security on recent projects.
Point #5, Build what you know is my number one tip right now given my current work environment. Some people are trying to design an entire subsystem based on several complex structures of queues and message-driven beans when we've never even seen one in action. We have a good bit to learn here, and we should really do this in a few iterations and evolve it as necessary.