struts2关于ActionContext和值栈的问题

问题描述

在struts2中,根据标签定义,使用s:bean使用var则存放到ActionContext中,访问ActionContext中的内容需要加#访问,但如下结果为啥能访问到呢?<s:beanname="vo.User"var="user"><s:paramname="name"value="'zhagnsan'"/><s:paramname="age"value="20"/></s:bean><!--这里user访问正常要使用#user访问,为啥使用user也可以呢--><s:setvalue="user"var="user1"></s:set><s:setvalue="#user"var="user1"></s:set><!--使用bean标签也能这么访问--><s:beanname="vo.Person"var="person"><s:paramname="us"value="user"/></s:bean>vo.User类packagevo;publicclassUser{privateStringname;privateintage;publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}publicintgetAge(){returnage;}publicvoidsetAge(intage){this.age=age;}publicStringtoString(){return"name="+name+",age="+age;}}vo.Person类packagevo;publicclassPerson{privateUserus;publicUsergetUs(){returnus;}publicvoidsetUs(Userus){this.us=us;}publicStringtoString(){return"us="+us;}}​

解决方案

解决方案二:
直接用${参数}不行么
解决方案三:
你这是el表达式,我问题中是使用struts2标签访问ActionContext数据

时间: 2024-09-10 05:19:49

struts2关于ActionContext和值栈的问题的相关文章

6、如何自学Struts2之Struts2值栈和OGNL语言[视频]

6.如何自学Struts2之Struts2值栈和OGNL语言[视频]   之前写了一篇"打算做一个视频教程探讨如何自学计算机相关的技术",优酷上传不了,只好传到百度云上:   http://pan.baidu.com/s/1kTDsa95

Struts2自定义标签2自定义一个按班级id查询出该班级下的学生,存放进值栈,并遍历出来。

Struts2自定义标签的流程概念: (1)需要两个类:标签类(继承相应的tag类),基本类(继承Component).标签类专门负责从客户端取得用户输入的一些属性,这个普通的jsp自定义标签一样,取出来以后,需要把取出的属性值赋给基本类.从而可以看到基本类里面的属性也跟tag里面差不多. (2)tag类里面,需要定义你客户端传来的属性.私有化.并相应的set get.  必须的两个方法是public Component getBean(ValueStack stack,HttpServletR

java-struts2拦截器怎么获取action值栈里属性的值

问题描述 struts2拦截器怎么获取action值栈里属性的值 利用反射可以说渠道private的属性 但是field.get获取到的值都是null 怎么才能获取到值 解决方案 使用ognl表达式就可以了. 解决方案二: 直接在网页上面添加struts标签.用OGNL表达式.直接获取.

在Action中用了get/set,但是没有放入值栈中去,放到session中也没反应

问题描述 CodeAction.javapackageAction;importjava.awt.Color;importjava.awt.Font;importjava.awt.Graphics;importjava.awt.image.BufferedImage;importjava.io.ByteArrayInputStream;importjava.io.ByteArrayOutputStream;importjava.util.Random;importjavax.imageio.Im

Struts中自定义标签中获取值栈valuestack

    首先,要纠正下在<自定义-扩展struts2的标签>一文中笔者的分析.在该文中笔者说,     最近在做j2ee的项目,需要封装很多标签,发现直接从BodyTagSupport继承的话,无法获取valuestack,也无法借用struts的国际化解决方案.所以需要扩展struts的标签.    最近研究发同,其实即使从BodyTagSupport类继承来实现自定义的标签类,也可以取到valuestack. ,如下所示: ValueStack stack = TagUtils.getSt

三大框架关于取出值栈里面的属性

问题描述 三大框架关于取出值栈里面的属性 用了一个action,已经把那个对象变成了action的私有属性,按理说应该存在值栈里面了啊,可以取出值栈里面的对象,但是取不出对象中具体的属性 可能情况比较复杂,如果有大神原理远程看我代码也可以 QQ:837642486

struts2中页面取值的原理以及valueStack的应用

  一个简单的用struts2标签代码获取action中属性的例子   <table border="1" width="360">    <caption>     作者李刚的图书    </caption>    <!-- 迭代输出ValueStack中的books对象,其中status是迭代的序号 -->    <s:iterator value="books" status="

javascript如何取到struts2里的属性值?

问题描述 这里是指的不用json,struts2处理action完毕后,会以jsp视图的方式返回页面,在这些页面里,可以直接用EL表达式访问action里具备get.set的变量,如何用javascript来访问它们? 解决方案 在jsp中定义变量接收,在js中直接用就好了,如:<script type="text/javascript"> var TXT = "<s:text name='message.txt'/>"; var NAME=

s2sh中struts2的页面的值无法传的action中,相当头痛……

问题描述 代码我给大家贴过来,希望大家多费心帮忙看看,谢谢了--===========================================[color=#FF0000]Things.java[/color]___________________________________________package com.lg.bean;import java.util.Date;public class Things { private Integer id; private String