O Salesforce ODBC Driver estende o número de aplicativos dos quais você pode usar o Salesforce SOQL. Neste blog, descrevemos como executar instruções SOQL do Java usando o driver ODBC do Salesforce em nosso conector JDBC-ODBC Bridge, Java para ODBC.
Para começar:
- Instale e licencie o driver ODBC Salesforce.com na máquina em que o servidor JDBC-ODBC Bridge está instalado.
Antes de poder usar o Driver ODBC do Salesforce.com para conectar seu aplicativo ao Salesforce.com, você precisa configurar uma fonte de dados ODBC. Uma fonte de dados ODBC armazena os detalhes da conexão para o banco de dados de destino (por exemplo, Salesforce.com) e o driver ODBC necessário para se conectar a ele (por exemplo, o driver ODBC Salesforce.com).
- Inicie o Administrador ODBC. Para fazer isso, na caixa de diálogo Executar do Windows, digite:
%windir%\syswow64\odbcad32.exe
- No Administrador de ODBC, escolha a guia DSN do sistema e, em seguida, escolha Adicionar.
- Na caixa de diálogo Criar nova fonte de dados, escolha Easysoft Salesforce SOQL ODBC Driver e, em seguida, escolha Concluir.
- Preencha a caixa de diálogo Configuração de DSN do Driver ODBC Easysoft Salesforce SOQL:
Configuração Valor DSN Salesforce.com Nome de usuário O nome do seu usuário do Salesforce.com. Por exemplo, meuusuário@meudomínio.com. Senha A senha do seu usuário do Salesforce.com. Token O token de segurança para seu usuário do Salesforce.com, se necessário.
Para saber se você precisa fornecer um token de segurança, escolha o botão Testar. Se a tentativa de conexão falhar com um erro que contémLOGIN_MUST_USE_SECURITY_TOKEN
, você precisa fornecer um.
O Salesforce.com envia por email o token de segurança para o endereço de email associado à sua conta de usuário do Salesforce.com. Se você não recebeu um token de segurança, poderá regenerá-lo. A Salesforce.com enviará o novo token de segurança por e-mail para você. Para regenerar seu token de segurança, faça login no Salesforce.com e escolha Configuração no menu do usuário. Procure por "token de segurança" na caixa Busca rápida. Clique em Redefinir token de segurança na página Redefinir token de segurança. Ao receber o token em seu cliente de e-mail, copie-o e cole-o no campo Token.
- Use o botão Testar para verificar se você consegue se conectar com sucesso ao Salesforce.com.
- Baixe a ponte Easysoft JDBC-ODBC. (Registro obrigatório.)
- Instale e licencie o Easysoft JDBC-ODBC Bridge na máquina em que você criou a fonte de dados.
Para obter instruções de instalação, consulte a documentação do Easysoft JDBC-ODBC Bridge.
Usando o Salesforce SOQL de Java
- Copie EJOB.jar para uma máquina onde você tenha um Java Development Kit instalado.
Se o Easysoft JDBC-ODBC Bridge já estiver instalado nesta máquina, ignore esta etapa.
O EJOB.jar é instalado no seguinte local na máquina em que você instala o Easysoft JDBC-ODBC Bridge:
<easysoft_install>\Jars
O local padrão paraé <drive>:\Program Files (x86)\Easysoft Limited\Easysoft JDBC-ODBC Bridge
.
- Adicione este código Java a um arquivo chamado ConnectToSalesforce.java:
import java.sql.*; import java.util.Properties; public class ConnectToSalesforce { public static void main(String[] args) { // Replace the <mydsn> value with your 32-bit Salesforce DSN. // If the JDBC-ODBC Bridge Server (JOB) is not located on the same machine as // ejob.jar replace localhost with the remote host name or IP address. // The :logonuser attribute value is a Windows user on the machine where // the JOB Server is running. String connectionUrl = "jdbc:easysoft://localhost/<mydsn>" + ":logonuser=mywindowsuser:logonpassword=mywindowspassword"; Driver driver = null; DriverPropertyInfo props[] = null; Connection con = null; Statement stmt = null; ResultSet rs = null; try { // Register the Easysoft JDBC-ODBC Bridge client. Class.forName("easysoft.sql.jobDriver"); driver = DriverManager.getDriver(connectionUrl); con = DriverManager.getConnection(connectionUrl); stmt = con.createStatement(); // You need to edit this query rs = stmt.executeQuery("SELECT Account.Name, (SELECT Contact.LastName FROM Account.Contacts) FROM Account"); System.out.print("Name LastName" + "\n"); while (rs.next()) { String n = rs.getString("Name"); String l = rs.getString("LastName"); System.out.print(n + " " + l + "\n"); } rs.close(); rs = null; stmt.close(); stmt = null; con.close(); // Return to connection pool con = null; // Make sure we do not close it twice } // Handle any errors that may have occurred. catch (Exception e) { e.printStackTrace(); } finally { if (rs != null) try { rs.close(); } catch(Exception e) {} if (con != null) try { con.close(); } catch(Exception e) {} } } }
- Em uma janela de comando, inclua EJOB.jar no caminho de classe Java. Por exemplo:
set CLASSPATH="%CLASSPATH%;C:\Program Files (x86)\Easysoft Limited\Easysoft JDBC-ODBC Bridge\Jars\EJOB.jar"
cd
para o diretório em que ConnectToSalesforce.java está localizado e compile e execute o arquivo Java. Por exemplo:"C:\Program Files\Java\jdk1.8.0_144\bin\javac.exe" ConnectToSalesforce.java java ConnectToSalesforce Name LastName GenePoint Ltd Frank United Oil & Gas, UK James United Oil & Gas, Singapore D'Cruz United Oil & Gas, Singapore Ripley