簡體   English   中英

更改grails.serverURL對createLinkTo([…],絕對:'true')無效嗎?

[英]Changing grails.serverURL has no effect on createLinkTo( […], absolute:'true')?

我正在嘗試在Grails服務器上的頁面中顯示Java applet。 我正在使用Sun方便的Javascript代碼片段顯示小程序:

<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>

在Config.groovy中,我設置了不同的serverURLs:

environments {
    production {
        grails.serverURL = "http://10.0.xx.xxx/"
    }
    development {
        grails.serverURL = "http://10.0.yy.yyy:8080/"
    }
}

但是,由createLinkTo()創建的鏈接都具有“ http:// localhost:8080 ”,而不是我指定的URL。 (即它們看起來像“ http:// localhost:8080 / my-app / applet ”。)這是一個錯誤嗎? 有解決方法嗎?

我找到了解決方法。 我沒有使用createLinkTo,而是在Config.groovy中定義了一個新變量:

environments {
    development {
        grails.appURL = "http://10.0.xx.xxx:8080/my-app"
    }   
    production {
        grails.appURL = "http://10.0.yy.yyy"
    }
}

在我的代碼中,我這樣做:將org.codehaus.groovy.grails.commons.ConfigurationHolder導入為CH

//...
def appURL = CH.config.grails.appURL
//...

這至少讓我得到了可預測的路徑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM