1. java.sql.SQLException: Listener refused the connection with the following error:ORA-12505, TNS:listener does not currently know of SID given in connect descriptorThe Connection descriptor used by the client was:***:1521:design
注意,最後一個 design 是錯誤的,這個位置應該放的是 Oracle 資料庫伺服器的例項id,即 SID,具體是什麼要在伺服器上檢視,改成相應的 SID即可
2. javax.naming.NameNotFoundException: Name [portal] is not bound in this Context. Unable to find [portal].
錯誤在於 JNDI 資源配置錯了,如果只是在專案的 WEB-INF 下面配置了 Context.xml 是不會生效的!必須要配置在 Tomcat的conf下的 context.xml 檔案中
3. org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class 'oracle.jdbc.driver.OracleDriver' for connect URL 'jdbc:oracle:thin@124.16.8.16:1521:appdb'
錯誤在於:寫錯了!少了冒號! jdbc:oracle:thin@124.16.8.16:1521:appdb -- > jdbc:oracle:thin:@124.16.8.16:1521:appdb
4. java.net.SocketException: No route to host
(1)注意自己的URL是否寫對了
(2)如果server就是放在自己的電腦上的話,再看看電腦和手機是否是在同一個網路內,或者ping測試一下
某些時候,在設定裡關了WiFi功能,再重新開啟WiFi,結果就沒問題了
(3)記得在Manifest檔案中新增app對一些許可權的許可
另外,貌似順序都很重要,INTERNET一定要放在第一個,否則還是會報這個錯誤
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />