Отправка запроса на отправку СМС via SOAP to MTC

  • Автор темы morpheus
  • Дата начала
M

morpheus

Доброго всем

Столкнулся с полным отсутствием понимания что делать дальше
Задача отправка смс-сообщений
протокол - API ( описание Посмотреть вложение API_SMS2ALL.doc )
платформа (у нас) windows 2003 x64, Lotus 8.5.2 FP4

надо научиться отправлять сообщения "их" серверу
при том что помимо логина и пароля присутствует также файл-сертификата.


для начальна, банально, как создать соединение?
 
N

nvyush

Вроде бы смс-ки уже пошли: link removed.
Или сменили провайдера? Да, и что за файл сертификата, используется HTTPS?
 
M

morpheus

nvy
так и есть, сменился провайдер

да, используеться https
 
N

nvyush

Тут есть подключение по HTTPS:
link removed
Только там "подавляется" недействительный сертификат, в Вашем случае правильнее будет сертификат зарегистрировать и проверять.
 
M

morpheus

что значаит зарегистрировать?
единственное что я могу с ним сделать,это иммпортировать в Интренет эксплореер
 
N

nvyush

Morpheus
Для начала можно попробовать без проверки действительности сертификата, как в коде по ссылке. Как прикрутить туда проверку сертификата, я не знаю, нужно гуглить. Или спросить в чисто явовоском форуме.
 
M

morpheus

без сертификата не конектиться ( используя URLConnection urlConnection; )

java.io.IOException: Server returned HTTP response code: 500 for URL: https://.../MCampaignWs/CampaignsManagerWs.asmx
at com.ibm.net.ssl.www.protocol.http.ci.getInputStream(Unknown Source)
at com.ibm.net.ssl.www.protocol.https.t.getInputStream(Unknown Source)
at JavaAgent.doPost(JavaAgent.java:86)
at JavaAgent.NotesMain(JavaAgent.java:27)
at lotus.domino.AgentBase.runNotes(Unknown Source)
at lotus.domino.NotesThread.run(Unknown Source)
java.lang.NullPointerException
at JavaAgent.NotesMain(JavaAgent.java:32)
at lotus.domino.AgentBase.runNotes(Unknown Source)
at lotus.domino.NotesThread.run(Unknown Source)

а на строки
import com.sun.net.ssl.*;
import com.sun.*;
ругаеться что нету такого пакеджа, гд скачать так и не понял?!
 
N

nvyush

а на строки
import com.sun.net.ssl.*;
import com.sun.*;
ругаеться что нету такого пакеджа, гд скачать так и не понял?!
В примере по ссылке (в спойлере) импорт только следующих библиотек:
import java.io.*;
import java.net.*;
import javax.net.ssl.*;
 
N

nvyush

В NetBeans ввёл com.sun.net.ssl ... — автоподстановка показывает, что все классы и интерфейсы помечены как @Deprecated.
A program element annotated @Deprecated is one that programmers are discouraged from using, typically because it is dangerous, or because a better alternative exists. Compilers warn when a deprecated program element is used or overridden in non-deprecated code.
Похоже, javax.net.ssl.* пришёл на смену.
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 985
611
BIT
471
все классы com.sun являются "промежуточными", т.е их ф-ционал могут включить в послед. релизы жвм, как часть "страндартных" классов
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 985
611
BIT
471
по самоподписыанным сртификатам, есть особенности:
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 985
611
BIT
471
вот тута ещё:
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 985
611
BIT
471
подборка статей, касабельных темы (сертификатов, в частности):




первые две - общее пользование командой keytool
последняя - создание стора из сертификата (жвм д.б. версии 1.6)
 
M

morpheus

хух, подключился вроде как

Как зделал :
1. Создал хранилище сертификатов.
2. Импортировал новый сертификат в хранилище.
3. Заюзал это хранилище в агенте.



в итоге такая
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">функция</div></div><div class="sp-body"><div class="sp-content"><!--shcode--><pre><code class='java'>private URLConnection CertJava(String sKsrFile, String sKsrPass, String sUrl2Conn) {
try {
TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
KeyStore ksjks = KeyStore.getInstance("JKS");
ksjks.load(new FileInputStream(System.getProperty("java.home") + "/bin/" + sKsrFile), sKsrPass.toCharArray());
trustManagerFactory.init(ksjks);

TrustManager[] trustManagers = trustManagerFactory.getTrustManagers();
SSLContext sc = SSLContext.getInstance("SSL");
sc.init(null, trustManagers, null);
SSLSocketFactory socketFactory = sc.getSocketFactory();
URL url = new URL(sUrl2Conn);

URLConnection connection = url.openConnection();
((HttpsURLConnection) connection).setSSLSocketFactory(socketFactory);

return connection;
}
catch (Exception e) {
e.printStackTrace();
return null;
}
}[/CODE]
вот теперь проблема с самими SOAP сообщениями
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!