使用$.post和action或servlet交互 URL出现 http://localhost:8080/../[object%20Object] 错误的问题解决

使用$.post时,如下所示:

$.post({
url : "./test/ajaxTest",
});

控制台报:There is no Action mapped for namespace [/] and action name [[object Object]] associated with context path [/项目名]. - [unknown location] 错误

在网页上调试时出现:http://localhost:8080/项目名/[object%20Object] 404 (Not Found) 错误

后来将$.post改为使用$.ajax,并且设置type:post,如下所示:

$.ajax({
type : "post",
url : "./test/ajaxTest",

});

错误解决。

后来想想是不是jQuery版本的问题,将jquery-1.4.js改为jquery-3.1.1.js,并且还是用$.post方法,发现没有错误。

综上所述:

  出现标题中的问题的原因:

  1、jquery包版本太低

  解决方法:

  1、将$.post改为使用$.ajax

  2、使用较高的jquery包版本

   建议:当不确定地址是否写对时,又出现了如题错误,首先改为使用$.ajax查看是否地址写错,若有错,则改之。若地址无误,则使用$.ajax应该是成功的。如果仍想使用$.post,那么只能使用较高版本的jquery包了。

时间: 2024-11-04 00:47:11

使用$.post和action或servlet交互 URL出现 http://localhost:8080/../[object%20Object] 错误的问题解决的相关文章

Servlet(四)Servlet映射URL

1.Servlet映射可以多层多样 例子: <servlet> <servlet-name>HServlet</servlet-name> <servlet-class>com.hunhun.HServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>HServlet</servlet-name> <url-patte

转:Servlet的url匹配以及url-pattern详解

Servlet是J2EE开发中常用的技术,使用方便,配置简单,老少皆宜.估计大多数朋友都是直接配置用,也没有关心过具体的细节,今天遇到一个问题,上网查了servlet的规范才发现,servlet中的url-pattern还是有一些文章在里面的,总结了一些东西,放出来供大家参考,以免遇到问题又要浪费时间. 一,servlet容器对url的匹配过程: 当一个请求发送到servlet容器的时候,容器先会将请求的url减去当前应用上下文的路径作为servlet的映射url,比如我访问的是http://l

Struts学习之路-第二天(Action与Servlet API)

Struts作为一款Web框架自然少不了与页面的交互,开发过程中我们最常用的request.application.session等struts都为我们进行了一定的封装与处理 一.通过ActionContext获取 方法 说明 void put(String key,Object value) 模拟HttpServletRequest中的setAttribute() Object get(Object key) 通过参数key查找当前ActionContext中的值 Map getApplica

笔记01 登录、常用配置参数、Action访问Servlet API 和设置Action中对象的值、命名空间和乱码处理、Action中包含多个方法如何调用

Struts2登录 1. 需要注意:Struts2需要运行在JRE1.5及以上版本 2. 在web.xml配置文件中,配置StrutsPrepareAndExecuteFilter或FilterDispatcher 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <filter>     <filter-name>struts2</filter-name>     <filter-class>org.apache.struts2.di

struts2学习笔记之六(Action访问servlet的API以及复制项目小技巧)

action和servlet分离使得action代码更加纯洁,与servlet的耦合性也降低了 但是有时候却不得不访问servlet API,比如把数据放到session,application里, 更甚至于添加cookie(response.addCookie()) strust2提供了两种方式访问servlet api 伪访问 借助于ActionContext类 Map<String ,Object > getApplication() 模拟访问http application Map&l

在Java代码(非JSP及Action,Servlet,Controller)中获得WebRoot的物理路径

在开发Web方面的应用时, 经常需要获取 服务器中当前WebRoot的物理路径; 如果是Servlet , Action , Controller, 或则Filter , Listener , 拦截器等相关类时, 我们只需要获得ServletContext, 然后通过ServletContext.getRealPath("/")来获取当前应用在服务器上的物理地址. 如果在类中取不到ServletContext时, 有两种方式可以做到 1) 利用Java的类加载机制 调用 XXX.cla

struts2的action访问servlet API的三种方法

学IT技术,就是要学习... 今天无聊看看struts2,发现struts2的action访问servlet API的三种方法: 1.Struts2提供的ActionContext类 Object get(Object key);可以获取request属性 Map getSession():可以得到session属性 Map getAppliction():可以得到ServletContext实例 2.action类实现 ServletContextAware,ServletRequestAwa

Action访问Servlet API的三种方法

一.为什么要访问Servlet API ? Struts2的Action并未与Servlet API进行耦合,这是Struts2 的一个改良,从而方便了单独对Action进行测试.但是对于Web控制器而言,不访问action是不行的,Struts提供了一种比较简单的方式来访问Servlet API . 二.通常我们需要访问的Servlet API 是 HttpSession.HttpservletRequest.ServletContext,分别对应了JSP内置对象 session,reques

action和servlet的关系

在struts2.0中,可以通过ServletActionContext.getRequest()获取request对象. 在action的方法中return一个字符串,该字符串对应struts.xml中的result标签的name相同,result标签中包含的就是跳转页面, 其原理,我的理解是这样的: 一.客户端提起一个(HttpServletRequest)请求,如上文在浏览器中输入”http://localhost:8080/TestMvc/add.action” 二.请求被提交到一系列(