当前位置: 首页 > 知识库问答 >
问题:

错误404 Spring-MVC

左宁
2023-03-14

我正在尝试spring-mvc和JSON。

src
--main
----java
----resource
----webapp
------WEB-INF
--------web.xml
--------jodoCmsDispatcher-servlet.xml
public class CategoryController {   
    @RequestMapping(value = "/kfc", method = RequestMethod.GET)
    public @ResponseBody Shop addCategory(HttpServletResponse response, @PathVariable("parentid") String parentCategoryId, @PathVariable("newcategorytitle") String newcategorytitle )
    {
        Shop shop = new Shop();
        shop.setName("Testing");
        shop.setStaffName(new String[]{"11", "22"});
        return shop;
    }
}
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB_INF/jodoCmsDispatcher-servlet.xml</param-value>
</context-param>

<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
    <listener-class>org.springframework.security.web.session.HttpSessionEventPublisher</listener-class>
</listener>

<servlet>
    <servlet-name>jodoCmsDispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>jodoCmsDispatcher</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>
.
.
<context:component-scan base-package="com.jodo.cms.controllers" />
<mvc:annotation-driven />
localhost - - [05/Apr/2014:11:43:41 +0530] "GET /jodocms/kfc/ HTTP/1.1" 404 949
localhost - - [05/Apr/2014:11:44:20 +0530] "GET /jodocms/kfc HTTP/1.1" 404 949
localhost - - [05/Apr/2014:11:44:24 +0530] "GET /jodocms/ HTTP/1.1" 404 949

项目在tomcat中部署成功,如localhost:8080/manager
所示

我试图发送json数据,并遵循“http://www.mkyong.com/spring-mvc/spring-3-mvc-and-json-example/”
我缺少什么?
谢谢

共有1个答案

乐正嘉瑞
2023-03-14

这并不是真的需要

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB_INF/jodoCmsDispatcher-servlet.xml</param-value>
</context-param>

由于DispatcherServlet默认加载jodocmsdispatcher-servlet.xml,因此删除这些行,该配置仅用于添加另一个applicationContext文件

并且CategoryController必须标记为@controller才能扫描

<context:component-scan base-package="com.jodo.cms.controllers" />
<context:component-scan base-package="com.jodo.cms" />

尝试移除..

@PathVariable("parentid") String parentCategoryId,
@PathVariable("newcategorytitle") String newcategorytitle

这些会导致冲突,因为你的URL不正确,所以离开这个方法。

  @RequestMapping(value = "/kfc", method = RequestMethod.GET)
    public @ResponseBody Shop addCategory(HttpServletResponse response)
    {
        Shop shop = new Shop();
        shop.setName("Testing");
        shop.setStaffName(new String[]{"11", "22"});
        return shop;
    }
 类似资料:
  • 我有一个控制器,它在请求正文中获取json作为字符串,如下所示 请求正文为 我面临的问题是,当userId属性的位数超过10位时,控制器返回404错误,请求甚至无法到达控制器,但如果我将位数减少到10以下,比如说123456789,我将得到实际的预期响应。我之所以将请求主体保留为字符串,是因为有时请求可能是graphql字符串或JSON字符串,但这两种情况都会发生。

  • 我正在尝试搜索亚马逊的产品广告,并使用botlenose来帮助我做到这一点。但是,我刚刚收到HTTP错误400。 其他一些重要信息: 我来自巴西,我的标签也来自亚马逊。这是个问题吗? 我确实检查了我的钥匙、秘密和标签,一切正常。我确实在StackOverflow上查看了其他一些问题,但对我来说没有任何效果。 当然,出于安全原因,我更改了密钥。 Traceback(最近一次调用最后一次):File"

  • 我有一个基于Spring Web model view controller(MVC)框架的项目。Spring Web模型-视图-控制器(MVC)框架的版本是3.2.8 我有这个控制器 这个URL一切正常:

  • 目前从Angular JS controller中,我试图将JSON数据发送到后端服务。但是我有400个错误的请求错误。 在Controller中,我试图通过http服务发送数据,如下所示:

  • 我得到了这个错误,有什么想法会导致它吗?我试图发送一个DTO,它有一个扩展抽象类的对象列表,我想这个问题可能是因为DTO中的列表,还是因为抽象类的子类?

  • 在月食中, ”org.apache.axis2。AxisFault:传输错误: 403错误:禁止”试图从svn检出项目时发生错误。我不能实现这个错误,因此我检查了从终端使用"svn-co"命令的项目。 但是,有趣的是,当我试图在Eclipse中运行应用程序时,在输入凭据(用户名和密码)并按下“登录”按钮之后,我又遇到了相同的错误。响应是JFrame上的无效用户名/密码,但凭据没有错误。这只发生在日

  • Errors 错误 Library routines must often return some sort of error indication to the caller. As mentioned earlier, Go’s multivalue return makes it easy to return a detailed error description alongside th

  • 本章概述了Google API错误模型,以及开发人员如何正确生成和处理错误的一般指南。 Google API使用简单的协议无关错误模型,这使我们能够在不同的API,API协议(如gRPC或HTTP)以及错误上下文(例如,异步,批处理或工作流错误)中获得一致的体验。 错误模型 错误模型在逻辑上由google.rpc.Status定义,当API发生错误时,返回一个Status实例给客户端。 以下代码段