Grails聪明地获得战争基础?

Ste*_*all 5 java grails groovy tomcat war

我的baseUrl是http://localhost:8080/whatever.在其他机器上,它是http://localhost/whatever.

是否有一种聪明的方法来获取这些信息而不使用

<%
    String baseUrl = "http://" + request.getServerName() + ":" + request.getServerPort() + request.getContextPath()
%>
Run Code Online (Sandbox Code Playgroud)

我正在尝试动态创建路径参数化其余URL的一些链接,即:

http://localhost:8080/a/b/${param1}/c/${param2}

如果有更好的方法,请告诉我.

Hoà*_*ong 7

万一你忘记了,这里的问题没有回答.只需设置grails.serverURLgrails.app.context部署的计算机的配置文件中 然后createLink用来制作网址.或者我错过了什么?


seb*_*kem 6

此解决方案不需要设置grails.serverURL:

<g:createLink absolute='true' uri='/WHATEVER'/> 要么

${g.createLink(absolute:true, uri:"/WHATEVER")}

会产生:

http://HOST:PORT/APPNAME/WHATEVER

设置URI指向应用程序中的目标位置.使用'/'你的应用程序的基本URL:

http://HOST:PORT/APPNAME/