Hi

I'm trying to connect to SQL Server 2008 using JDBC. I downloaded the JDBC 
from microsoft and there were two java files sqljdbc.jar and sqljdbc4.jar. I 
imported sqljdbc4.jar into my application but when i get to conn = 
DriverManager.getConnection(connString); i get the error below: the 
connection string is 
"jdbc:sqlserver://xxx.xxx.xxx.xxx:1433;encrypt=fasle;user=username;password=password;"
 
Can any one tell me what is going wrong? my code is below the error below. I 
know that there are other ways to connect to a db and using JDBC isnt the 
best but it the only suitable method for my application.

any help would be great and Thanks in advance.

I/MobileTrend(13984): ERROR 1: 
com.microsoft.sqlserver.jdbc.SQLServerException:The driver could not 
establish a secure connection to SQL Server by using Secure Sockets Layer 
(SSL) encryption. Error: "Socket closed".
W/System.err(13984): com.microsoft.sqlserver.jdbc.SQLServerException: The 
driver could not establish a secure connection to SQL Server by using Secure 
Sockets Layer (SSL) encryption. Error: "Socket closed".
W/System.err(13984):    at 
com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:1352)
W/System.err(13984):    at 
com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:1533)
W/System.err(13984):    at 
com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1042)
W/System.err(13984):    at 
com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:817)
W/System.err(13984):    at 
com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:700)
W/System.err(13984):    at 
com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:842)
W/System.err(13984):    at 
java.sql.DriverManager.getConnection(DriverManager.java:180)
W/System.err(13984):    at 
java.sql.DriverManager.getConnection(DriverManager.java:145)
W/System.err(13984):    at 
com.boozel.mobiletrend.MobileTrendActivity.query(MobileTrendActivity.java:77)
W/System.err(13984):    at 
com.boozel.mobiletrend.MobileTrendActivity.onOptionsItemSelected(MobileTrendActivity.java:50)
W/System.err(13984):    at 
android.app.Activity.onMenuItemSelected(Activity.java:2205)
W/System.err(13984):    at 
com.android.internal.policy.impl.PhoneWindow.onMenuItemSelected(PhoneWindow.java:748)
W/System.err(13984):    at 
com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:143)
W/System.err(13984):    at 
com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:855)
W/System.err(13984):    at 
com.android.internal.view.menu.IconMenuView.invokeItem(IconMenuView.java:532)
W/System.err(13984):    at 
com.android.internal.view.menu.IconMenuItemView.performClick(IconMenuItemView.java:122)
W/System.err(13984):    at 
android.view.View$PerformClick.run(View.java:9080)
W/System.err(13984):    at 
android.os.Handler.handleCallback(Handler.java:587)
W/System.err(13984):    at 
android.os.Handler.dispatchMessage(Handler.java:92)
W/System.err(13984):    at android.os.Looper.loop(Looper.java:130)
W/System.err(13984):    at 
android.app.ActivityThread.main(ActivityThread.java:3683)
W/System.err(13984):    at java.lang.reflect.Method.invokeNative(Native 
Method)
W/System.err(13984):    at java.lang.reflect.Method.invoke(Method.java:507)
W/System.err(13984):    at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
W/System.err(13984):    at 
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
W/System.err(13984):    at dalvik.system.NativeStart.main(Native Method)
W/System.err(13984): Caused by: java.net.SocketException: Socket closed
W/System.err(13984):    at 
org.apache.harmony.xnet.provider.jsse.NativeCrypto.SSL_do_handshake(Native 
Method)
W/System.err(13984):    at 
org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:474)
W/System.err(13984):    at 
org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:328)
W/System.err(13984):    at 
com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:1483)
W/System.err(13984):    ... 24 more

package com.boozel.mobiletrend;

import java.sql.Connection;
import java.sql.DriverManager;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.text.method.ScrollingMovementMethod;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.widget.TextView;
import com.microsoft.sqlserver.jdbc.*;

public class MobileTrendActivity extends Activity {
SharedPreferences sharedPreferences;
TextView tv;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        sharedPreferences = getSharedPreferences("MobileTrend", 0);
        
        tv = (TextView)findViewById(R.id.output);
        tv.setMovementMethod(new ScrollingMovementMethod());

    }
    
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.xml.mainmenu, menu);
        return true;
    }
    
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle item selection
        switch (item.getItemId()) {
        case R.id.settings:
        Intent myIntent = new Intent(MobileTrendActivity.this, 
Settings.class);
        MobileTrendActivity.this.startActivity(myIntent);
            return true;
        case R.id.connect1:
        query();
        return true;
        case R.id.connect2:
        query2();
        return true;
        case R.id.clear:
        tv.setText("");
        return true;
        default:
            return super.onOptionsItemSelected(item);
        }
    }

 public void query()
 { 
 Log.i("MobileTrend","1) MySQL Connect Example.");
 Connection conn = null;
 
 try {
 outputToConsole("\n1) Attempting to connect...");
 String driver = 
sharedPreferences.getString("driver","com.microsoft.sqlserver.jdbc.SQLServerDriver");
 outputToConsole("Driver: "+driver);
 Class.forName(driver).newInstance();
 //test = com.microsoft.sqlserver.jdbc.SQLServerDriver.class;
 outputToConsole("Driver Instance Created");
 String connString = sharedPreferences.getString("connectionstring1","");
 outputToConsole("Connection String: "+connString);
 conn = DriverManager.getConnection(connString);
 //conn = DriverManager.getConnection(url+dbName,userName,password);
 outputToConsole("Connected to the database");
 conn.close();
 outputToConsole("Disconnected from database");
  } catch (Exception e) 
  { outputToConsole("ERROR 1: "+e);
  e.printStackTrace();
  }
 }

 
 public void query2()
 { 
 Log.i("MobileTrend","2) MySQL Connect Example.");
 Connection conn = null;
 try {
 outputToConsole("\n2) Attempting to connect...");
 String driver = 
sharedPreferences.getString("driver","com.microsoft.sqlserver.jdbc.SQLServerDriver");
 outputToConsole("Driver: "+driver);
 Class.forName(driver).newInstance();
 //test = com.microsoft.sqlserver.jdbc.SQLServerDriver.class;
 outputToConsole("Driver Instance Created");
 String connString = sharedPreferences.getString("connectionstring2","");
 outputToConsole("Connection String: "+connString);
 String username = sharedPreferences.getString("username2","");
 outputToConsole("User Name: "+username);
 String password = sharedPreferences.getString("password2","");
 outputToConsole("Password: "+password);
 conn = DriverManager.getConnection(connString,username,password);
 //conn = DriverManager.getConnection(url+dbName,userName,password);
 outputToConsole("Connected to the database");
 conn.close();
 outputToConsole("Disconnected from database");
  } catch (Exception e) 
  { outputToConsole("ERROR 2: "+e);
  e.printStackTrace();
  }
 }
 public void outputToConsole(String message)
 {
 
 tv.append(message+"\n");
 Log.i("MobileTrend",message);
 }
 
 
}

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to