2012-05-19 5 views
1

У меня проблема при возврате jsp из контроллера с использованием ajax + spring mvc. Я хочу обновить фрагмент полной страницы. Фактически это таблица display-tag. Мой контроллер отправляет мне эту страницу, но данные, которые мне возвращаются с контроллера, это теги jstl, это не html-страница. Поэтому браузер, конечно же, не покажет мне эту страницу.Вызов jsp с ajax + spring MVC

$(document).ready(function() { 
    alert("asdfads"); 
    //$('#content').load('<c:url value="/pages/new.jsp"/>'); 
    $.ajax({  
     url : '/shop/getCartProducts/ajax/', 
     type : 'GET', 
     async: false, 
     data : {},    
     success : function(data) { 
      $('#content').html(data); 
      alert(data);             
     }, 
     error: function (jqXHR, textStatus, errorThrown) { 
      alert(jqXHR + " : " + textStatus + " : " + errorThrown); 
     } 
    }); 
}); 

Мои Controller Похоже, этот

@RequestMapping(value = "/getCartProducts/ajax/", method = RequestMethod.GET) 
String ajaxGetProdCart(HttpServletRequest request, Model model) { 
    LOG.error("We are in the controller"); 
    PaginatedListImpl<Product> paginatedList = new PaginatedListImpl<Product>(request); 
    productService.getProductsFromCart(paginatedList, null, 100); 
    model.addAttribute("paginatedList", paginatedList); 
    return "cartProduct"; 
} 

cartProduct.jsp

<display:table class="table" id="product" name="paginatedList" defaultsort="1" requestURI="/shop/cart/" excludedParams="*" export="false"> 
<display:column> 
    <a href='<c:url value="/cart/remove/"/>'> <img 
     src='<c:url value = "/resources/images/forbidden.png"/>'> 
    </a> 
</display:column> 
<display:column sortable="false" sortProperty="name" title="Product" 
    maxLength="55"> 

    <c:url var="prodUrl" value="/product/${product.product_id}/" /> 
    <a href='<c:out value="${prodUrl}"/>'> <c:out 
      value="${product.name}" /> 
    </a> 
</display:column> 
<display:column property="price" paramId="price" sortable="false" 
    title="Price" href="#" /> 
<display:column property="descr" sortable="true" paramName="descr" 
    title="Description" maxLength="250" sortName="descr" /></display:table> 

оповещения показать мне этот код не показать мне HTML.

ответ

0

Если то, что вы показали нам это полный код JSP, то вы просто забыли объявить два библиотеки тегов в верхней части JSP:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 
<%@ taglib prefix="display" uri="http://displaytag.sf.net" %> 
+0

мне нужно добавить какой-либо конкретный вид распознаватель, чтобы получить Do он внутри обработчика обратного вызова успеха при вызове ajax. У меня настроен внутренний разрешитель. – HKumar