I am working on a Java application which uses Servlets, an application server, JMS, JMX etc.
So is this a Java EE application? And are there any particular criteria to say a particular application is a Java EE application?
I am working on a Java application which uses Servlets, an application server, JMS, JMX etc.
So is this a Java EE application? And are there any particular criteria to say a particular application is a Java EE application?
But it doesn't matter how you are going to call it. Would it matter if you are going to call your application an "apache commons application" in case you are using any of the apache commons libraries? No :)
I don't completely agree with the other answers.
You have a Java EE application if you can package it as a .war
or an .ear
and deploy it according to the Java EE standards.
If you have a stand-alone application which uses JMS, it doesn't make it a Java EE application in the sense most people will understand it. Same for JMX, JavaMail or other APIs. Still, such an application would use the Java EE API. But in your case, I would say, yes, you have a Java EE application.
For me it is pretty simple. If you application uses the Java EE API which is provided to you by some Application Server then your application is a Java EE application.
List of EE APIs:
If you are using any of these Java EE specification
and fulfilling Enterprise application
software criteria, then your application is EE.
First you need to know what is enterprise software/application.
Enterprise application software is application software that performs business functions such as order processing, procurement, production scheduling, customer information management, energy management, and accounting. It is typically hosted on servers and provides simultaneous services to a large number of users, typically over a computer network. This is in contrast to a single-user application that is executed on a user's personal computer and serves only one user at a time.
Java EE has many specifications: such as JDBC, RMI, e-mail, JMS, web services, XML, etc., and defines how to coordinate them. Java EE also features some specifications unique to Java EE for components. These include Enterprise JavaBeans, Connectors, servlets, JavaServer Pages and several web service technologies. This allows developers to create enterprise applications that are portable and scalable, and that integrate with legacy technologies.
Servlets are part of Java EE.
If you look for javax.servlet you'll find it in the javaee jar. Some of the technologies in Java EE (from http://java.sun.com/javaee/technologies/) are:
If your application is using any Java EE API, then you can consider your application based on Java EE technology.
You can check the docs for the Java EE APIs.