zoukankan      html  css  js  c++  java
  • sprngmvc+restFul 请求报错:404

    服务端代码

    control类

     1     @RequestMapping(value="getUser",method = RequestMethod.POST)
     2     @ResponseBody
     3     public User getUser(HttpServletRequest request){
     4         String name = request.getParameter("name");
     5         String age = request.getParameter("age");
     6         User user = new User();
     7         user.setPassWord("123123");
     8         user.setUserName("asdasd");
     9         return user;
    10     }
    View Code

    spring核心控制器

     1     <!--配置Springmvc核心控制器 -->
     2     <servlet>
     3         <servlet-name>springmvc</servlet-name>
     4         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
     5         <init-param>
     6             <param-name>contextConfigLocation</param-name>
     7             <param-value>classpath:springMVC.xml</param-value>
     8         </init-param>
     9     </servlet>
    10     <servlet-mapping>
    11         <servlet-name>springmvc</servlet-name>
    12         <url-pattern>*.action</url-pattern>
    13     </servlet-mapping>
    View Code

    客户端代码

     1 import com.alibaba.fastjson.JSONObject;
     2 import org.apache.http.HttpResponse;
     3 import org.apache.http.client.ClientProtocolException;
     4 import org.apache.http.client.methods.HttpPost;
     5 import org.apache.http.entity.StringEntity;
     6 import org.apache.http.impl.client.DefaultHttpClient;
     7 import org.apache.http.util.EntityUtils;
     8 import org.junit.Test;
     9 
    10 import java.io.IOException;
    11 
    12 public class HttpclientTest {
    13     @Test
    14     public void httpReqUrl()
    15             throws ClientProtocolException, IOException {
    16         String url = "http://localhost:8080/ssm/user/getUser";
    17         JSONObject json = new JSONObject();
    18         DefaultHttpClient httpClient = new DefaultHttpClient();
    19         HttpPost method = new HttpPost(url);
    20         // 接收参数json列表
    21         JSONObject jsonParam = new JSONObject();
    22 
    23         StringEntity entity = new StringEntity(jsonParam.toString(), "utf-8");//解决中文乱码问题
    24         entity.setContentEncoding("UTF-8");
    25         entity.setContentType("application/json");
    26         method.setEntity(entity);
    27 
    28         HttpResponse result = httpClient.execute(method);
    29         // 请求结束,返回结果
    30         String resData = EntityUtils.toString(result.getEntity());
    31         JSONObject resJson = json.parseObject(resData);
    32         System.out.printf(":::"+resJson.toString());
    33     }
    34 }
    View Code

     调用报错:http.404

    报错原因:服务端配置的核心控制器,只拦截以 “.action”结尾的请求

    解决方案:将服务端核心控制器配置“<url-pattern>*.action</url-pattern>”改为“<url-pattern>/</url-pattern>”

  • 相关阅读:
    nginx 超时配置、根据域名、端口、链接 配置不同跳转
    nginx 作用,初认识
    JVM理解
    使用开发IDE生成一个springboot工程。
    到spring官网创建第一个springboot工程
    linux 忘记root密码怎么处理。
    学习重新开始
    共同父域下的单点登录
    Bootstrap 与 Jquery validate 结合使用——多个规则实现
    Bootstrap 与 Jquery validate 结合使用——简单实现
  • 原文地址:https://www.cnblogs.com/malefeng/p/9290149.html
Copyright © 2011-2022 走看看