如何使用Struts2中的Bean将对象从动作类传递给JSP?

我必须从我的动作类将Bean类的对象发送回JSP。 我在我的动作类中实例化Bean类,并在我的Action类中设置一些值。

ElasticitiesVariable elasticitiesVariable = new ElasticitiesVariable(); elasticitiesVariable.setAuto_Auto_cost_peak("-0.047"); elasticitiesVariable.setAuto_Ride_cost_peak("0.000"); elasticitiesVariable.setAuto_Van_cost_peak("0.000"); elasticitiesVariable.setAuto_Transit_cost_peak("0.050"); elasticitiesVariable.setAuto_Bike_cost_peak("0.000"); 

在我的JSP中,我也声明了bean类。

    

在bean类中,我已经使用public getter和setter声明了变量private。 但JSP中的值为null。 调试后我发现动作类没有问题。 但是当命令进入bean类时,值变为null

第一次在JSP中实例化动作中的bean,第二次。 它与您在操作中填充的bean不同,并且不包含值。 如果要从第一个bean获取值,则应该为包含bean实例的变量创建mutators。 您还应该创建mutators来访问该bean的属性。 在JSP中,您可以访问第一个bean,因为操作实例位于valueStacktop 。 只是用

  

注意,如果没有#OGNL将不会搜索其他变量,它将直接进入valueStack 。 但是不要在bean标记内部进行,因为新的(第二个)实例被推送到valueStack并且搜索从上到下执行,因此它可以匹配bean的属性。 只需删除bean标记即可。