我想从其中一个servlet获取我的Web应用程序的根URL。
如果我将应用程序部署在“ www.mydomain.com”中,则要获取根网址,例如“
http://www.mydomain.com ”。
同样的事情,如果我将其部署在具有8080端口的本地tomcat服务器中 http://localhost:8080/myapp
谁能告诉我如何从servlet获取Web应用程序的根URL?
public class MyServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String rootURL="";
//Code to get the URL where this servlet is deployed
}
}
您确实意识到URL客户端可以看到(和/或在浏览器中键入内容),并且servlet所部署的容器所提供的URL可以大不相同吗?
但是,为了获得后者,您可以在HttpServletRequest上使用一些方法:
getScheme()
,getServerName()
,getServerPort()
并getContextPath()
使用适当的分隔符将它们组合起来getRequestURL()
删除。getServletPath()``getPathInfo()
问题内容: 如果我点击/ test / page,以上方法将起作用。但是,打/ test或/ test /将不起作用。我正在使用Spring MVC,我的请求映射如下: 编辑: 我正在通过一个独立的项目进行验证,但这似乎是Spring的UrlPathHelper的一个错误。当同时存在上下文和servlet路径时,以下方法将返回错误的路径,并且你在打servlet时不带斜杠。 举例来说,我有一个“
消息 说明服务器遇到内部错误(),无法运行 根本原因 根本原因 当我将浏览器用作http://localhost:8080/sample/rest/app/test将返回一个json数据类型。。 产品类 StringService类 StringServiceApplication 我的网络。xml 我的jboss网站。xml 构建路径上的我的库——javassist-3.12.1。GA-json
Java脚本代码段 在Servlet 这很好用!但是我想相应地改变div(反馈)的背景色,这意味着如果条件为真,背景色应该是绿色,否则背景色应该是红色(否则)
在检查完成之前,我是否必须在包装器中捕获一些东西以防止响应发送到客户机?
ConcurrentModificationException java.util.arrayList$itr.checkforcoModification(arrayList.java:901)java.util.arrayList$itr.next(arrayList.java:851)servlets.addcart.doget
在eclipse中运行此程序时出现异常。Servlet。servlet示例的init()引发了异常描述服务器遇到了一个内部错误,使其无法满足此请求。