2012-05-30 22 views
0

我只想知道是否有方法从Action类使用的实用程序类访问属性。要从Action类访问属性,我们扩展ActionSupport并使用getText("property.key.name")方法。 所以,我的问题是 - 每个其他类都应该扩展ActionSupport来访问属性,即使它不是一个Action类?或者还有其他方法吗?从动作使用的实用程序类访问属性

感谢

回答

0

ActionSuport是种辅助类的由S2开发者开发,以补充发展,因为它提供了许多功能,开箱即用。

getText()是S2提供读取属性文件的一种方法。此方法特定于S2,因为它知道如何横切层次结构以读取属性文件以及以何种顺序。

有很多方法在应用程序中读取属性文件和少数是

如果你正在使用Spring,它有一个非常便利的机制来读取属性文件 - how-to-read-properties-file-in-spring

阿帕奇常见还提供了一种方法来读取文件

总之读取属性文件的方法有很多,S2 getText()是由S2开发的针对你的行动来读取属性文件的一种方式。

0
//I wanna make you understand how struts doing it. 

    public class ActionSupport implements Action, Validateable, ValidationAware, TextProvider, LocaleProvider, Serializable { 

    //Action support implementation. 
    //Here TextProvider takes care about resource bundle thing. 

    } 
1

我不会扩展ActionSupport,除非您实际上定义了一个动作。

该S2/XW2 ActionSupport类使用com.opensymphony.xwork2.DefaultTextProvider;你可能可以在自己的课堂上使用它。我对此有点谨慎,因为我不相信非行动类应该访问网络应用程序的资源,但我没有多少考虑,所以它可能是有效的。我也没有试图去做。

+0

谢谢戴夫。这是我正在寻找的确切答案。 – user1417827

+0

那么,非动作类仍然与Action类捆绑在一起。例如,在eclipse中它们本身并不是单独的项目。 – user1417827