我用的是Struts2。2.1版本,写一个UserAction,该Action有一个成员变量User user(User为自定义的一个JavaBean,包含email和password字段)和一个方法public String login(),页面表单为<form action="login.action"><input type="text" name="user.email"/><input type="password" name="user.password"/><input type="submit"/>;现在遇到一个很奇怪的问题,只要UserAction继承了ActionSupport,提交表单时前台就报java.lang.NoSuchMethodException: $Proxy4.login(),后台输出就报 org.apache.struts2.spring.StrutsSpringObjectFactoryINFO WARN [http-8080-1] (CommonsLogger.java:60) -Error setting expression 'user.email' with value '[Ljava.lang.String;@1430296'
com.opensymphony.xwork2.ognl.OgnlValueStackWARNognl.OgnlException: target is null for setProperty(null, "email", [Ljava.lang.String;@1430296),我把ActionSupport继承去掉,就运行正常。为什么会出现这中问题呢?急需高手解答!

解决方案 »

  1.   

    可能是你的ActionSupport类选错了,在导包的时候一定要看清楚了再导,很容易错的
      

  2.   

    包没有导入错误,也把xwork-core.jar包添加进去了
      

  3.   

    遇到过类似情况, 貌似actionSupport这个类有点问题 , 它好像会进行什么验证 默认会去找input页面 
    加一个input页面试下,建议加上log4j属性文件 有助于排错
      

  4.   

    我听说这是spring代理模式的原因,详细的还不明白,求高手解答,顶!!!