关于Struts2参数传递问题

问题描述

想知道如:客户端:<form><input type="text" name="a.b.c.d" /></form>这种情况下Action如果接收,我发现a.b Struts2可以自动接收赋值.但超过两层以后好像会有问题.在此虚心请教,望高%手#赐$教!多谢. 问题补充:enet_java 写道

解决方案

引用enet_java 写道struts2 中存在两种获取参数值的方式,一种就是属性 property模式,一种就是model模式,属性模式基本上就是类名.属性名。所以两层就够了,我认为你这种情况可以考虑使用model模式试试! 定义的action实现 ModelDrivenModel 层.我是写在BaseAction的. 如果每个action都去重新实现一次ModelDriven 不利于封装... 请问类名.属性.属性 这种情况 Struts2没有办法接收吗? 写在baseaction中,但是继承的子类,要重写getModel获取相应的对象才可以呀?说实话类名.属性.属性 没有试过,类名.属性这种肯定是没有问题的。
解决方案二:
struts2 中存在两种获取参数值的方式,一种就是属性 property模式,一种就是model模式,属性模式基本上就是类名.属性名。所以两层就够了,我认为你这种情况可以考虑使用model模式试试!定义的action实现 ModelDriven

时间: 2024-08-03 02:43:41

关于Struts2参数传递问题的相关文章

struts2参数传递问题。在页面链接中使用?page=1可以传递成功,但是在配置文件中不行

问题描述 struts2参数传递问题.在页面链接中使用?page=1可以传递成功,但是在配置文件中不行 在页面链接中传递参数可以成功调用action的setPage方法:在struts的配置文件中使用redirectAction:employee_list.action?page=1page参数传递不成功,测试是没有调用action中的setPage方法.但是可以重定向到指定的action,就是参数传递不成功,为什么? 解决方案 页面链接中的代码:可以成功 struts配置文件中的代码/WEB-

struts2参数传递问题

问题描述 页面的js代码传递参数,struts2 action里面的只获取到fCallerNum的值,另外两个为null,哪位高手看下,最可能是哪里出了问题?js代码var urls = getActionMappingURL("/getAgentServ");var pars = "action=getAgentServ&ajax=shtml" + "&tagentTrack.agentId=" + encodeURICompo

Struts2学习笔记(5)-参数传递方法_java

参数传递即将参数传输到程序后台中,后台可能做一些处理,然后再将内容存入数据库之类嗒! 参数传递的方法较多,一一说明如下. 1.Action中直接参数法 有如下的index.jsp文件 复制代码 代码如下: <?xml version="1.0" encoding="GB18030" ?>  <%@ page language="java" contentType="text/html; charset=GB18030&

Struts2中的参数传递

我们知道,Struts2完成参数传递处理工作的基础是OGNL和ValueStack.而在这个过程中,我也把Struts2所要做的工作大致归纳为两个方面: 1. 对OGNL操作进行封装,完成OGNL表达式所表示的值到Java对象的值传递机制 2. 在参数传递的过程中,做恰当的类型转化,保证页面上的字符串能够转化成各式各样的Java对象 接下来,通过四个不同的角度,来具体讲述Struts2在这两个方面的工作. 目 录 [ - ] 最简单的参数传递 Array.List.Map等容器类型的参数传递 文

关于struts2中action参数传递的问题

问题描述 我的action返回一个值后会转发到jsp页面,在jsp页面中代码如下:<s:propertyvalue="#parameters.id[0]"/>请问我在action中要怎么用代码设置,能在jsp中接受到,原来在servlet中代码如下:RequestDispatcherrd=request.getRequestDispatcher("/student/createInteract.jsp?id="+id);rd.forward(reques

struts2中int型参数传递

问题描述 struts2中int型参数id如何从页面表单传递到后台action中?后台action中如何接收int类型的参数?页面用<s:propertyid="id"value="#session.operator.operId"/>传递id的值,其中operId是Long类型的.action中用什么可以接收到id的值?其实,此处id应该用隐藏表单域传递的,但是我用了隐藏表单域后,就抛出异常ognl.MethodFailedException:Meth

struts2的action之间的参数传递和结果类型

action的默认结果类型是dispatcher,而action之间发送请求是不能直接用该结果类型的.一般来说,可选的结果有redirect.redirect-action.chain.前两种都是属于页面跳转,也就是说,发送请求以后,地址栏的地址会刷新为被请求的action的地址,而chain则不会更新地址. redirect-action:"这个Result使用ActionMapperFactory提供的ActionMapper来重定位浏览器的URL来调用指定的action和(可选的)name

struts1与struts2的对比学习

           struts2的出现必定有它的优势,而且他的市场现在已经远远的超过了struts1,那么在解释它的原理之前,我们首先来看一下struts2究竟有哪些优势呢?我们为什么要用struts2?          1.用struts2的目的~~           把请求和界面分开,struts框架具有组件的模块化,灵活性和重用性的优点,同时简化了基于MVC的web应用程序的开发.           2.那么struts2有哪些优点呢?             a.Struts框

Struts2框架基础篇

首先,要了解Struts2框架中参数传递的大体流程: 服务器端的Web容器收到用户的请求(URL)--Struts2的核心控制器FilterDispatcher接受用户发起的请求,然后判断这个请求是交给action还是交给web组件来处理:如果请求的action或web组件不存在,就会报错404.在整个处理过程中,需要一个辅助对象: ActionMapper ,它会确定调用哪个Action--相应的action会根据struts.xml的配置信息(首先执行拦截此action的所有拦截器,然后再执