struts2 标签问题
我用了struts2标签后,页面的文本框都移动位置了,比如我用一个struts2的文本框,它就自动换行了。。怎么解决啊!...
我用了struts2标签后,页面的文本框都移动位置了,比如我用一个struts2的文本框,它就自动换行了。。怎么解决啊!
展开
2个回答
展开全部
我说一下我的理解
request里的东西,都同时也放在了valueStack的顶层。
以前是request、response、context等这些是基本默认对象作为根值对象,在栈的顶层,你可以直接调用,比如request.什么什么。
现在Sturts2,顶层换了。比如你的request里先前存了一个叫name的变量,那么OGNL中,你这样就可以:
<s:什么什么... % ... /> 这样就取到值了。
如果是普通HTML标签,这样:
<input 什么什么... $ ... /> 这样取值。
我觉得它俩反过来就不好用,也不知道是不是我配置的问题。
那么假如你需要用request或response了,实际上调用:
ServletActionContext.getRequest();或
ServletActionContext.getResponse();
现在OGNL用井号#代替了上面,即#request就可以取到了。
又比如你自己<s:bean什么什么>一个对象addr出来,那么这个对象跟默认的那几个对象,即request、response等等是在一个层次上的,对于以前的jsp,是可以直接调用到的,但Struts2不行了。所以:
#addr
与
%或$
是两个东西,后者是request里的,当然人为也可能让它们都指同一个东西。
request里的东西,都同时也放在了valueStack的顶层。
以前是request、response、context等这些是基本默认对象作为根值对象,在栈的顶层,你可以直接调用,比如request.什么什么。
现在Sturts2,顶层换了。比如你的request里先前存了一个叫name的变量,那么OGNL中,你这样就可以:
<s:什么什么... % ... /> 这样就取到值了。
如果是普通HTML标签,这样:
<input 什么什么... $ ... /> 这样取值。
我觉得它俩反过来就不好用,也不知道是不是我配置的问题。
那么假如你需要用request或response了,实际上调用:
ServletActionContext.getRequest();或
ServletActionContext.getResponse();
现在OGNL用井号#代替了上面,即#request就可以取到了。
又比如你自己<s:bean什么什么>一个对象addr出来,那么这个对象跟默认的那几个对象,即request、response等等是在一个层次上的,对于以前的jsp,是可以直接调用到的,但Struts2不行了。所以:
#addr
与
%或$
是两个东西,后者是request里的,当然人为也可能让它们都指同一个东西。
Storm代理
2023-08-29 广告
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I...
点击进入详情页
本回答由Storm代理提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询