SSH框架使用AOP代理+自定义注解遇到的相关问题总结

1、AOP注解失效问题

编写完成注解和AOP切面类时,在controller中加上注解,注解不生效。在配置文件xml中开启AOP注解:

<aop:aspectj-autoproxy proxy-target-class="true"/>

如果该配置以加在项目里,但是还是不生效。需要检查一下自己的项目是否是Spring.xm分层配置的。如果分层配置的,需要加在自己所需要的那个分层中。加在其他地方也不生效。
controller层添加注解,则需要在 applicationContext-mvc.xml 中加入配置。

2、AOP切面类取参joinPoint.getArgs()报错

java.lang.IllegalStateException: 如果当前请求不在异步模式下,则调用此方法是非法的(即isAsyncStarted()返回false)
	at org.apache.catalina.connector.Request.getAsyncContext(Request.java:1758)

获取参数时过滤掉:

if (args.length > 0){ 
            Object o = args[0];
            if ((!(o instanceof HttpServletRequest)
                    && !(o instanceof HttpServletResponse))){
                params = JSONObject.toJSONString(o);
            }
            // if(!"org.".equals(o.toString().substring(0,4))){
            // }
 }
posted @ 2024-02-26 16:09  sowler  阅读(29)  评论(0编辑  收藏  举报