将jsp页面改为html页面以及错误的调试

1、将guestAlipayConfirm.jsp页面改为guestAlipayConfirm.html页面,为了方便前台修改html

2、本页面的主要功能是实现匿名购买功能,填写订单信息可点击登录支付宝付款按钮进行付款java

3、将jsp页面中的标签用html标签的形式表示session

  1. 在html页面的form表单中须要添加一项th:value="${goodsForm}"表示引用的是goodsForm中的数据app

   2.完成页面修改以后进行测试,出现"粮食"错误进行调试,能够用debug进行调试jsp

   3."粮食"错误须要在AlipayController和CartController页面添加实例化方法
post

(1)goodsForm.type="粮食"的错误信息。测试

解决办法:在AlipayController.java和CartController.java中须要对粮食进行实例化,附初值spa

(2)cartList==0的错误信息。debug

解决办法:匿名购买时没有购物车,可是写成HTML时要求比较严格,因此必须添加购物车,因此在AlipayController.java中对购物车进行实例化。调试

.guestAlipay.jsp中:

<ul class="user_menu">
<jsp:include page="/WEB-INF/jsp/shop/userBar.jsp"></jsp:include>
</ul>
<h1>
您如今是匿名购买该商品,请认真填写如下每项内容以保证商品可以顺利到达您的手中。<br/>
        ${message}<form:errors path="*"></form:errors>(异常处理)
</h1>改写成:
<span th:errors="${alipayForm.*}"></span>
             <span th:text="${message}"></span>

guestAlipay.jsp中

<form:form modelAttribute="alipayForm" action="guestAlipaySubmit" method="post">
        <form:hidden path="outTradeNo" value="${alipayForm.outTradeNo}"/>
        <form:hidden path="subject" value="${alipayForm.subject}"/>
        <form:hidden path="body" value="${alipayForm.body}"/>
        <form:hidden path="price" value="${alipayForm.price}"/>
        <form:hidden path="showUrl" value="${alipayForm.showUrl}"/>
        <form:hidden path="commodityId" value="${alipayForm.commodityId}"/>
        <form:hidden path="guestId" value="${alipayForm.guestId}"/>
        <form:hidden path="count" value="${alipayForm.count}"/>
</form:form>

改写为guestAlipay.html:

<form action="guestAlipaySubmit" th:object="${alipayForm}"  method="post">
    <input name="outTradeNo" type="hidden"  th:value="${alipayForm.outTradeNo}" />
    <input name="subject" type="hidden"  th:value="${alipayForm.subject}" />
    <input name="body" type="hidden" th:value="${alipayForm.body}" />
    <input name="price" type="hidden"  th:value="${alipayForm.price}" />
    <input name="showUrl" type="hidden"  th:value="${alipayForm.showUrl}" />
    <input name="commodityId" type="hidden" th:value="${alipayForm.commodityId}" />
        <input name="guestId" type="hidden"  th:value="${alipayForm.guestId}" />
    <input name="count"  type="hidden" th:value="${alipayForm.count}" />
</form>

CartController.java中添加实例化方法:

@RequestMapping(value = "addCart", method = RequestMethod.POST)
    public String executeAddCart(Model model, HttpSession session, CartForm cartForm, Device device) throws SQLException {
        GoodsForm GoodsForm=new GoodsForm();
        GoodsForm.setType("粮食");
        model.addAttribute("goodsForm", GoodsForm);
        model.addAttribute("cartList", cartService.searchCartList(cartForm));
        log.info("追加购物车");

AlipayController.java中添加实例化方法:

@RequestMapping(value = "guestAlipaySubmit", method = RequestMethod.POST)
    public String executeGuestAlipaySubmit(Device device, Model model, @Valid @ModelAttribute("alipayForm") AlipayForm alipayForm, BindingResult results) throws SQLException {
        GoodsForm goodsForm=new GoodsForm();
        goodsForm.setType("粮食");
        model.addAttribute("goodsForm", goodsForm);
        log.info("由匿名用户购买商品向支付宝发起支付请求。");
相关文章
相关标签/搜索