Java Enterprise Edition

Last edited: 1 Oct 2019

Desktop viewHomePage

Note that "Java EE" is now called "Jakarta EE".


EJB home page

What's new in EJB 3.1? part 1 - part 2 - part3 - part 4 - part 5 - A Significant Step Towards Maturity

What's new in EJB 3.2?


Home page, FAQ (very extensive), Introduction

Extensive tutorial with many code examples

Accessing SMTP response codes in JavaMail

Using delivery status notifications

Using encryption with JavaMail?: The JavaMail-Crypto API project is a bit dated, but it does purport to add S/MIME and OpenPGP support to JavaMail?.

Third party extensions, e.g. local store implementations

James is an open source SMTP, POP3 and NNTP server written in Java by the good folks at Apache. Its Mailet API enables automatic processing of emails, kind of what servlets do for HTTP requests. Introductory article part 1, part 2

Aspirin is an embeddable Java SMTP server. While useful mostly for send-only situations, it has some provisions to receive mails as well (to handle bounces and such).

Q: I'm marking my mails as SEEN, but next time I access the INBOX, they're once again presented as unread. What gives?

From the JavaMail FAQ : Just because a flag exists doesn't mean the flag is supported by all mail servers/providers. For instance, besides deleting messages, the POP protocol supports none of them. ... To find out what flags are supported, ask the folder with getPermanentFlags().

Q: I'm having trouble connecting to Gmail using JavaMail?; something about "starttls". What gives?

This, too, is covered in the JavaMail? FAQ: How do I access Gmail with JavaMail?

Java Message Service (JMS)

Introduction and tutorial

Specification and javadocs

open source JMS implementations: ActiveMQ - OpenMQ

Java Naming and Directory Interface (JNDI)

Home page


How to go about ObtainingRemoteJndiContext ?

Introductory articles on JavaWorld? - 1) Naming Services 2) Directory Services 3) Advanced JNDI 4) Example Application

LDAP: Specification Introduction Java Tutorial Chapter

Some software for using LDAP:

Java Management Extension (JMX)

Home page


JmxExample - code for an application making MBeans available for monitoring

Best Practices

JConsole and VisualVM are tools that come with the JVM and can be used to access local or remove JVMs via JMX.