public void configConstant(Constants me) { loadPropertyFile("config.properties"); me.setDevMode(getPropertyToBoolean("devMode", false)); me.setViewType(ViewType.JSP); me.setError404View("/error/404.jsp"); me.setError500View("/error/500.jsp"); }
public void configRoute(Routes me) { me.add("/u", UserController.class, "/user"); }
@Before(NoUrlPara.class) public class UserController extends Controller {
//TO-DO
}
在请求 /u/method 这个URL的时候,method如果不存在,默认是访问该Controller下的index方法,但是这个时候我的想法是该URL不存在,应该返回404?
同时添加NoUrlPara拦截器之后,后台会报错,
com.jfinal.core.ActionException
at com.jfinal.core.Controller.renderError(Controller.java:1052)
哪里配置错了,还需要做什么改动?
@JFinal
直接在index方法上添加NoUrlPara拦截器即可:
publicclassUserControllerextendsController{@Before(NoUrlPara.class)publicvoidindex(){....}}直接在index方法上添加NoUrlPara拦截器即可:
publicclassUserControllerextendsController{@Before(NoUrlPara.class)publicvoidindex(){....}}感觉可以变动一下:利用Controller的index方法来做检测请求的Action是否支持;
http://host/u/add
http://host/u/list
而这个Controller是这样定义:
publicclassUserControllerextendsController{publicvoidindex(){Stringparam=getPara(0);if(param.equals("add")){forwardAction("/u/addUser");}else{//morehandlecase}}publicvoidaddUser(){}publicvoidlistUser(){}}感觉可以变动一下:利用Controller的index方法来做检测请求的Action是否支持;
http://host/u/add
http://host/u/list
而这个Controller是这样定义:
publicclassUserControllerextendsController{publicvoidindex(){Stringparam=getPara(0);if(param.equals("add")){forwardAction("/u/addUser");}else{//morehandlecase}}publicvoidaddUser(){}publicvoidlistUser(){}}版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。