Tag: servlets

包装默认servlet但覆盖默认的webapp路径

我有一个静态html,imgs,flash内容的文件夹,它们位于webapp文件夹之外。 现在我正在使用符号链接将该文件夹映射到我的webapp目录。 我遇到的问题是当我取消部署我的应用程序时,它遵循符号链接并删除所有这些文件。 我试图实现的解决方案之一是一个特殊的servlet,它包装默认的servlet但使用不同的相对路径。 我无法找到如何以覆盖默认servlet路径的方式包装默认servlet。 这是我正在使用的: public void doGet(final HttpServletRequest req, final HttpServletResponse resp) throws ServletException, IOException { final RequestDispatcher rd = getServletContext().getNamedDispatcher(“default”); final HttpServletRequest wrapped = new HttpServletRequestWrapper(req) { @Override public String getServletPath() { return “/usr/depot/repository”; } }; rd.forward(wrapped, resp); }

如何从ServletContext获取HttpServletRequest?

是否可以从ServletContext获取HttpServletRequest?

Spring MVC响应编码问题

在过去几个小时里,我已经阅读了很多关于这个主题的内容,到目前为止还没有任何工作。 我正在尝试返回包含“奇数”某些字符的响应。 这是一个例子,非常简单: @ResponseBody @RequestMapping(value=”test”) public String test(){ String test = “čćžđš”; System.out.println(test); logger.info(test); return test; } 这是我的web.xml ,因为我找到了一些CharacterEncodingFilter帮助的答案(虽然不是我的情况)。 我使用POST方法,因为我读到这适用于POST。 也找到了这个答案 (相关)。 也没有帮助。 当我调试它时会出现正确的值,但是当我打印时它没有,因为它可以在下面看到: 当我从jmeter测试时,响应似乎没问题, Content-Type是text/html;charset=UTF-8 这是一个截图。 http://i56.tinypic.com/14lt653.jpg 我认为正确的方法是返回UTF-8,也许我错了。

未在servlet中的请求中插入自定义标头

有一个需要通过自定义http标头获取信息的四方派对应用程序,因此我编写了一个简单的测试应用程序,创建此标题,然后重定向到列出所有标题的页面。 生成标头的servlet片段是: protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType(“text/plain”); response.setHeader(“cust-header”, “cust-val”); response.sendRedirect(“header.jsp”); } 另一方面,header.jsp的相关代码是: <% Enumeration enumeration = request.getHeaderNames(); while (enumeration.hasMoreElements()) { String string = (String)enumeration.nextElement(); out.println("” +string +”: ” + request.getHeader(string)+ “”); } %> 这显示以下标题: Host: localhost:9082 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; es-ES; rv:1.9.2.10) Gecko/20100914 Firefox/3.6.10 (.NET CLR […]

Java servlet是否可以安全地生成线程以满足请求?

我的Java(Tomcat 8)Web服务器是否可以安全地生成线程以响应HTTP请求? 我正在看post和论坛,有些人说这绝对没问题 ,其他人说不要这样做 。 我的用例是这样的: protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { … … final MyResult res = new MyResult(); Thread first = new Thread(new Runnable() { @Override public void run() { // put this into res } }); Thread second = new Thread(new Runnable() { @Override public void run() { […]

在Tomcat上部署war文件并在没有项目名称的情况下运行

我刚刚创建了我的web项目的war文件(JSP / Servlets)。 项目名称:TestApp 当我在Tomcat 7中使用它时,我运行它: localhost:8080 / TestApp /或www.maypage.com/testApp/ 好的,一切正常,但我需要在没有项目名称的情况下运行它,就像那样: localhost:8080和托管www.maypage.com 我怎样才能做到这一点? 谢谢。 我正在罚款jsp / servlet托管,它有配置选项。 你知道这样的托管吗?

web.xml中的标记不会捕获java.lang.Throwableexception

我有一个用servlet和JSP开发的web应用程序。 如果我插入错误的参数,我将我的应用程序配置为抛出IllegalArgumentException 。 然后我以这种方式配置了我的web.xml文件: 404 /error.jsp java.lang.Throwable /error.jsp 当我出现404 error ,然后它工作并调用error.jsp ,但是当我上升java.lang.IllegalArgumentException ,它不起作用,我有一个blank page而不是error.jsp 。 为什么? 服务器是Glassfish,日志显示IllegalArgumentException上升了。

如何将一个ArrayList分解并显示为多个表列

我有一个servlet,它加载一个属性文件,并在ArrayList对象中包含100个测试用例名称的列表。 将servlet加载到JSP后,该JSP在表中显示列表。 列表很长,所以我想要一些优雅的方式在表中显示它,以便它分成例如JSP上的三列或四列。 我现在要做的是将列表分解为servlet中的三个子列表: //load properties Properties props = new Properties(); ArrayList tests = new ArrayList(); props.load(getServletContext().getResourceAsStream(“/WEB-INF/sailcertifier.properties”)); Pattern pattern = Pattern.compile(“[AZ]{3}-[0-9]{2}”); for (Enumeration e = props.keys(); e.hasMoreElements();) { String key = (String) e.nextElement(); Matcher m = pattern.matcher(key); if (m.find()) tests.add(key); } Collections.sort(tests, new TestOrderComparator()); confBean.setPossibleTests(tests.toArray(new String[tests.size()])); int third = tests.size() / 3; List testSubset1 = […]

使用java将图像转换为base64

我需要将图像对象转换为base64对象,以便将其加载到客户端的标记中。 但是,我似乎无法弄清楚如何解决这个问题。 是否有人为此我可以轻松使用一段代码? 这就是我用来将外部图像链接转换为图像对象的方法 Image image = null; URL url = new URL(request.getParameter(“hdn_path”)); image = ImageIO.read(url); 我不确定我是否正确的方式。

在类型java.lang.String上找不到属性’someproperty’

我收到此错误,我无法弄清楚问题可能在哪里。 “userid”列位于数据库中并位于bean中。 有人有什么主意吗? org.apache.jasper.JasperException: An exception occurred processing JSP page /user.jsp at line 24 21: 22: 23: User ID : <input type="text" readonly="readonly" name="userid" 24: value="” /> Username : <input 25: type="text" name="firstName" 26: value="” /> LastName : <input 27: type="text" name="lastName" root cause javax.el.PropertyNotFoundException: Property 'userid' not found on type java.lang.String 谢谢。