当前位置: 代码迷 >> Java Web开发 >> 关于调用servlet的有关问题
  详细解决方案

关于调用servlet的有关问题

热度:240   发布时间:2016-04-13 22:45:06.0
关于调用servlet的问题
写了两个servlet,分别是:servletListFiles、servletDownFile1
调用代码分别这样写:
    <form action="${pageContext.request.contextPath}/servlet/servletListFiles" method="post">
     <input type="submit" value="提交123">
    </form>



    <c:forEach var="me" items="${fileMap}">
        <c:url value="${pageContext.request.contextPath}/servlet/servletDownFile1" var="downurl">
            <c:param name="fileName" value="${me.key}"></c:param>
            <c:param name="realfilename" value="${me.value}"></c:param>
        </c:url>
        ${me.value}<a href="${downurl}">下载</a>
        <br/>
    </c:forEach>

问题:
调用servletListFiles时不会报错,但调用servletDownFile1就出现404错误,但是如果把${pageContext.request.contextPath}去掉,就能正常调用。为什么第一个servlet可以加${pageContext.request.contextPath},而第二个不能呢?
------解决思路----------------------
很简单,因为<c:url>标签的一个功能就是会自动在url前面补上项目名称,方便开发者不需要自己写项目名
  相关解决方案