【问题标题】:servlet mapping with URL patterns is not working and have to use URL-servlet/servletclassname for using servlets带有 URL 模式的 servlet 映射不起作用,必须使用 URL-servlet/servletclassname 才能使用 servlet
【发布时间】:2012-11-26 09:45:04
【问题描述】:

我有一个 java (jsp/servlet) 的网络托管空间,我已经尝试过 多次使用 web.xml 文件中的映射及其 URL 的 servlet 模式,当我使用该 URL 时,它会显示消息“The 在此服务器上找不到请求的 URL /myservlet。”页面是 默认由托管服务提供商设置。所以当我从托管中问它时 我无法使用 myservlet 或任何 servlet 的提供程序 映射到 web.xml 文件然后回复我说“使用你的 servlet 请按照 URL-www.yourdomain.com/servlet/myservlet”当我 使用了这个我没有在我的 web.xml 文件中映射的 URL 正在工作 而且我有很多次 web.xml 文件没有被服务器使用

所以我想问为什么会这样,我的意思是为什么 web.xml 文件没有 工作,为什么我必须使用 /servlet/servletclassname 才能使用 servlet,现在我如何将 URL 模式用于动态 URL...

请任何朋友帮助我...!!!

这是 Web.xml 文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
    <servlet>
        <servlet-name>MyServlet</servlet-name>
        <servlet-class>MyPackage.MyServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>MyServlet</servlet-name>
        <url-pattern>/MyServlet</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
</web-app>

【问题讨论】:

  • 在没有看到您的 web.xml 的情况下,任何人都可以给您的唯一信息就是一般性建议。如果您想要更好的东西,请编辑您的问题并发布您的 &lt;servlet&gt;&lt;servlet-mapping&gt; 部分。 exact 部分复制了一个编辑器窗口,而不是一些您认为代表实际存在的虚构版本。
  • 好的,这是 Web.xml 文件

标签: java servlets web-hosting web.xml


【解决方案1】:

先在家里试试。 NetBeans IDE(例如)具有良好的服务器集成。您可以使用打包的 Glassfish(或 Tomcat)下载它并在那里进行实验。

要组合的部分很多,所以我建议您自己尝试一下。 尤其是写出getServletContextPath 和所有那些部分路径获取器。

签入 web.xml

  • 网络应用/显示名称
  • web-app / servlet-mapping / url-pattern+

对于自动部署,战争名称也可能很重要。

【讨论】:

  • 实际上我使用的是 Tomcat 7,托管服务器也提供相同的 Tomcat 5.5.X
【解决方案2】:

您是否使用正确的 context 作为 URL 路径的第一部分?每当您部署应用程序时,您都需要指定一个标识所有 URL 的上下文。任何 url 模式都将在该上下文之后应用 。假设您有一个名为“MyShop”的上下文,然后使用您提供的 web.xml,您应该调用 http://yourdomain/MyShop/MyServlet。

【讨论】:

  • 好的,在你建议后,我在浏览器 www.domain.com/ServletMappingTest/MyServlet 中输入了 url,并且 web.xml 中没有任何变化意味着映射 url /MyServlet 保持原样,但它没有工作请任何其他方式建议我
  • 如果你指定一个未映射的 URL,你应该从 tomcat 得到一个错误。这个错误说明了什么?
  • 未找到 在此服务器上未找到请求的 URL /ServletMappingTest/MyServlet。此外,在尝试使用 ErrorDocument 处理请求时遇到 404 Not Found 错误。
  • 这里我通过这个给出 url 你可以看到如果有任何错误请告诉我或者你也可以给我任何这些类型测试项目中的映射是根据你完成的所以在这里我将上传并检查并回复您...感谢您的帮助...!!!
  • 请从上述网址下载
猜你喜欢
  • 2012-04-17
  • 2019-03-06
  • 2011-05-12
  • 2017-03-27
  • 2011-02-24
  • 2012-05-11
  • 2012-01-20
  • 2017-09-21
  • 1970-01-01
相关资源
最近更新 更多