草庐IT

servlet-container

全部标签

java - 如何在我的 java servlet 中处理 multipart/form-data POST 请求?

我很难用我的Java应用程序服务器处理多部分/表单数据请求。据我所知,servlet3.0规范提供了诸如HttpServletRequest.getParts()之类的方法,它非常适合处理上传到我的servlet的表单数据。但是,这个方法是3.0servlet规范的一部分,我的应用服务器(Tomcat6)还不支持这个。即使使用有效的3.0web.xml文件和JavaEE6库,我在尝试调用getParts()时也会遇到以下异常:java.lang.NoSuchMethodError:javax.servlet.http.HttpServletRequest.getParts()Ljava

java - ArrayList.contains() 对比 HashMap.containsKey() 对比 HashMap.get()

ArrayList.contains()是否必须遍历所有项目才能进行检查?HashMap.containsKey()吗?我知道HashMap.get()不需要,但这就是它最有效的原因吗? 最佳答案 嗯嗯ArrayList.contains()迭代?/***Returnstrueifthislistcontainsthespecifiedelement.*Moreformally,returnstrueifandonlyifthislistcontains*atleastoneelementesuchthat*(o==null&nbs

java - Servlet 将响应转发给调用者/上一页

我正在尝试将servlet响应转发到它来自时的同一页面(又名:前一页,或“servlet”调用者)。我看过很多答案(例如this和this),但仍然无法正常工作。我通常执行以下操作将servlet的响应重定向到另一个页面:request.getRequestDispatcher("MyNewPage").forward(request,response);但我已尝试将“MyNewPage”更改为我认为是解决方案的其他选项:request.getRequestDispatcher((String)request.getAttribute("javax.servlet.forward.re

Java Servlet 映射。欢迎文件列表

在我的web.xml文件中有这个/index哪个映射到这个HomePageServletcom.gmustudent.HomePageServletHomePageServlet/index当我把它放在地址栏中时,我得到了我的主页站点,并且servlet会按要求抓取我的所有内容。http://localhost:8086/gmustudent/index但是,这给了我一个404http://localhost:8086/gmustudent/为什么我的欢迎文件列表没有在没有明确说明索引时获取那个欢迎文件servlet? 最佳答案 h

java - 为什么import javax.servlet.* 会出错?

我正在使用JavaSE6和Eclipse,行中有错误importjavax.servlet.*似乎没有用于此导入的jar。如何解决?安装任何东西,使用EclipseEE或在Maven中添加一些依赖项? 最佳答案 servletAPI不是JDK的一部分,您需要向您的pom.xml添加额外的依赖项。如果这是针对Web应用程序的,您可以在provided范围内添加此依赖项,servlet容器将在部署时为您的Web应用程序提供这些类。javax.servletservlet-api2.5provided

java.lang.IllegalStateException : Cannot forward after response has been committed in servlet 错误

这个问题在这里已经有了答案:java.lang.IllegalStateException:Cannot(forward|sendRedirect|createsession)afterresponsehasbeencommitted(9个回答)关闭6年前。在我的项目中,只有当用户已经登录时,我才禁止他访问每个页面。这就是为什么我写了下面的代码。当我在浏览器中输入时,例如http://localhost:8080/JSP1/Students,我来到了login.jsp页面。但是输入登录名和密码后,只有空白页http://localhost:8080/JSP1/Logged出现并且Gla

java - 为什么 Servlet 中的实例变量不是线程安全的

这个问题在这里已经有了答案:Howdoservletswork?Instantiation,sessions,sharedvariablesandmultithreading(8个答案)关闭6年前。当我阅读HeadFirstServletandJSP时,他们说实例变量是非线程安全的。我不是很理解这个说法。例如:我有一个名为ActionServlet.java的servlet。每次,每个用户的请求被发送到服务器,容器将创建一个新线程并创建新的ActionServlet实例。ActionServlet可能有一个结构:publicclassActionServletextendsHttpSe

java - java.util.Set.contains(Object o) 的奇怪行为

doc关于java.util.Set.contains(Objecto)说:Returnstrueifandonlyifthissetcontainsanelementesuchthat(o==null?e==null:o.equals(e)).也就是说,这是一个POJO(如您所见,我重写了它的equals方法):publicclassMonthAndDay{privateintmonth;privateintday;publicMonthAndDay(intmonth,intday){this.month=month;this.day=day;}@Overridepublicbool

java - 您如何为 Java servlet 编写单元测试?

单元测试javaservlet的最佳实践是什么?顺便说一句:这是一个我有一些困难的话题:你如何对你的javaservlet进行单元测试? 最佳答案 要做的最重要的事情是尝试从servlet中提取所有与servlet行为没有直接关系的东西。这立即使测试核心功能变得很多更容易。通过这样做,您立即拥有一组不绑定(bind)到容器并且可以测试的组件,而无需运行和连接到容器的痛苦(除了使它们更可重用)。应该考虑架构和组件的适当分层-例如组件返回对象结构而不是可显示的片段,不直接使用HttpRequests但一些请求编码结构等。您的大部分测试(

java - 使用 Selenium WebDriver 的带有 contains() InvalidSelectorException 的 CSS 定位器

我正在学习SeleniumWebdriver并尝试编写一个简单的测试脚本。目的是获取AboutGoogleGmail页面上的链接以练习CSS定位器。代码如下:publicclassGoogleSearch{publicstaticvoidmain(String[]args){WebDriverdriver=newFirefoxDriver();driver.get("https://www.gmail.com");WebElementaboutGoogle=driver.findElement(By.cssSelector("a:contains('AboutGoogle')"));d