Techies Experience

Tuesday, March 11, 2014

How to Integrate Struts 1.x with Struts 2.x.

How to Integrate Struts 1.x with Struts 2.x Before diving into the integration of Struts framework,
let us first take a look at the Struts 1.x and 2.x configuration separately. suppose we have an exisisting web Application and we need to integrate struts 1.x application to struts 2.x .

Struts 1.x web.xml file


 <?xml version="1.0" encoding="ISO-8859-1"?>  
 <!DOCTYPE web-app  
  PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"  
  "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">  
 <web-app>  
  <!-- Standard Action Servlet Configuration (with debugging) -->  
  <servlet>  
   <servlet-name>action</servlet-name>  
   <servlet-class>  
       org.apache.struts.action.ActionServlet  
      </servlet-class>  
   <init-param>  
    <param-name>application</param-name>  
    <param-value>ApplicationResources</param-value>  
   </init-param>  
   <init-param>  
    <param-name>config</param-name>  
    <param-value>/WEB-INF/struts-config.xml</param-value>  
   </init-param>  
   <init-param>  
    <param-name>debug</param-name>  
    <param-value>2</param-value>  
   </init-param>  
   <init-param>  
    <param-name>detail</param-name>  
    <param-value>2</param-value>  
   </init-param>  
   <init-param>  
    <param-name>validate</param-name>  
    <param-value>true</param-value>  
   </init-param>  
   <load-on-startup>2</load-on-startup>  
  </servlet>  
  <!-- Standard Action Servlet Mapping -->  
  <servlet-mapping>  
   <servlet-name>action</servlet-name>  
   <url-pattern>*.do</url-pattern>  
  </servlet-mapping>  
  <!-- Struts Tag Library Descriptors -->  
  <taglib>  
   <taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>  
   <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>  
  </taglib>  
  <taglib>  
   <taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>  
   <taglib-location>/WEB-INF/struts-html.tld</taglib-location>  
  </taglib>  
  <taglib>  
   <taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>  
   <taglib-location>/WEB-INF/struts-logic.tld</taglib-location>  
  </taglib>  
 </web-app>  



Struts 2.x web.xml file


 <!DOCTYPE web-app PUBLIC  
  "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"  
  "http://java.sun.com/dtd/web-app_2_3.dtd" >  
    
 <web-app>  
      <display-name>Struts 2 Web Application</display-name>  
    
      <filter>  
           <filter-name>struts2</filter-name>  
           <filter-class>  
         org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter  
         </filter-class>  
      </filter>  
    
      <filter-mapping>  
           <filter-name>struts2</filter-name>  
           <url-pattern>/*</url-pattern>  
      </filter-mapping>  
    
 </web-app>  

web.xml after Integration
  <!DOCTYPE web-app PUBLIC   
  "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"   
  "http://java.sun.com/dtd/web-app_2_3.dtd" >   
     
  <web-app>   
    <display-name>Struts 2 Web Application</display-name>   
      <!-- mapping for struts 2.x -->    
    <filter>   
       <filter-name>struts2</filter-name>   
       <filter-class>   
      org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter   
      </filter-class>   
    </filter>   
     
    <filter-mapping>   
       <filter-name>struts2</filter-name>   
       <url-pattern>/*</url-pattern>   
    </filter-mapping>   
      <!-- mapping for struts 1.x -->  
            <servlet>  
           <servlet-name>action</servlet-name>  
           <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>  
           <init-param>  
                <param-name>config</param-name>  
                <param-value>/WEB-INF/struts-config.xml</param-value>  
           </init-param>  
           <init-param>  
                <param-name>debug</param-name>  
                <param-value>3</param-value>  
           </init-param>  
          <init-param>  
                <param-name>detail</param-name>  
                <param-value>3</param-value>  
           </init-param>  
           <load-on-startup>0</load-on-startup>  
           </servlet>  
           <servlet-mapping>  
                <servlet-name>action</servlet-name>  
                <url-pattern>*.do</url-pattern>  
           </servlet-mapping>  
             
 <servlet>  
     
  </web-app>   
do let me know your comment.

No comments:

Post a Comment