2010年10月25日 星期一

Android XmlRpc Remote Service Problem

測試 Android 系統使用 XmlRpc 呼叫遠端的服務時遇到二個問題

1. java.net.SocketExeption: Permission denied
2. localhost connection refused

第一個問題是因為在Android Application中沒有開啟 Internet 使用權限
解決方法是在 Manifest檔內加上
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
就可以正常運作

第二個問題是因為在 Android Simulator 把自己作為 localhost 了,
所以如果在程式中寫 localhost 要連至本機的 Server 將會出現此問題
如果要連至本機的 Server 就必需將 IP 設為 10.0.2.2


參考網站
java.net.SocketException:Permission denied
localhost connection refused

2010年10月12日 星期二

JDBC for Sqlite DB

1. 下載必要的Jar檔
     sqlite-jdbc-3.7.2 可至 Xerial 下載使用

2. 建立好Sqlite DB後, 將Sqlite的DB檔放至某處 (ex. C:\test.db)

3. 用以下的程式碼測試


String url = "jdbc:sqlite://C:\\test.db";
try {
  Class.forName("org.sqlite.JDBC");
  Connection con = DriverManager.getConnection(url);
  String query = "select * from test_T";
  Statement stmt = con.createStatement();
  con = DriverManager.getConnection(url);
  ResultSet rs = stmt.executeQuery(query);
  while (rs.next()) {
    out.print(rs.getString("Id")+"&nbsp;"+rs.getString("Password")+"<br/>");
  }
  rs.close();
  stmt.close();
} catch (Exception e) {
  e.printStackTrace();
  out.print(e.getMessage());
}


p.s. 記得 import 相關的 class 檔
ex.
import java.sql.Connection;
import java.sql.*;
import org.sqlite.JDBC;

以上是一個簡易的Sqlite連線