Каталог решений - JКоннектор (jc1c), Java

JКоннектор (jc1c), Java

JКоннектор (jc1c), Java

В наличии

Приветствую коллеги!
Данная библиотека призвана упростить и настроить быстрое и простое взаимодействия 1С и вашего скрипта на Java, далее по тексту просто — jar.

Категория:

Описание

Общий принцип работы

Взаимодействие 1С и jar — это клиент-серверное взаимодействие по протоколу HTTP. В качестве клиента выступает 1С, а в качестве сервера выступает jar.

На стороне 1С вы храните двоичные данные вашего jar, и в момент икс(когда вам необходимо взаимодействие с Java), используя библиотека JКоннектор, передаете эти двоичные данные, библиотека все делает и вы начинаете обращаться к методам своего jar.

ПОНЯТИЯ:

(которые используются в описании и которые необходимо понимать 😉 )

  • jc1c — это библиотека используя которую необходимо писать ваш скрипт на Java(jar), о том как это сделать читайте на GitHub.
  • JКоннектор — это библиотека которую необходимо использовать на стороне 1С, для взаимодействия c вашим скриптом написанным на Java.

ВАЖНО.

Библиотека JКоннектор — это просто удобная обертка для выполнения HTTP запросов к вашему jar, можете делать это и сами, но не стоит…

Написание jar

О том, как писать свой скрипт на Java для того, чтобы было успешное взаимодействие 1С и Java, читайте на Github, там я описал принцип работы работы и взаимодействия со стороны Java.

Ссылка, для ознакомления с проектом — https://github.com/kaliuzhnyi/jc1c

А вот и простой пример как использовать этот проект на стороне Java — https://github.com/kaliuzhnyi/jc1c-examples

Компоненты:

Это компоненты написанные при использовании jc1c для работы через JКоннектор.

Данные компоненты также можно использовать как полноценный и рабочий пример, для написания своих скриптов.

Данные компоненты включены в поставку. Также в поставке присутствуют внешние обработки с примерами использования и работы с данными компонентами.

  • jc1c-qr — компонента на основе jc1c для создания и чтения qr кодов;
  • jc1c-barcode — компонента на основе jc1c для создания и чтения штрихкодов;
  • jc1c-pdf — компонента на основе jc1c для работы с PDF документами, компонента позволяет: преобразовать PDF документа в изображения(одна страница — одно изображение), извлечь текст из PDF документа, преобразовать PDF документ в HTML документ;

Описание использования методов JКоннектор, на стороне 1С

Порядок ваших действий:

  1. Следуя инструкции создаете и скомпилируете jar файл с вашей программой;
  2. Добавляете в 1С двоичные данные этого jar файла, например в макет.
  3. В 1С вызываем метод из библиотеки JКоннектор, и инициализируйте коннектор, вызовете необходимый метод, и остановите работу коннектора.

Пример использования (генерация QR-кода):

// Инициализируем сам объект коннектора	
ОбъектКоннектора = JКоннектор.Инициализировать(Обработки.JКоннекторQR.ПолучитьМакет("jc1c_qr"));

// Обратите внимание на этот метод. В нем мы указываем путь к 
// SDK которая должна быть установлена на сервере.
// Чтобы не указывать этот параметр и не вызывать этот метод, на сервере необходимо настроить Java,
// это очень просто. Просто загуглите "настроить JAVA_HOME", вот например первый попавший сайт
// который вам в этом поможет - https://coderoad.ru/52511778/%D0%9A%D0%B0%D0%BA-%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%B8%D1%82%D1%8C-OpenJDK-11-%D0%BD%D0%B0-Windows
JКоннектор.УстановитьSDK(ОбъектКоннектора, "C:\Java\jdk-17\bin\java.exe");

// Запускаем коннектор, в этот момент происходит создание файла и т.д.
JКоннектор.Запустить(ОбъектКоннектора);
Если Не ОбъектКоннектора.РезультатЗапуска.Успешно Тогда
    ВызватьИсключение "JКоннектор: не удалось запустить.";	
КонецЕсли;

// Вызываем нужный нам метод, который мы описали в нашем jar.
ДанныеДляКодированияQR = "https://github.com/kaliuzhnyi/jc1c";
ФорматQR= "png";
ШиринаQR= 500;	
РезультатМетода = JКоннектор.ВызватьМетод(ОбъектКоннектора, "create", ДанныеДляКодированияQR, ФорматQR, ШиринаQR);

// Если не удалось выполнить метод то прерываемся и если мы прерываемся
// значит дальше ничего не будем делать с коннектором,
// а если ничего не будем делать с коннектором значит ОБЯЗАТЕЛЬНО останавливаем коннектор. 	
Если РезультатМетода = Неопределено Тогда
    JКоннектор.Остановить(ОбъектКоннектора);
    ВызватьИсключение "JКоннектор: не удалось выполнить метод.";	
КонецЕсли;

// Полачаем и выводим изображение нашего QR-кода
ИзображениеQR = ПоместитьВоВременноеХранилище(Base64Значение(РезультатМетода));

// ОБЯЗАТЕЛЬНО! Останавливаем работу коннектора,
// З.Ы. Останавливать работу коннектора необязательно после каждого вызова вашего метода в jar.
// Например - тут вы можете еще вызвать еще 100 раз тот же метода или другие методы, если вы их описывали в jar.
// И вот только потом завершать работу коннектора.
//
// Если вы не хотите сами останавливать коннектор, тогда при инициализации можно задать параметр,
// например 60 секунд и тогда коннектор сам выключится при бездействии 60 и более секунду,
// таким образом, чтобы не вызывать тут метод - JКоннектор.Остановить(), необходимо в самом начале делать
// инициализацию коннектора следующим образам:
// ОбъектКоннектора = JКоннектор.Инициализировать(Обработки.JКоннекторQR.ПолучитьМакет("jc1c_qr"),,,, 60)
//
JКоннектор.Остановить(ОбъектКоннектора);

 

Видео

Для большего понимания того как это все работает настоятельно рекомендую посмотреть несколько коротких видео-уроков.

  1. JКоннектор(jc1c), создание компоненты на стороне JAVA
has been added to your cart:
Оформление заказа