play的action链(一个action跳转到另一个action,类似于重定向)
2017-11-22 07:31
330 查看
在play中没有Servlet API forward 的等价物。每一个HTTP request只能调用一个action。如果我们需要调用另一个,必须通过重定向,让浏览器访问另一个URL来访问它。这样的话,浏览器的URL始终与被执行的action保持一致,实现 Back/Forward/Refresh 的管理就容易多了。
你可以发送到任何一个action的Redirect,只需要直接在Java中调用该action即可。该调用将会自动被Play拦截,并生成一个HTTP重定向。
举例:
With these routes:
浏览器向 /clients URL发送一个POST。
Router调用 Clients controller的 create action.
Action方法直接调用 show 方法
该Java调用被拦截,Router根据它产生一个调用Clients.show(id)所需要的新URL。
HTTP响应为 302 Location:/clients/3132.
浏览器接着发送 GET /clients/3132.
…
你可以发送到任何一个action的Redirect,只需要直接在Java中调用该action即可。该调用将会自动被Play拦截,并生成一个HTTP重定向。
举例:
public class Clients extends Controller { public static void show(Long id) { Client client = Client.findById(id); render(client); } public static void create(String name) { Client client = new Client(name); client.save(); show(client.id); //调用上面的show(Long id)方法 } }
With these routes:
GET /clients/{id} Clients.show POST /clients Clients.create
浏览器向 /clients URL发送一个POST。
Router调用 Clients controller的 create action.
Action方法直接调用 show 方法
该Java调用被拦截,Router根据它产生一个调用Clients.show(id)所需要的新URL。
HTTP响应为 302 Location:/clients/3132.
浏览器接着发送 GET /clients/3132.
…
相关文章推荐
- 一个action跳转到另一个action如何传参
- struts2 result类型为redirectAction时,跳转转到另一个包空间里的一个action的指定处理方法的xml配置
- struts2(action重定向跳转到另一个action)
- struts2 从一个action 跳转到另一个action的两种方法
- Android开发从一个activity设置跳转到另一个activity中的一个fragment中的一个viewpager中的某一个页面
- 从一个Action跳转到别一个Action
- struts1.2中从一个action跳转到另外一个action的方法
- Struts2中action跳转到另一个action方法
- Struts2中action重定向跳转到jsp页面两种配置方式
- struts2从一个aciton跳转到另一个action
- 如何控制一个action跳转到本页面的特定区域
- Android GridView 中如何实现item合并,类似于桌面的应用图标效果,长按拖动,加入到另外一个已经存在的文件夹中,或者是压在另一个图标上,行成新的
- resultType之三redirectAction重定向到另一个action
- struts2从一个action我想跳转到另一个action,并且带上值
- struts 2 页面中引入一个 action跳转
- 一个struts的action跳转大全
- struts2的action执行后跳转到另一个action
- Struts2中action重定向跳转到jsp页面两种配置方式带参数
- 由一个activity跳转到另一个activity
- Asp.Net弹出一个先对话框然后跳转到另一个页面 小结