J2EE进阶(十一)SSH框架整合常见问题汇总(二)

org.hibernate.PropertyAccessException: IllegalArgumentException occurred while calling setter of cn.edu.ujn.model.User.orderses

     解决

初步怀疑是数据表映射文件出的问题。User.hbm.xml文件存在以下内容:

      <set name="orderses" inverse="true">
            <key>
                <column name="userid" />
            </key>
            <one-to-many class="cn.edu.ujn.model.Orders" />
    </set>

通过参考课本,得知Set集合属性需要使用<Set.../>元素进行映射,使用<key.../>元素映射外键列,用于保证持久化类和集合属性的关联。Hibernate映射Set集合属性时应指定映射表名,即以上代码应更改为

        <set name="orderses" table="orders" inverse="true">
            <key>
            	<!-- 指定外键字段的列名 -->
                <column name="userid" />
            </key>
            <one-to-many class="cn.edu.ujn.model.Orders" />
   </set>

从以上定义可知,变量orserses应为Set集合数据类型,应定义为

jsp页面中存在语句:<s:property value="#request.msg"/>,其中request为action中所定义的变量。

Map request = (Map) ActionContext.getContext().get("request");

request.put("request", "旧密码错误,请重新输入");

但是当自己的旧密码输错时,错误提示总是不会显示。

      解决

再次对照视频发现原来是自己将代码敲错了,o(︶︿︶)o 唉,不知为不过啊!其实之前自己就看着代码不对劲。正确代码如下:

Map request = (Map) ActionContext.getContext().get("request");
request.put("msg", "旧密码错误,请重新输入");

在设置分页操作时,总是会出现不能正确显示现象。如下图所示:

J2EE进阶(十一)SSH框架整合常见问题汇总(二)

Jsp页面代码如下:

  	<s:iterator value="#request.catalogs" id="catalog">
  	<a href="browseFlowerPagingAction.action?catalogid=<s:property value="#catalog.catalogid"/>¤tPage=1" target="_self"><s:property value="#catalog.catalogname"/> </a>
  	<br><br>
        </s:iterator>

      解决

再次对照视频,也没有发现有什么纰漏的地方。而且地址栏显示为

http://localhost:8088/flowerGift/browseFlowerPagingAction.action?catalogid=3¤tpage=1,但是console控制台显示page.currentPage:2。这就令自己很是费解了。明明设置的是从第一页开始显示的,为何就不见效果呢?

通过仔细观察代码发现,原来变量currentPage错写为了currentpage一字之差啊。这里的currentPage本是Page类中的成员变量。当初自己太粗心了,导致后期检查错误特别吃力。O(︶︿︶)o 唉,自己挖的坑还得坑自己啊,到头来还得自己填坑。

  	<s:iterator value="#request.catalogs" id="catalog">
  	<a href="browseFlowerPagingAction.action?catalogid=<s:property value="#catalog.catalogid"/>currentPage=1" target="_self"><s:property value="#catalog.catalogname"/> </a>
  	<br><br>
	</s:iterator>

在挂失解挂用户时,出现了如下错误提示:

J2EE进阶(十一)SSH框架整合常见问题汇总(二)

J2EE进阶(十一)SSH框架整合常见问题汇总(二)

     解决

manageUser.jsp部分代码如下:

J2EE进阶(十一)SSH框架整合常见问题汇总(二)

哪哪都是戏,不知怎么的,程序突然又可以了。及时重启服务、清缓存是常做的工作。

美文美图

J2EE进阶(十一)SSH框架整合常见问题汇总(二)
J2EE进阶(十一)SSH框架整合常见问题汇总(二)
上一篇:WPF权限控制——【1】界面布局


下一篇:yii2 解决POST 400错误