
Kita lanjutkan belajar struts2 dengan judul Tutorial Message Resource Apache Struts2. Kita akan sedikit mengulas bagaimana aplikasi struts2 kita dapat menampilkan data dalam multi bahasa.
Pada kesempatan ini kita akan membuat dalam 2 bahasa yaitu bahasa dan english.
Sekarang kita mulai Tutorial Message Resource Apache Struts2:
- Buka folder workspace anda, jangan lupa pelajari dulu Tutorial Coding Action Apache Struts2. Karena kita akan melanjutkan source codenya.
- Buat folder “message-resource-struts2” di workspace anda
- Copy file “pom.xml” dan folder “src” di folder “coding-action-struts2” tutorial sebelumnya ke folder “message-resource-struts2”
- Buka file “pom.xml”, rubah artifact-id, name, dan description
12345<artifactId>message-resource-struts2</artifactId><version>0.0.1-SNAPSHOT</version><packaging>war</packaging><name>Belajar Message Resource Struts2</name><description>Belajar Message Resource Struts2</description> - Buka IDE eclipse
- Pilih import >> existing maven project >> browse ke folder “message-resource-struts2” >> finish
- project baru “message-resource-struts2” sudah berhasil di load
Mari kita mulai melakukan perubahan selanjutnya
- Tambahkan class sebagai objek model dengan nama “Person” di package “com.wijaksana.belajar.struts2.model”, dengan attribut/properti:
1234private String firstName;private String lastName;private String email;private int age; - Aktfikan getter setter untuk atribut/properti diatas
- Tambahkan/overide method toString, seperti dibawah ini:
12345public String toString(){return "First Name: " + getFirstName() + " Last Name: " + getLastName() +" Email: " + getEmail() + " Age: " + getAge() ;} - Tambahkan controller/action “RegisterAction” di package “com.wijaksana.belajar.struts2.action” dan tambah extend “ActionSupport”, dengan atribut/properti:
1private Person personBean; - Jangan lupa aktifkan getter setter untuk atribut/properti tersebut
- Tambahkan/overide method execute, seperti script dibawah ini:
123public String execute() throws Exception {return SUCCESS;} - Tambahkan/overide method validate berfungsi untuk memvalidasi inputan dari sisi backend, seperti script dibawah ini:
12345678910111213public void validate(){if ( personBean.getFirstName().length() == 0 ){addFieldError( "personBean.firstName", "First name is required." );}if ( personBean.getEmail().length() == 0 ){addFieldError( "personBean.email", "Email is required." );}if ( personBean.getAge() < 18 ){addFieldError( "personBean.age", "Age is required and must be 18 or older" );}} - Menambahkan file “global.properties” (src/main/resources) untuk menampung message resource dalam english (default), isi dengan data dibawah ini:
1contact=For assistance contact <a href='mailto:contact@email.com'>contact@email.com</a> - Menambahkan file “global_in_ID.properties” (src/main/resources) untuk menampung message resource dalam bahasa, isi dengan data dibawah ini:
1contact=Untuk bantuan silahkan hubungi <a href='mailto:contact@email.com'>contact@email.com</a> - Buka file struts.xml (src/main/resources), replace script didalam tag <struts> dengan script dibawah ini
1234567891011121314151617181920212223242526272829<struts><constant name="struts.devMode" value="true" /><constant name="struts.custom.i18n.resources" value="global" /><package name="basic-struts2" namespace="/" extends="struts-default"><default-action-ref name="index"/><action name="index"><result>/index.jsp</result></action><action name="hello"class="com.wijaksana.belajar.struts2.action.HelloWorldAction" method="execute"><result name="success">/HelloWorld.jsp</result></action><action name="registerInput"class="com.wijaksana.belajar.struts2.action.RegisterAction" method="input"><result name="input">/register.jsp</result></action><action name="register"class="com.wijaksana.belajar.struts2.action.RegisterAction" method="execute"><result name="success">/thankyou.jsp</result><result name="input">/register.jsp</result></action></package></struts>
Pages: 1 2