我正在开发一个GWT应用程序。
我想知道我是在Jboss实例上运行,还是在Jetty实例上运行。
这是因为如果我在Jetty上运行,这意味着我正在运行开发模式,我需要重定向到MyModule.html?codeserver……但是如果我正在运行Jboss,我需要重定向到MyModule.html
但是我不知道我怎么知道我是撞上了Jetty还是撞上了Jboss。
发布于 2012-09-04 10:14:33
您不应该在应用程序代码中尝试找出运行应用程序的try服务器。相反,您可以在应用程序上下文中使用不同服务器的不同值来设置区分参数。
例如。
对于JBoss,server.xml可以在上下文定义中包含参数,如下所示:
<Context ...>
...
<Parameter name="applicationStage" value="prod" />
...
</Context>对于Jetty,相同的上下文参数将进入其jetty.xml,但值为"devo“。
发布于 2012-09-04 17:32:47
如果您只是想知道您是在运行生产模式还是开发模式,那么请尝试
GWT.isProdMode();当然,只能在客户端工作。
发布于 2012-09-04 10:18:52
据我所知,没有任何简单的方法来确定您正在运行的应用程序服务器。您可以检查一些系统属性来确定这一点。
JBoss:
jboss.server.nameJetty:
jetty.home尽管我不鼓励由你的环境决定逻辑,就像Vikdor在他的回答中提到的那样。他的建议将是一个更好的方法。
https://stackoverflow.com/questions/12255937
复制相似问题