在Tomcat中,看起來我必須在context.xml
和我的web.xml
中指定任何JNDI資源。它是否正確?有沒有辦法解決?我認爲context.xml
中的一個配置就足夠了。這裏是相關的文件from the Tomcat User Guide。Tomcat中的JNDI資源
注意,資源名稱(這裏, 豆/ MyBeanFactory必須在Web應用程序 部署描述符中指定的 值相匹配。
Glassfish的不以這種方式需要配置。在GlassFish中,您可以在服務器上配置JNDI資源(如JDBC連接池),應用程序代碼通過JNDI查找獲取對資源的引用。在web.xml文件中不需要額外的條目。
瓦我擔心的是:如果Glassfish拒絕這個重複的JNDI配置,但Tomcat需要它,那麼我突然需要支持兩個web.xml文件,具體取決於應用程序將部署到的環境。它看起來比它需要的更復雜和繁瑣。
不確定 - 仍然有困難實際上是讓它在Tomcat中正常工作 - 然後我將重新測試Glassfish。我仍然覺得Tomcat需要這個額外的配置,而Glassfish卻不需要。 – Vinnie
額外配置的東西是規範的一部分:我想glassfish選擇沒有它。 tomcat的默認上下文植根於java:comp/env:並不完全確定你可以在不改變代碼的情況下以你想要的風格進行絕對的JNDI查找。 – Femi