2012-09-27 45 views
0

從Jetty運行的java servlet(作爲Eclipse的一部分)內部連接到oracle時遇到問題。相同的代碼從獨立的Java應用程序運行良好。如何從java servlet連接到oracle?

我的整個開發環境都在一個mac上。我正在使用Eclipse,並在主'引用庫'中包含了ojdbc6.jar,並且還將此文件拖放到war/web-inf/lib文件夾中。

只要線

OracleConnectionPoolDataSource ocpds =新 OracleConnectionPoolDataSource();

被稱爲(在servlet中)我得到異常:

java.security.AccessControlException:拒絕訪問 (javax.management.MBeanServerPermission createMBeanServer)

我錯過一些安全政策還是如此?如果是這樣,我需要做些什麼來糾正呢?這個BeanServer在哪裏進來?

在此先感謝。

回答

0

的工作了 - 不完全清楚爲什麼,但建立在Eclipse的一個新GWT應用程序,但這次不包含在谷歌應用程序引擎(這是默認打勾)。這似乎在Jetty中運行代碼時會添加一些限制.... 我現在已經複製了示例代碼,並且所有代碼都工作正常!

0

每個Web容器都有自己的定義數據源的方式,並通過JNDI使其可用。您應該這樣做。

本地Oracle連接池似乎要創造一個MBeanServer,這是不是可能不是由碼頭使用安全管理器允許的。請參閱http://wiki.eclipse.org/Jetty/Feature/Secure_Modehttp://wiki.eclipse.org/Jetty/Tutorial/Jetty-Policy

+0

感謝您的,但我發現,在創建項目時,我離開了谷歌應用程序引擎它的工作原理確定 - 即我的servlet高高興興地連接到Oracle並帶回數據 – Marcel