Tag: ajax

JSON plus spring mvc 3.2 error 415(不支持的媒体类型)

我做错了什么? 我尝试使用Spring mvc和JSON。 当我尝试调试我的代码时,我看起来javascript工作,但不适用于控制器。 在浏览器中,我收到错误415 Unsupported Media Type。 脚本: $(document).ready(function() { $(‘#newSmartphoneForm’).submit(function(event) { var producer = $(‘#producer’).val(); var model = $(‘#model’).val(); var price = $(‘#price’).val(); var json = { “producer” : producer, “model” : model, “price”: price}; $.ajax({ url: $(“#newSmartphoneForm”).attr( “action”), data: JSON.stringify(json), type: “POST”, beforeSend: function(xhr) { xhr.setRequestHeader(“Accept”, “application/json”); xhr.setRequestHeader(“Content-Type”, “application/json”); }, success: function(smartphone) […]

您是否会使用Laszlo为Java Web应用程序开发基于Flash的前端?

如果您有一个基于Java的Web应用程序(J2EE webapp – 从不介意使用其他底层框架),并且您想要引入基于Flash的前端,您是否会使用Laszlo或者您是否愿意公开类似ReST的XML接口并构建和部署使用它的Flash应用程序? 一方面,Laszlo非常了不起 – 为Flash做了JSP为HTML做的事情。 它很容易使用。 它非常适合Web应用程序的其余部分(基于JSP)。 另一方面,开发一个与服务器分离的完整Flash应用程序并使用XML-over-HTTP机制来绑定这两个应用程序可能会更好。 如果需要,这将具有能够为AJAX前端使用相同XML接口的附加优点。 你会做什么,为什么?

如何使用JSON数据填充dropdownlist作为jQuery中的ajax响应

我正在研究j2ee应用程序。 在我的应用程序中,我有一个下拉列表(或选择元素)。 我想用JSON数据填充这个下拉列表作为Ajax响应。 以下是我的代码: 服务器端代码(json_source.java),它生成一个JSON响应。 : package demo.model; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.google.gson.*; /** * Servlet implementation class json_source */ public class json_source extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) […]

带有null返回值的Spring Ajax @ResponseBody

我有大约50个使用@ResponseBody注释的控制器。 喜欢这个: @RequestMapping(value = “/someUrl.controller”, method = RequestMethod.GET) public @ResponseBody Object getObject(@RequestParam(“id”) Long id) { Object object = provider.getObject(id); return object; } 有时候getObject方法返回null 。 问题是在客户端我获得空响应而不是null 。 在初始实现中,我们有自定义的JsonView对象,它作为包装器而没有@ResponseBody注释。 喜欢这个: @RequestMapping(value = “/someUrl.controller”, method = RequestMethod.GET) public JsonView getObject(@RequestParam(“id”) Long id) { Object object = provider.getObject(id); return new JsonView(object); } 所以它工作正常。 我找到了一些解决方案如何覆盖Jackson 2.0中的null序列化器? 但不幸的是,它仅适用于POJO中的字段。 您有什么想法可以处理吗? 提前致谢!

长轮询冻结浏览器并阻止其他ajax请求

我试图在我的Spring-MVC Web App中实现长轮询,但是在4-5继续AJAX请求之后它冻结了我的浏览器和其他请求。我不知道什么是在这里是我的相关代码。 控制器方法:(服务器端): – @Asynchronous @RequestMapping(“/notify”) public @ResponseBody Events notifyEvent(HttpServletRequest request) { Events events = null; try { events = (Events) request.getSession(false).getServletContext().getAttribute(“events”); System.out.println(“Request Came from” + ((com.hcdc.coedp.safe.domain.User) request.getSession(false).getAttribute(Constants.KEY_LOGGED_IN_USER)).getLoginId()); if (!events.getTypeOfEvents().isEmpty()) { System.out.println(“Removing older entries”); events.getTypeOfEvents().clear(); } while (!events.isHappend()) { //Waiting for event to happen. } events = Events.getInstance(); events.setHappend(false); request.getSession(false).getServletContext().setAttribute(“events”, events); }catch (Exception e) […]

在JSF自定义validation器中区分ajax请求和完整请求

我的validation器需要知道它是完整请求还是ajax请求。 在我当前的解决方案中,我检查X-Requested-With元素的http请求标头: public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException { HttpServletRequest req = (HttpServletRequest) context.getExternalContext().getRequest(); if (req.getHeader(“X-Requested-With”) != null) { // do something } else { // do something else } … } 有没有更好的方法来实现这一目标? 对于不同的浏览器/ javascript库,我的解决方案是否“安全”? 更新: 刚发现只有当ajax请求来自Primefaces组件库( 标签)时,才会出现X-Requested-With标头。 如果我使用普通的JSF 它就不存在了。 所以我的方法不适用于 。 使用有一个不同的标题: Faces-Request:partial/ajax Osw提出的解决方案适用于 和 : PartialViewContext#isAjaxRequest()

有没有人从Struts 1迁移到另一个Web框架?

在我目前的项目中,我们过去几年一直在使用Struts 1,而且……唉… Struts正在显示它的时代。 我们正在慢慢地将我们的前端代码迁移到从服务器使用XML的Ajax客户端。 我想知道你是否有人将遗留的Struts应用程序迁移到不同的框架,以及你在这样做时面临的挑战。

检测客户端中止请求Jersey

我有泽西岛提供一个restfull网络服务。 经常发生客户端中止通过ajax完成的请求,这里解释了ajax abort方法abort ajax request 在服务器端,我得到以下输出。 哪个不好看。 有没有办法在泽西岛检测中止的请求? SEVERE: An I/O error has occurred while writing a response message entity to the container output stream. org.glassfish.jersey.server.internal.process.MappableException: ClientAbortException: java.net.SocketException: Broken pipe at org.glassfish.jersey.server.internal.MappableExceptionWrapperInterceptor.aroundWriteTo(MappableExceptionWrapperInterceptor.java:96) at org.glassfish.jersey.message.internal.WriterInterceptorExecutor.proceed(WriterInterceptorExecutor.java:162) at org.glassfish.jersey.message.internal.MessageBodyFactory.writeTo(MessageBodyFactory.java:1154) at org.glassfish.jersey.server.ServerRuntime$Responder.writeResponse(ServerRuntime.java:571) at org.glassfish.jersey.server.ServerRuntime$Responder.processResponse(ServerRuntime.java:378) at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:368) at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:262) at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) at org.glassfish.jersey.internal.Errors.process(Errors.java:315) at org.glassfish.jersey.internal.Errors.process(Errors.java:297) at org.glassfish.jersey.internal.Errors.process(Errors.java:267) at […]

使用jquery ajax调用rest webservice?

我尝试了几个教程,使用jQuery ajax调用来调用rest web-service,但我没有得到响应。 但是当我直接在浏览器中访问url时,我得到了响应,但无法使用ajax调用获得相同的json响应,总是进入错误块。 (tomcat在端口8888上运行) HTTP://本地主机:8888 / WebService_2 / REST / Web服务 Index.jsp文件。 Insert title here $(document).ready(function(){ $(“#submit”).click(function(){ $.ajax({ type: “GET”, dataType:”json”, contentType: “application/json; charset=utf-8”, url: “http://localhost:8888/WebService_2/rest/webservice”, success: function(data1) { console.log(“response:” + data1); }, error: function(jqXHR, textStatus, errorThrown) { console.log(‘ Error in processing!’); } }); }); }); WebSerivce类。 package com.app.rest; import javax.ws.rs.GET; import javax.ws.rs.Path; import […]

ajax问题 – 在萤火虫中200 OK,但没有响应体的红色消息

我看到了与跨域相关的小ajax问题。 在localmachine上我用一些ajax创建了html示例:在注册文本字段中用户类型’username’,在每次击键时ajax将它发送到本地Tomcat,其中servlet检查该用户名是否已被使用并发送’take’响应。 在localhost上没问题。 只要我输入’username’,servlet就会发送’take’响应,浏览器会显示它。 但是,当我在远程机器上放置带有ajax的html页面(远程网络上的一些免费托管),在我的localhost Tomcat上发送validation请求时,建立连接,在Tomcat控制台中我看到请求即将发生,并且在Mozzila中的firebug中这是控制台输出继电器: GET http://89.216.182.25:8080/Dinamicki1/UsernameServlet?username=zik 200 OK …但是在响应选项卡中没有’采取’servlet响应,并且firebug中的消息是红色的 所以服务器通信良好,没有防火墙问题,响应是200 OK 但是反应机构是空的。 任何想法萤火虫中的这些红色信息是什么? 非常感谢你提前。 如果有人可以为java推荐一些严肃的ajax教程,将非常感谢:)