我正在對命令行亞軍和網絡應用程序進行春季啓動。這兩個應用程序都需要用oracle錢包來實現,所以我實現了oracle錢包。命令行運行器能夠使用oracle datasource使用spring jdbc模板連接到數據庫,但是相同的配置無法爲數據源對象創建bean。當數據庫用戶名和密碼實現相同時,我可以連接。春季啓動Web應用程序不能與oracle錢包一起工作
我以幫助,從這個帖子 - [Connect to Oracle DB from Spring-jdbc with Oracle Wallet authentification
類似的代碼,
System.setProperty( 「oracle.net.tns_admin」, 「路徑/到/你/ TNSNAMES」);
OracleDataSource ds = new OracleDataSource();
Properties props = new Properties(); (「oracle.net.wallet_location」,「(source =(method = file)(method_data =(directory = path/to/your/wallet)))」); ds.setConnectionProperties(道具);ds.setURL(「jdbc:oracle:thin:/ @ dbAlias」); // dbAlias應該與您的tnsnames中的內容匹配
return ds;
我有我的所有屬性從引導應用程序的application.properties設置,我得到空指針異常創建數據源。
任何指針或在這方面的幫助將不勝感激。
由於提前, 的Sandip
對於任何多線程負載測試,始終使用Oracle 11.2.0.4或向上ojdbc驅動程序,如11.2.0.3 ojdbc司機不具備多線程訪問Oracle錢包支持。如果您在多線程上使用10.2.0.3版本的ojdbc,將會看到一些類似PKIX錯誤02002的日誌,並且無法打開cwallet.sso文件。 – sandipkbhaumik