Struts 2’de Sabit Tanımlama (Constant Configurations)

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.

  1. 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.
  2. İ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.

  1. struts-default.xml
  2. struts-plugin.xml
  3. struts.xml
  4. struts.properties
  5. 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]

Yorum bırakın