Dites que j'ai un fichier struts.properties avec une valeur définie uploads.directory. Comment puis-je accéder à cette valeur à partir d'un Actioncontext par programmation?Comment obtenez-vous une valeur Struts2 à partir du fichier .properties par programme?
Répondre
Vous pouvez utiliser getText (« some.property.name ») qui vous renvoie la valeur de la propriété
http://struts.apache.org/maven/struts2-core/apidocs/com/opensymphony/xwork2/ActionSupport.html
Vous devez placer le fichier de fichier my.properties ou my_locale.propeties dans le package abrite votre classe d'action.
Vous devez placer les valeurs dans les fichiers de propriétés autres que struts.properties pour les exemples ApplicationResources.properties
ou my.properties
qui doit figurer dans le chemin de classe. fichier struts.properties est utilisé pour charger des supports propriétés spécifiques, par exemple struts.i18n.encoding=UTF-8
ou struts.devMode = false
etc.
La chose que vous devez faire struts.properties après avoir créé le fichier de propriétés pour vos messages personnalisés est que vous devez ajouter la propriété suivante dans struts.properties fichier
struts.custom.i18n.resources=ApplicationResources
Si vous avez plusieurs fichiers de propriété de messages personnalisés, vous devez les ajouter en séparant par des virgules par exemple:
struts.custom.i18n.resources=ApplicationResources,my
Ensuite, dans vos cours d'action, vous pouvez accéder aux valeurs de propriété à l'aide getText('propertyName')
vous pouvez obtenir la valeur à partir du fichier de ressources de message comme celui-ci:
public class MyAction extends ActionSupport {
public String getUserDetails() {
if("First Name".equals(getText("label.firstName"))) {
System.out.println("In if block");
}
}
}
vous pouvez également obtenir plus d'informations, comment obtenir des valeurs de .properties
fichiers dans les fichiers java class ou jsp. pour JSP:
<s:text name="label.firstName" />
et
<s:property value="getText('label.age')" />
pour plus d'informations vous pouvez passer par ce lien: get info here
Créer ActionSupport
objet et en utilisant la méthode getText()
de ActionSupport
classe.
ActionSupport actionSupport = new ActionSupport();
actionSupport.getText("foo.bar");
Créez un dossier de ressources sous src
. Dans le fichier struts.xml
, ajoutez une constante, par exemple, <constant name="struts.custom.i18n.resources" value="global"></constant>
Global est le nom du fichier de propriétés. Vous allez maintenant pouvoir utiliser les propriétés dans l'ensemble de l'application.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<!-- constant to define result path locations to project root directory -->
<!-- constant to define global resource bundle -->
<constant name="struts.custom.i18n.resources" value="global"></constant>
<package name="user" namespace="/" extends="struts-default">
<action name="home">
<result>/home.jsp</result>
</action>
<action name="welcome" class="com.waqar.struts2.actions.WelcomeAction">
<result name="success">/welcome.jsp</result>
</action>
</package>
</struts>
Le welcome.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title><s:property value="getText('action.welcome.title')"/></title>
</head>
<body>
<s:property value="getText('action.welcome.username')"/>: <s:property value="username"/><br>
</body>
</html>
mondiale.propriétés
action.welcome.username=waqar
Dans l'action classe
System.out.println(getText("action.welcome.username"));
- 1. Comment imprimer une valeur dans la zone de texte à partir du fichier texte?
- 2. retourner une valeur à un programme C# par script python
- 3. Java fichier .properties équivalent pour Ruby?
- 4. Télécharger par programme un fichier à partir du répertoire de connaissances de plumtree
- 5. Comment extraire les macros par programme à partir du document OpenOffice.org Writer à l'aide de .NET?
- 6. Appelez une méthode à partir d'un fichier inclus PAS à partir du fichier inclu. Php
- 7. Accès par programme à l'historique du navigateur
- 8. struts2 fileupload taille de fichier maximale
- 9. Accès par programme à un fichier Microsoft Project (MPP) à partir de C#
- 10. ALTER TABLE avec une valeur DEFAULT constante déterminée par programme
- 11. Comment ouvrir un fichier InfoPath 2007 par programme à partir d'un service?
- 12. pourquoi ne reconnaîtra-t-il pas le @properties du fichier d'en-tête du fichier principal?
- 13. Accès par programme à un contrôle à partir d'un DataTemplate
- 14. Comment envoyer du courrier à partir d'un programme Ruby?
- 15. comment obtenir la valeur de chaîne à partir du fil
- 16. Comment exécuter un script bash à partir du programme C++
- 17. Comment retourner une valeur à partir d'une fenêtre pop-up
- 18. Comment obtenir de la valeur à partir du haricot Struts?
- 19. Comment appeler Valeur à partir du formulaire Web?
- 20. Comment publier une application ClickOnce à partir d'un programme d'installation
- 21. wxPython: Dessiner une image vectorielle à partir du fichier
- 22. Lecture à partir du fichier en eclipse
- 23. Configuration par programme du client WCF [Silverlight]
- 24. Comment faire pour obtenir une trace de pile à partir du fichier de vidage sous Windows
- 25. Comment obtenir un fichier modifié à partir du fichier de base et du fichier diff?
- 26. Émulation du joystick par programme
- 27. Récupère la valeur du noeud à partir du code XML
- 28. Rails import à partir du fichier Excel
- 29. Comment puis-je accéder par programme à la table de routage ASP.NET à partir d'un filtre?
- 30. Comment déterminer par programme la racine du document en PHP?
Le lien ci-dessus ne fonctionne pas maintenant. –
lien @MandarPandit a été mis à jour http://struts.apache.org/maven/struts2-core/apidocs/com/opensymphony/xwork2/ActionSupport.html – timbru31
Merci pour la mise à jour .. :) –