ResourceMapping в портлетах JSR286 SpringMVC

я разрабатываю портлет JSR286 с SpringMVC. У меня есть div в моем портлете, который будет повторять коллекцию в моей модели и показывать ее, как показано ниже.

<dl>
     <c:forEach var="product" items="${productList}">
        <dt>    
             <div><img src="<%=request.getContextPath()%>/images/banner.jpg" /></div>
             <div>${product.name} - ${product.price}</div>
             <div>${product.serviceOne}</div>
             <div>${product.servicetwo}</div>
             <div>${product.serviceThree}</div>
        </dt>
     </c:forEach>
</dl>

У меня есть предыдущая и следующая ссылка. при нажатии на ссылку мне нужно асинхронно обновить div с новым содержимым (используя ajax). Я использую jQuery для написания сценариев. я могу заменить коллекцию в модели, используя запрос ресурсов (URL-адрес сопоставления ресурсов). но я не знаю, как обновить div в успехе ajax, чтобы новую коллекцию можно было просмотреть в портлете.

Техники дайте ваши предложения ..


person San    schedule 01.06.2015    source источник


Ответы (1)


Создал новый jsp только с логикой итерации. В запросе ресурса я вернул имя jsp, таким образом, преобразователь представления выбрал соответствующий jsp из папки представления и вернул выполненное содержимое в качестве ответа. я поместил содержимое в div в успехе ajax. ниже код

@ResourceMapping("filterProducts")
public String filterProducts(Model model, ResourceRequest request,
          ResourceResponse response,
          @ModelAttribute("productModel") ProductModel productModel,
          ModelMap modelMap) throws IOException {
                   model.addAttribute("productModel", updatedProductModel);
                   return "productDetails";
}

$.ajax({
    url : fltURL,
    type : 'POST',
    datatype : 'html',  
    success : function(_html) {                         
          $('#midcontainer').html(_html);
    },
    error : function() {
          alert('error');
    }});

<portlet:resourceURL var="filterProductsURL" id="filterProducts"></portlet:resourceURL>
person San    schedule 03.06.2015