Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JBoss 7 NOT Java EE6 Certified

I am really wonder what this actually means?

Can I use JBoss 7 in development and also in production with all EE 6 features (I need JMS, EJB 3.1, JSF 2.1, CDI...) or I have to wait for later releases of JBoss 7?

If not, what is the option since JBoss 6.x is only Web Profile certified and what is explanation for "only Web Profile certified"?

Thanks

like image 320
Nikola Avatar asked Nov 28 '22 07:11

Nikola


2 Answers

An application server is only Java EE 6 "Full Profile" certified if it implements all aspects of the huge Java EE API.

An application server is only Java EE 6 "Web Profile" certified if it implements at least the following aspects of the Java EE API:

  • Servlet 3.0 / JSP 2.2 / EL 2.2 / JSF 2.0 / JSTL 1.2
  • EJB 3.1 Lite (support for Local containers only, i.e. no EARs)
  • JPA 2.0 / JTA 1.1
  • CDI 1.0
  • Bean Validation 1.0

JBoss 6 is only "Web Profile" certified, even though it also implements a lot of other Java EE aspects like JMS, EJB 3.1 Full, JAX-RS, etc, because it does not implement the entire Java EE API yet. If JBoss 6 offers exactly what you need, then I wouldn't worry about this certification. It's not an evidence that it's production-ready or something.

See also:

  • Overview of Java EE technologies and requirements for Web Profile
like image 112
BalusC Avatar answered Dec 04 '22 20:12

BalusC


Can I use JBoss 7 in development and also in production with all EE 6 features (I need JMS, EJB 3.1, JSF 2.1, CDI...) or I have to wait for later releases of JBoss 7?

It depends on whether you associate any value with a certificate. JBoss 7 is not Java EE6 certified, because it has not yet been run against the Java EE 6 Full Profile TCK (technology compatibility kit), not that it doesn't implement any of the features required by Java EE 6. According to this post in the JBoss forums, a later 7.x (most likely 7.1) release of JBoss 7 will undergo the certification process.

If not, what is the option since JBoss 6.x is only Web Profile certified

You could wait for EAP 6 (which would include the certified JBoss 7.x release).

and what is explanation for "only Web Profile certified"?

JBoss 7 has passed the Web Profile TCK (which is a seperate TCK). The Web Profile specification outlined in JSR 316, states that the following components are required in a Web Profile compliant container:

WP.2.1 Required Components

The following technologies are required components of the Web Profile:

  • Servlet 3.0
  • JavaServer Pages (JSP) 2.2
  • Expression Language (EL) 2.2
  • Debugging Support for Other Languages (JSR-45) 1.0
  • Standard Tag Library for JavaServer Pages (JSTL) 1.2
  • JavaServer Faces (JSF) 2.0
  • Common Annotations for theJava Platform (JSR-250) 1.1
  • Enterprise JavaBeans (EJB) 3.1 Lite
  • Java Transaction API (JTA) 1.1
  • Java Persistence API (JPA) 2.0
  • Bean Validation 1.0
  • Managed Beans 1.0
  • Interceptors 1.1
  • Contexts and Dependency Injection for the Java EE Platform 1.0
  • Dependency Injection for Java 1.0

WP.2.2 Optional Components

There are no optional components in the Web Profile. Web Profile products may support some of the technologies present in the full Java EE Platform and not already listed in Section WP.2.1, “Required Components”, consistently with their compatibility requirements.

By passing the Web Profile TCK, and by also including the components required in the Full Profile (allowed by WP2.2), you can continue to build applications requiring the full profile, on JBoss 7.

If your application requires only the web-profile instead of the full profile, then you may use JBoss 7 as a Web Profile certified container. There is of course, JBoss EAP, for those who require an enterprise solution with paid support options; the community version does not have any such SLA-based support option from JBoss/Redhat.

like image 45
Vineet Reynolds Avatar answered Dec 04 '22 22:12

Vineet Reynolds