Struts 2 Framework kullanırken uygulama içinde kullandığımız bazı ayarlar sabit değerler ile ayarlanabilir.
Struts’ın konfigurasyon dosyasında tanımlanan constant etiketleri ile framework konfigurasyonları çok basit bir şekilde yapılabilir. Ayrıca Struts ile birlikte kullanılan eklentiler de yine bu sabit değerler sayesinde ayarlanabilir. İki ana rolleri vardır.
- Birincisi örneğin yüklenecek maximum dosya boyutu ile standart değer olan 2 MB dışında bir değer verilebilir. Veya geliştirme ortamında çalışan uygulama için daha çok log yazılması basit bir sabit değerle belirtilebilir. Ya da başka bir örnekle kendi oluşturduğumuz tema ismi, bulunduğu dizin ve tip bilgisini tanımlayabiliriz.
- İkincisi Bean implementasyonu tanımlanabilir.
Sabitler standartta aşağıdaki sırada uygulama içerisinde aranırlar. Bir sonraki dosyada aynı sabit tekrar tanımlanmışsa ezilmiş olur.
- struts-default.xml
- struts-plugin.xml
- struts.xml
- struts.properties
- web.xml
Bu dosyalardan ilk 2 tanesi framework içerisinde standart olarak gelir. Diğer dosyaları istersek güncelleyebiliriz.
struts.xml
[codesyntax lang=”xml” lines=”no”]
<struts> ... <constant name="struts.devMode" value="true" /> <constant name="struts.ui.theme" value="mytheme" /> <constant name="struts.ui.templateDir" value="template" /> <constant name="struts.ui.templateSuffix" value="ftl" /> ... </struts>
[/codesyntax]
struts.properties
[codesyntax lang="xml" lines="no"]
# Gelistirme modu acik struts.devMode=true # Kendi tema ismimiz struts.ui.theme=mytheme # Temamizin bulundugu dizi ismi struts.ui.templateDir=template # Tema tipi (ftl) struts.ui.templateSuffix=ftl
[/codesyntax]
web.xml
[codesyntax lang=”xml” lines=”no”]
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="ttp://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> ... <filter> <filter-name>struts</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> <init-param> <param-name>struts.devMode</param-name> <param-value>true</param-value> </init-param> </filter> ... </web-app>
[/codesyntax]