2009-04-02 3 views

ответ

5

Вы можете использовать GetText («some.property.name»), который вернет вам значение свойства

http://struts.apache.org/maven/struts2-core/apidocs/com/opensymphony/xwork2/ActionSupport.html

+0

выше ссылка не работает. –

+0

Ссылка @MandarPandit была обновлена ​​до http://struts.apache.org/maven/struts2-core/apidocs/com/opensymphony/xwork2/ActionSupport.html – timbru31

+0

Спасибо за обновление .. :) –

0

Вам нужно поместить файл my.properties файл или my_locale.propeties в пакете, размещает ваш класс действий.

0

Вам нужно поместить значения в файлы свойств, отличные от struts.properties, для примеров ApplicationResources.properties или my.properties, которые должны быть в пути к классам. struts.properties файл используются для загрузки Struts специфических свойств, например struts.i18n.encoding=UTF-8 или struts.devMode = false т.д.

Дела в том, что нужно сделать в struts.properties после создания файла свойств для настроенных сообщений Вы должны добавить следующее свойство в struts.properties файл

struts.custom.i18n.resources=ApplicationResources 

Если у вас есть более чем один пользовательские файлы свойств сообщения, то вам необходимо добавить их, разделяя с запятой, например:

struts.custom.i18n.resources=ApplicationResources,my 

Тогда в классах действий вы можете получить доступ к значениям свойств с помощью getText('propertyName')

0

вы можете получить значение из файла сообщения ресурсов, как это:

public class MyAction extends ActionSupport { 

    public String getUserDetails() { 
     if("First Name".equals(getText("label.firstName"))) { 
      System.out.println("In if block"); 
     } 
    } 
} 

вы также можете получить более подробную информацию, как получить значения из .properties файлов в java-классе или jsp-файлах. для JSP:

<s:text name="label.firstName" /> 

и

<s:property value="getText('label.age')" /> 

для получения дополнительной информации вы можете перейти по этой ссылке: get info here

2

Создание ActionSupport объекта и с помощью getText() метода ActionSupport класса.

ActionSupport actionSupport = new ActionSupport(); 
actionSupport.getText("foo.bar"); 
0

Создать папку с ресурсами под номером src. В файле struts.xml добавьте константу, например, <constant name="struts.custom.i18n.resources" value="global"></constant> Здесь global - это имя файла свойств. Теперь вы сможете использовать свойства во всем приложении.

<?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> 

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> 

глобальным.свойства

action.welcome.username=waqar 

В классе действий

System.out.println(getText("action.welcome.username"));