jsp页面重定向后地址栏controller名重复而导致报404错误
生活随笔
收集整理的這篇文章主要介紹了
jsp页面重定向后地址栏controller名重复而导致报404错误
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
今天做ssm項目時遇到了這種錯誤
看看代碼:
無關(guān)代碼省略。。。
22 <body>
23 <div id="container">
24 <iframe id="header" src="${pageContext.request.contextPath }/header.jsp" width="980" height="136" frameborder="0" scrolling="no"></iframe>
25 <div id="main">
26 <div class="cat">
27 <%
28 List<Category> pcategories = (List<Category>)session.getAttribute("pcategories");
29 if(pcategories==null){
30 response.sendRedirect("categoryController/getParentCategoryId");
31 return;
32 }
33 for(int i = 0 ; i < pcategories.size() ; i ++){
34 Category pcategory = pcategories.get(i);
35 %>
36 <ul>
37 <h1><%=pcategory.getName() %></h1>
38 <%
39 Set<Category> ccategories = pcategory.getcCategory();
40 for(Category child : ccategories){
41 %>
42 <li><a href='${pageContext.request.contextPath }/info.jsp'><%=child.getName() %></a></li>
43 <%
44 }
45 %>
46 </ul>
47 <%
48 }
49 %>
50 無關(guān)代碼省略了。。。
68 <%
69 List<Product> products = (List<Product>)session.getAttribute("products");
70 if(products==null){
71 response.sendRedirect("productController/getImageById");
72 return;
73 }
74 for(int k = 0 ; k < products.size() ; k++){
75 Product product = products.get(k);
76 /* Iterator<ImageDTO> imagesIter = dto.getImagesDTO().iterator(); */
77 Set<Image> images = (Set<Image>) product.getImages();
78 for(Image image : images){
79 %>
80 <dl>
81 <dt>
82 <img src="${pageContext.request.contextPath }/upload/<%=image.getUrl() %>" alt="alt" width="90" height="90" />
83 </dt>
84 <dd>
85 <a href="${pageContext.request.contextPath }/infoController/getProductInfo?productIdStr=<%=image.getProductId() %>"><%=product.getName() %></a>
86 </dd>
87 </dl>
88 <%
89 }
90 %>
91 <%
92 }
93 %>
94
133 </body>
134 </html>
上面紅色部分就是重定向的代碼,跑上面代碼就報404,百度了幾個小時,沒找出解決方案,后來自己仔細想一想,確定是重定向的路徑錯誤。
于是一開始做了以下修改:
if(pcategories==null){
response.sendRedirect("${pageContext.request.contextPath }/categoryController/getParentCategoryId");
return;
}
無腦加上${pageContext.request.contextPath }(@_@原諒我的新手。。。)
發(fā)現(xiàn)還是報錯。。。
又百度了一堆還是沒解決,自己又再想想,思路沒錯,應(yīng)該是寫法出錯,嗯,是這樣!
果然,做了以下修改后就正確了
if(products==null){
response.sendRedirect(request.getContextPath()+"/productController/getImageById");
return;
}
總結(jié)
以上是生活随笔為你收集整理的jsp页面重定向后地址栏controller名重复而导致报404错误的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么剥完橙子手发白?
- 下一篇: 为什么叫乌冬面?