1

次のような基本タイル定義があります。

<definition name="base_layout" template="/jsp/tools_tiles_layout.jsp">
        <put-attribute name="body1" value="" />
        <put-attribute name="body2" value="" />
</definition>

1 ページは次のように定義されます。

<definition name="tool_Home" extends="base_layout">     
        <put-attribute name="body1" value="/jsp/default/tool_body/list1.jsp" />
        <put-attribute name="body2" value="/jsp/default/tool_body/list2.jsp" />
</definition>

今私のコントローラーメソッドの1つは、このページを次のようにロードします:

@RequestMapping(value = "/test", method = RequestMethod.POST)
    public String getListsById(Model model, String Id) {

        List<String> list1 = null;
        List<String> list2 = null;
        try {
                list1 = getList1FromDB();
                list2 = getList2FromDB();
            }
            model.addAttribute("list1", list1);
            model.addAttribute("list2", list2);
        } catch (PersistenceException e) {
            logger.error("error in ",e);
        }
        return "tool_Home";
    }

今、私は ajax 呼び出しの後に list2.jsp だけをロードしたい

$.ajax({
            beforeSend: function(req) {
                req.setRequestHeader("Accept", "text/html;type=ajax");
            },  
            type : 'POST',
            url : "./add?fragments=body2",
            data :  formData,
            cache: false,
            contentType: false,
            processData: false,
            datatype : "json",
            beforeSend: function(req) {
                req.setRequestHeader("Accept", "text/html;type=ajax");
            },  
            complete : function(jqXHR)
            {
                $("#body2").html(jqXHR.responseText);
            }
        });


And my controller method for this Ajax Call is
______________________________________________

@RequestMapping(value = "/add", method = RequestMethod.POST)
    public String add(Model model, HttpServletRequest request) {
        try {
            List<String> list2 = getList2FromDB();
        } catch (PersistenceException e) {
            logger.error(e.getMessage(), e);
        }
        model.addAttribute("list2", list2);
        return "tool_Home";
    }

ここに私の豆の定義があります

<bean id="tilesConfigurer"  class="org.springframework.web.servlet.view.tiles3.TilesConfigurer">
        <property name="definitions" ref="TilesList"/>  
    </bean>

<bean id="TilesList" parent="parentTilesList">
        <property name="sourceList">
            <list merge="true">
                <value>/WEB-INF/tiles.xml</value>
                <value>/WEB-INF/tool-tiles.xml</value>
        </list>
        </property>
    </bean>

しかし、部分的な読み込みが機能していませんか? 私は何を間違っていますか?

4

0 に答える 0