0

誰かが私を助けてくれますか?JQuery $.getJSON() を使用して、選択したドロップダウン (カテゴリ) に基づいて 1 つのドロップダウン (サブカテゴリ) のコンテンツをロードしています。

何らかの理由で IllegalStateException が発生しています。よろしくお願いします。

<script>
    $(document)
            .ready(
                    function() {

                        // reload subcategories when changing category
                        $('#categories').change(loadSubcategories);

                    });

    // load the subcategories based on selected category
    function loadSubcategories() {
        $.getJSON('findSubcategoriesForCategory.html', {
            categoryId : $('#categories').val(),
            ajax : 'true'
        }, function(data) {
            var html = '<option value="">Select Subcategory</option>';
            var len = data.length;
            for ( var i = 0; i < len; i++) {
                html += '<option value="' + data[i].id + '">' + data[i].name
                        + '</option>';
            }
            html += '</option>';

            $('#subcategories').html(html);

        });
    }
</script>

Controller メソッドのコードは次のとおりです。

@RequestMapping(value = "findSubcategoriesForCategory", method = RequestMethod.GET)
public @ResponseBody
List<Subcategory> findSubcategoriesForCategory(
        @RequestParam(value = "categoryId", required = true) String categoryId) {

    List<Subcategory> returnList = new ArrayList<Subcategory>();

    try {
        returnList = categoryService
                .findSubcategoriesForCategory(categoryId);
    } catch (Exception e) {
        LOGGER.error("An Error occured when Finding sub-categories for category id: " + categoryId);
    }

    return returnList;

}

java.lang.IllegalStateException: getOutputStream() は、org.apache.catalina.connector.ResponseFacade.getWriter(ResponseFacade. java:198) で javax.servlet.ServletResponseWrapper.getWriter(ServletResponseWrapper.java:112) で org.apache.jasper.runtime.JspWriterImpl.initOut(JspWriterImpl.java:125) で org.apache.jasper.runtime.JspWriterImpl.flushBuffer (JspWriterImpl.java:118) org.apache.jasper.runtime.JspWriterImpl.write(JspWriterImpl.java:273) で java.io.PrintWriter.write で (不明なソース) org.apache.jasper.runtime.JspWriterImpl.flushBuffer で(JspWriterImpl.java:119) org.apache.jasper.runtime.JspWriterImpl.write(JspWriterImpl.java:326) で org.apache.jasper.runtime.JspWriterImpl.write(JspWriterImpl.java:342) org.apache.jsp.WEB_002dINF.jsp.include.header_jsp._jspx_meth_c_005fforEach_005f1(header_jsp.java:341) org.apache.jsp.WEB_002dINF.jsp.include.header_jsp._jspx_meth_c_005fforEach_005f0(header2_jsp.java93) org.apache.jsp.WEB_002dINF.jsp.include.header_jsp._jspService(header_jsp.java:133) で org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) で javax.servlet.http.HttpServlet org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388) の .service(HttpServlet.java:717) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) org. org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) org.apache .catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551) org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488) org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java) :968) org.apache.jsp.WEB_002dINF.jsp.errorMsg_jsp._jspService(errorMsg_jsp.java:69) で org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) で javax.servlet.http. org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388) の HttpServlet.service(HttpServlet.java:717)。org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) の servlet.JspServlet.serviceJspFile(JspServlet.java:313) org の javax.servlet.http.HttpServlet.service(HttpServlet.java:717) .apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher) .java:646) org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551) org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488) org.springframework.web. org.springframework.web.servlet.view.AbstractView の servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:229)。render(AbstractView.java:250) org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1047) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:817) org.springframework .web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:669) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java) :574) で javax.servlet.http.HttpServlet.service(HttpServlet.java:617) で javax.servlet.http.HttpServlet.service(HttpServlet.java:717) で org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( ApplicationFilterChain.java:290) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) org.org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain. java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) で org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) で org.apache.catalina.core .StandardContextValve.invoke(StandardContextValve.java:191) で org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) で org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) でorg.apache の org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)。catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:291) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol. java:602) org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) で java.lang.Thread.run で (不明なソース)

4

2 に答える 2

1

これは、Web サーバーからの応答です。フロントエンドに Java は関与しません。:)

于 2012-06-06T13:48:09.170 に答える
0

コードを機能させるには、この @JsonIgnore を Hibernate マッピングの getter メソッドに追加する必要がありました。

于 2012-06-06T14:51:51.130 に答える