类似 http://localhost:8081/bs/formtest1/login.jsp?loginname=dfgrd&password=gdg&event=Login其中查询串在javabean中setXXX方法的顺序令人郁闷,tomcat中是无序的,可能与Map的实现有关,而glassfish是按参数名出现顺序依次调用对应的setXXX方法的。如何能确保setXXX方法的顺序。
谢谢

解决方案 »

  1.   

    你是说比如说来一个请求之后,控制这个bean调用setLoginname(),setPassword()方法的顺序吗?
    很抱歉我不想来回答怎样进行控制,因为我感觉你这种设计方法不好,理想的情况应该是这样,不管setLoginname()先执行,还是setPassword()先执行,都不应该改变程序执行的逻辑,就是说不应该让这几个方法执行的顺序来影响你程序执行的流程,tomcat和glassfish行为的不一致也正好说明你想去控制这种顺序的做法不太可靠,也不受良好支持。
    一家之言,望赐教。
      

  2.   

    恩   说的很对。确实,如果本身方法调用依赖于顺序确实是不好的设计。这一点设计当初我也很清楚。我再想想其他办法解决。
    其实说实话,倒不是顺序问题,setLoginname(),setPassword()都无所谓,主要是setEvent()希望在他们之后被调用。谢谢。楼上^^
      

  3.   

    最终在filter的doAfterFiler之类的方法手工调用setEvent。