【发布时间】:2011-05-13 04:30:36
【问题描述】:
一些代码可以在各种环境中重用,包括 Java EE 应用服务器。有时很高兴知道代码是否在应用程序服务器下运行以及它是哪个应用程序服务器。
我更喜欢通过检查应用程序服务器的一些典型系统属性来做到这一点。 例如它可能是
-
jboss.server.nameJBoss -
catalina.base用于 Tomcat
有人知道其他服务器的适当属性名称吗? Weblogic、Websphere、Oracle IAS 还是其他?
很容易检查您是否安装了特定的应用程序服务器。只需添加行 System.getProperties() 到任何 JSP、Servlet、EJB 并打印结果。
我可以自己做,但安装服务器并使其正常工作需要很长时间。
我已阅读此讨论:How to determine type of Application Server an application is running on?
但我更喜欢使用系统属性。这是更简单且绝对便携的解决方案。代码不依赖于任何其他 API,如 Servlet、EJBContext 或 JMX。
【问题讨论】:
标签: java jakarta-ee application-server