← Back to team overview

dhis2-devs team mailing list archive

Migration to Struts2 complete

 

Hi,

I have merged in Murod's work on the Struts2 upgrade. Thanks to Murod
for good work on this!


Additionally the dhis-support-webwork (struts) has been merged with
dhis-web-commons as the code fit nicely here. (You can remvoe
dhis-support-webwork from your IDE.)

There are lots of good things about this:

- The login time has gone from 21 sec to 1 sec.

- We were allowed to remove the custom webwork configuration
initialization code. Struts handles loading of config files from jars
itself.

- Struts2 has a lot of nice features, like support for validation,
i18n, and direct submission of forms to domain objects which can
improve our code potentially.



For those interested in learning more I have uploaded Struts2 In
Action here: http://folk.uio.no/larshelg/readings/Stuts2_In_Action.pdf


I will have a go at the local modules too soon. Migration guide for
web modules below.

The Spring security upgrade needs some more work before being merged in.


Lars



- Rename xwork.xml to struts.xml, change root xml element tag from
<xwork> to <struts> and change the DTD to:

<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN"
  "http://www.opensymphony.com/xwork/xwork-1.0.dtd";>

- In web.xml, replace the WebWork filter definition with

<filter>
    <filter-name>Struts</filter-name>
    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
  </filter>

and change the name of the filter mapping from WebWork to Struts.

- In action classes, change all package names from
"com.opensymphony.xwork" to "com.opensymphony.xwork2", and
"com.opensymphony.webwork" to "org.apache.struts2".



Follow ups