The server does not support version 3.0 of the j2ee web module specification in eclipse

Sometimes we used to receive the following exception when running the web application in latest eclipse version.

The server does not support version 3.0 of the J2EE Web module specification. 

The issue is when creating the web project in latest eclipse by default the web version  will be selected as 3.0 but the server what we are having is not supporting the web 3.0.

There is two options to fix this issue.

1. Upgrade your server to latest version
2.Open org.eclipse.wst.common.project.facet.core.xml file from /workspace/<Your project name>/.settings and change jst.webversion to 2.5 instead 3.0

<installed facet="jst.web" version="2.5"/>

What is reflection in java?

Reflection is process of modifying the run time behavior of a class at run time.The java.lang.Class is provide many methods that can be used to get metadata, change the run time behavior of class.

What are the main classes which are used in struts application?


  1. ActionServlet : Its is back-bond of web application. Its a controller class responsible entire request.
  2. Action : Using Action classes all the business logic is developed us call model of the application also.
  3. ActionForm : Action Form class is Java Bean. its mapping between form data to Action.Form's data objects to be auto wiring client form data to server side.
  4. ActionMapping : Its mapping object and Action.
  5. ActionForward : This is getting result and controller to forward destination.

What is interceptor?

  1. Interceptors are an objects that dynamically intercept Action invocation.
  2.  It is invoked at the preprocessing and postprocessing of a request.
  3.  Interceptors provide a developer way to encapsulate common functionality in a re-usable that from one or more Action.
  4.  It is perform validations, exception handling, logger, intermediate results etc.

What is abstraction?

Abstraction is a process of hiding implementation and showing only functionally to the user. 

What is the relation between ValueStack and OGNL ?

ValueStack is a place where all the data related to action and action itself store. OGNL is a mean which the data in ValueStack is manipulated.

Different Modes of autowiring


There are five type of auto wiring in Spring:
  • no : no autowire
  • byName : Autowiring by property name, means bean matching property name is autowired.
  • byType : Bean having type as that of property type is autowired.
  • constructor : Similar to byType just that the property is in constructor.
  • autodetect :  Spring is allowed to select autowiring from byType and constructor

Spring Autowiring

  • By Autowiring , Spring injects dependencies without having to specify those explicitly.
  • Spring inspects bean factory contents and establishes relationships amongst collaborating beans. To implement it,just add autowire property in xml configuration.

What are the important Spring beans life cycle methods?


There are two important beans life cycle methods.
  1. setup
  2. teardown
setup - It is called when bean is load into the container.
teardown - It is called when bean is unloaded from the container.

What is Classloader in Java?

  • The classloader is a subsystem of JVM that is used to load classes and interfaces.
  •  There are many types of classloders.
  • e.g. Bootstrap classloader, Extenstion classloader, System classloader, Plugin classloader etc.