Tag: servlets

将Jetty作为Servlet容器嵌入

我正在使用Tomcat来服务我的Java Servlets,这对我来说更有用。 我只需要服务,单独的Servlet请求,没有静态内容,也不需要JSP等。所以我一直在寻找可以嵌入我的应用程序的Servlet容器。 我觉得如果剥离Jetty并单独使用它作为Servlet容器,它可以更具可扩展性并占用很小的内存,[我不需要Jetty的’Web Server’和其他部件]。 所以我有几个问题, 如何在我的应用程序代码中嵌入Jetty以单独提供Servlet请求? 如果我在我的应用程序代码中嵌入Jetty代码,我是否可以轻松升级Jetty版本? 我在这里得到了Jetty代码,如果我必须在我的应用程序中嵌入Jetty的Servlet容器,我应该从源代码中使用它, http://git.eclipse.org/c/jetty/org.eclipse.jetty.project。 git / snapshot / jetty-9.0.3.v20130506.tar.bz2 ,jetty-9.0.3.v20130506 / jetty-servlet或jetty-9.0.3.v20130506 / jetty-servlets 我打算用我的应用程序提供API请求,我正在寻找性能和可伸缩性作为主要约束。 当然还有Servlet 3.0支持。

ServletFileUpload #parseRequest(request)返回一个空列表

我在Android中有一个客户端应用程序,它使用HttpURLConnection将文件发送到服务器。 服务器使用Apache Commons FileUpload API来解析表单数据值。 HttpURLConnection发送此请求: —————————–4912995119421 Content-Disposition: form-data; name=”deviceid” 9428103 —————————–4912995119421 Content-Disposition: form-data; name=”countryid” 598 —————————–4912995119421 Content-Disposition: form-data; name=”number” 98621360 —————————–4912995119421 Content-Disposition: form-data; name=”file”; filename=”2012-12-08 17.42.18.jpg” Content-Type: image/jpeg ÿØÿá1 Exif II* @ ° ª ² ¼ Ä ( 1 Ì 2 Ø i‡ ì %ˆ \ n SAMSUNG GT-S5360L HH S5360LUHLB1 2012:12:08 17:42:18 š‚ […]

如何解决“通过对等方重置连接:套接字写入错误”?

当我从服务器读取文件内容时,它返回以下错误消息: Caused by: java.net.SocketException: Connection reset by peer: socket write error at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(Unknown Source) at java.net.SocketOutputStream.write(Unknown Source) at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:215) at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:462) at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:366) at org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffer.doWrite(InternalOutputBuffer.java:240) at org.apache.coyote.http11.filters.ChunkedOutputFilter.doWrite(ChunkedOutputFilter.java:119) at org.apache.coyote.http11.AbstractOutputBuffer.doWrite(AbstractOutputBuffer.java:192) at org.apache.coyote.Response.doWrite(Response.java:504) at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:383) … 28 more 我的servlet程序是 response.setContentType(“application/octet-stream”); response.setHeader(“Content-Disposition”,”attachment;filename=”+filename); FileInputStream in = new FileInputStream(new File(filepath)); ServletOutputStream output=response.getOutputStream(); byte[] outputByte=new byte[4096]; while(in.read(outputByte,0,4096)!=-1){ output.write(outputByte,0,4096);//error […]

转发和重定向之间的区别

可能重复: jsp前进和重定向之间的区别 有谁知道Http servlet中的转发和重定向之间的差异以及这些差异对浏览器刷新的影响?

Web应用程序中的计划任务?

我正在为在线游戏构建统计应用程序,使用Java中的servlet API构建(将部署在Tomcat上)。 每次用户登录时,让游戏向stats服务器发送消息都很容易,因为处理请求是Servlets / Tomcat的用途。 我还需要定期在统计服务器上发起请求,例如从游戏服务器检索在线用户的数量或从我们的Facebook页面检索粉丝数量。 在应用程序的主servlet中启动一个线程并让它偶尔进行数据检索会很容易,但感觉有点奇怪,因为所有其他线程都是由Tomcat创建的。 这样做好吗? 如果没有,推荐的方法是什么? 将servlet用于这样的事情是否正确? 有什么选择? 请注意第一个答案:我不是在寻找解决时序或并发问题的方法,因为我可以轻松处理这两个问题。 我只需要知道如何在servlet容器中正确启动主动进程。

在Java Servlet中,如何更改现有cookie的值?

在Java Servlet中,如何更改现有cookie的值? 有一个addCookie方法,但在HttpServletResponse中没有deleteCookie或editCookie

Servlet“已启动一个线程但未能阻止它” – Tomcat中的内存泄漏

Apache Tomcat多次说: Web应用程序[/ MyServlet]似乎已启动名为[pool-61-thread-2]的线程,但未能将其停止。 这很可能造成内存泄漏。 这有危险吗? servlet应该能够处理10.000个请求/天。 完成后如何关闭线程? class Worker { private final CountDownLatch startSignal; private final CountDownLatch doneSignal; private final int threadNumber; Worker( CountDownLatch startSignal, CountDownLatch doneSignal, int threadNumber ){ this.startSignal = startSignal; this.doneSignal = doneSignal; this.threadNumber = threadNumber; } public String[][] getSomeStrArrArr() { String[][] isRs = new String[8][20]; String[][] inRs = new String[8][20]; […]

Java Http Client通过POST上传文件

我正在开发一个J2ME客户端,它必须使用HTTP将文件上传到Servlet。 使用Apache Commons FileUpload覆盖servlet部分 protected void doPost(HttpServletRequest request, HttpServletResponse response) { ServletFileUpload upload = new ServletFileUpload(); upload.setSizeMax(1000000); File fileItems = upload.parseRequest(request); // Process the uploaded items Iterator iter = fileItems.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); File file = new File(“\files\\”+item.getName()); item.write(file); } } Commons Upload似乎只能上传多部分文件,但没有application / octect-stream。 但是对于客户端,没有Multipart类,在这种情况下,也不可能使用任何HttpClient库。 其他选项可能是使用HTTP Chunk上传,但我还没有找到一个明确的例子,说明如何实现它,特别是在servlet端。 我的选择是: – […]

使用Netty的Servlet API实现

有没有人在Netty之上构建了一个Servlet API实现? 我很想建立自己的,因为我无法谷歌实施。 http://www.jboss.org/netty/community#nabble-td4752485 http://markmail.org/message/4qmvuaacxqzevqhc 基本上我正在寻求足够的支持让jersey工作(希望jersey没有做任何线程本地的东西)。

Servlet从tomcat 7中的多部分表单获取参数

制作项目并需要上传文件。 所以,我使用enctype =“multipart / form-data”通知。 但我无法解析请求中的参数。 我也试过getPart,但它返回空字符串。 Servlet代码 – > import java.io.File; import java.io.IOException; import java.io.PrintWriter; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload; public class upload_wall extends HttpServlet { private static final long serialVersionUID = 1L; // location to store file uploaded private static final String […]