✅P283_商城业务-订单服务-提交订单的问题

gong_yz大约 2 分钟谷粒商城

前端渲染

**cfmall-order/src/main/resources/templates/pay.html**

订单号回显,应付金额回显


提交订单消息回显

cfmall-order/src/main/resources/templates/confirm.html

<!--主体部分-->
<p class="p1">填写并核对订单信息 <span style="color: red" th:if="${session.msg!=null}" th:text="${session.msg}"></span> </p>

问题解决

Mybatis错误

在调用接口/ware/waresku/hasStock查询是否有库存时,报错如下:

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):

意思就是mapper接口和mapper.xml文件没有映射起来

根据 org.apache.ibatis.binding.BindingException:Invalid bound statement (not found)绑定异常出现原因和解决方法open in new window 这篇文章排查后发现,

WareSkuDao.xml所处目录是mapper.ware,而打包后的目录结构为mapper,此时就发生了如文章中所述:mapper接口和mapper.xml文件没有映射起来

解决方法:将mapper.ware改成mapper即可

RedirectAttributes.addFlashAttribute 赋值问题

String msg = "下单失败";

attributes.addFlashAttribute("msg ", msg );

如果像上面这样直接赋值,那么session在redis中是无法存储的,redis中的session是有addFlashAttribute添加属性的key的。


测试

点击去结算,跳转到支付界面,成功显示“订单号”,“应付金额”等信息


说明

在后续的Debug测试中,发现了代码中存在的一些细节错误,经过不断调试,均已经改正,代码请参考远程仓库。