Проблемы интеграции клиентского Java-приложения с Salesforce (wsc API)

Я должен был подключиться к salesforce через свое Java-приложение и следовал инструкциям, представленным salesforce.com. Я столкнулся с парой проблем в этом процессе, и любая помощь мне бы очень помогла.

  • Проблема 1: во- первых, я не могу построить wsc.jar после клонирования проекта из ГИТ. Проект выдает ошибку компиляции при импорте в myeclipse когда версия компилятора 1.6. Не было ошибок, если я изменил версию компилятора на 1.7.

  • Проблема 2: вместо создания файла JAR, я скачал wsc-20.jar с онлайн-ресурса (ссылка предоставлена ​​в комментариях ниже) и сгенерирована enterprise.jar из WSDL, предоставленной мне разработчиком Salesforce. я включен wsc-23.jar а также enterprise.jar в моем проекте buildpath и реализовал код, предоставленный salesforce (ссылка предоставлена ​​ниже). Когда я запускаю код, возникает исключение времени выполнения, как показано ниже, и запрос не был отправлен test.salesforce.com, Журнал исключений и ошибок приведен ниже.

После определенного расследования я обнаружил, что библиотеки API и код Java работают отлично, когда версия Java JRE переключена на 1.7. Но почему-то это не работает в среде 1.6, и я получаю ошибку ниже, и я не могу обновить версию Java своего проекта до 1.7.

Исключение во время выполнения:

com.sforce.ws.ConnectionException: не удалось отправить запрос на https://test.salesforce.com/services/Soap/c/36.0/ адресу com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:129) на com.sforce.soap.enterprise.EnterpriseConnection.login(EnterpriseConnection.java:1) на com.sforce.soap.enterprise.EnterpriseConnection.(EnterpriseConnection.java:1) на com.nsf.ecap.web.business.proposal.SalesforceLoginTest.main(SalesforceLoginTest.java:27) Вызывается: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: сбой при построении пути PKIX: sun.security.provider.certpath.SunCertPathBuilderException: невозможно найти исключение: исключение: к запрошенной цели на com.sun.net.ssl.internal.ssl.Alerts.getSSLException(Alerts.java:174) на com.sun.net.ssl.internal.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1611) в com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:187) на com.sun.net.ssl.internal.ssl.Handshaker.fatalSE(Handshaker.java:181) на com.sun.NET.ssl.internal.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1035) в [1]com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:124) в com.sun.net.ssl.internal.ssl.Handshaker.processLoop(Handshaker.java:516) на com.sun.net.ssl.internal.ssl.Handshaker.process_record(Handshaker.java:454)

Любые предложения будут очень полезны.

1 ответ

После дальнейшей отладки и анализа журналов weblogic он был идентифицирован как проблема, связанная с SSL. Проблема была решена, когда для свойства 'BEA Hostname Verifier' установлено значение false на сервере Weblogic.

Ниже приведены ссылки для получения дополнительной информации об устранении неполадок SSL и настройке свойства верификатора имени хоста в weblogic.

https://blogs.oracle.com/weblogicserver/ssl-troubleshooting-and-debugging

http://docs.oracle.com/cd/E72987_01/wls/WLACH/taskhelp/security/VerifyHostNameVerification.html

Другие вопросы по тегам