Struts 2 - Il tag di testo
Il texttag è un tag generico utilizzato per visualizzare un messaggio di testo I18n. Segui uno dei tre passaggi:
Il messaggio deve trovarsi in un bundle di risorse con lo stesso nome dell'azione a cui è associato. In pratica questo significa che dovresti creare un file delle proprietà nello stesso pacchetto della tua classe Java con lo stesso nome della tua classe, ma con estensione .properties.
Se il messaggio denominato non viene trovato, il corpo del tag verrà utilizzato come messaggio predefinito.
Se non viene utilizzato alcun corpo, verrà utilizzato il nome del messaggio.
Controlliamo il seguente esempio per comprendere l'utilizzo di text tag -
Crea classi di azioni
package com.tutorialspoint.struts2;
public class HelloWorldAction {
private String name;
public String execute() throws Exception {
return "success";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Crea viste
Facciamo HelloWorld.jsp con il seguente contenuto -
<%@ taglib prefix = "s" uri = "/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Text Tag Example</title>
</head>
<body>
<s:i18n name = "HelloWorldAction">
<s:text name = "name.success"/><br>
<s:text name = "name.xyz">Message doesn't exists</s:text><br>
<s:text name = "name.msg.param">
<s:param >ZARA</s:param>
</s:text>
</s:i18n>
</body>
</html>
File di configurazione
Creiamo un file delle proprietà con lo stesso nome del nome del pacchetto della classe di azione. Quindi in questo caso creeremoHelloWorldAction.properties file e mantieni nel percorso della classe -
name.success = This is success message
name.msg.param = The param example - param : {0}
Il tuo struts.xml dovrebbe apparire come -
<?xml version = "1.0" Encoding = "UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name = "struts.devMode" value = "true" />
<constant name = "struts.custom.i18n.resources" value = "ApplicationResources"/>
<package name = "helloaction" extends = "struts-default">
<action name = "hello"
class = "com.tutorialspoint.struts2.HelloWorldAction"
method = "execute">
<result name = "success">/HelloWorld.jsp</result>
</action>
</package>
</struts>
Il tuo web.xml dovrebbe apparire come -
<?xml version = "1.0" Encoding = "UTF-8"?>
<web-app xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xmlns = "http://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">
<display-name>Struts 2</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
Fare clic con il tasto destro sul nome del progetto e fare clic Export > WAR Fileper creare un file War. Quindi distribuire questo WAR nella directory webapps di Tomcat. Infine, avvia il server Tomcat e prova ad accedere all'URLhttp://localhost:8080/HelloWorldStruts2/hello.action. Questo produrrà la seguente schermata: