Alterar grails.serverURL não tem efeito sobre createLinkTo ([...], absoluta: 'true')?
Pergunta
Eu estou tentando exibir um applet Java em uma página em um servidor Grails. Estou usando da Sun útil Javascript trecho para exibir applets:
<script src="http://java.com/js/deployJava.js"></script>
<script>
deployJava.runApplet({codeBase:"${createLinkTo(dir:'applet', absolute:'true')}",
archive:"${createLinkTo(dir:'com/steve/applet', file='applet.jar', absolute:'true')}",
code:"com.steve.Applet.class",
width:"500", height:"500"}, null, "1.5");
</script>
Em Config.groovy, eu configurar os diferentes serverURLs:
environments {
production {
grails.serverURL = "http://10.0.xx.xxx/"
}
development {
grails.serverURL = "http://10.0.yy.yyy:8080/"
}
}
No entanto, os links criados por createLinkTo (), todos têm " http: // localhost: 8080 " em vez do URL I especificado. (Ou seja, eles se parecem com " http: // localhost: 8080 / my-app / miniaplicativo " .) Isso é um inseto? Existe uma solução?
Solução
I found a workaround. Instead of using createLinkTo, I just defined a new variable in Config.groovy:
environments {
development {
grails.appURL = "http://10.0.xx.xxx:8080/my-app"
}
production {
grails.appURL = "http://10.0.yy.yyy"
}
}
In my code, I do this: import org.codehaus.groovy.grails.commons.ConfigurationHolder as CH
//...
def appURL = CH.config.grails.appURL
//...
This at least lets me get a predictable path.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow