Techies Experience

Showing posts with label struts. Show all posts
Showing posts with label struts. Show all posts

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.

Tuesday, March 4, 2014

Free Maker template error in Struts 2

While doing struts 2 project deployments we are facing one major issue related to free marker template.

Free Marker Error in Struts 2

Quick solution to fix this issue is either upgrade the jar files struts2-core-2.0.6 and xwork-2.0.1 to higher version or else we need to add below mentioned tag in respective jsp page.
add below mentioned tag in header section of that page.

 <sx:head debug="false" parsecontent="true">