Editando
Criação de Conectores
Ir para navegação
Ir para pesquisar
Aviso:
Você não está conectado. Seu endereço IP será visível publicamente se você fizer alguma edição. Se você
fizer login
ou
criar uma conta
, suas edições serão atribuídas ao seu nome de usuário, juntamente com outros benefícios.
Verificação contra spam.
Não
preencha isto!
Conectores são pontos de extensão que podem ser adicionados a um processo para estender os recursos do Bonita Runtime. Eles são um pedaço de código com entradas definidas como '''Expressões''' e saídas definidas como '''Operações'''. ==Instalando as ferramentas== Deve-se instalar o Java JDK e Maven na sua máquina.<br> Maven 3.3+ requer JDK 1.7 ou mais recente.<br> Abra o terminal Linux (Debian) e execute as seguintes linhas de código: ===Instalando OpenJDK=== <code class="terminal-line"> sudo apt update </code> <code class="terminal-line"> sudo apt install default-jdk </code> Verifique a instalação do OpendJDK com: <code>java -version</code> A saída deve ser algo do tipo: <br> <code class="language-output"> openjdk version "11.0.7" 2020-04-14<br> OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)<br> OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing) </code> ===Maven=== <code class="terminal-line"> wget https://www-us.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz -P /tmp </code> <code class="terminal-line"> sudo tar xf /tmp/apache-maven-*.tar.gz -C /opt </code> <code class="terminal-line"> sudo ln -s /opt/apache-maven-3.6.3 /opt/maven </code> <code class="terminal-line"> sudo nano /etc/profile.d/maven.sh </code> <code> export JAVA_HOME=/usr/lib/jvm/default-java <br>export M2_HOME=/opt/maven <br>export MAVEN_HOME=/opt/maven <br>export PATH=${M2_HOME}/bin:${PATH} </code> <code class="terminal-line"> sudo chmod +x /etc/profile.d/maven.sh </code> <code class="terminal-line"> source /etc/profile.d/maven.sh </code> <code class="terminal-line"> mvn -version </code> <code class="terminal-line"> Maven home: /opt/maven Java version: 11.0.7, vendor: Ubuntu, runtime: /usr/lib/jvm/java-11-openjdk-amd64<br> Default locale: en_US, platform encoding: UTF-8<br> OS name: "linux", version: "5.4.0-26-generic", arch: "amd64", family: "unix" </code> ===Fazendo o build=== <code class="terminal-line"> mvn archetype:generate \ -DarchetypeGroupId=org.bonitasoft.archetypes \ -DarchetypeArtifactId=bonita-rest-api-extension-archetype </code> Ao executar esse comando, é iniciado o processo de criar a REST API, especificando atributos conforme as perguntas aparecem no terminal. Siga as instruções para cada campo: *GroupId e package: digitar org.bonitasoft.archetypes *ArtifactId: bonita-rest-api-extension-(qualquer coisa aqui) Não tenho certeza se precisa desse texto em específico ou se pode ser quaisquer palavras separadas por - *Version: 1.0-SNAPSHOT Altera o número da versão como preferir *BonitaVersion: É a technical Id da versão, verificar qual a technicalId da sua versão abrindo o bonita studio, indo em Help e clicando em sobre *Linguagem: Groovy, java ou kotlin, kotlin está dando erro no momento(05/2022) *PathTemplate: qualquer coisa desde que seja separado por hífen, exemplo: miguel-thiago-tomas *HttpVerb: a função desejada da REST API, a lista das funções aparece no terminal *DisplayName: qualquer nome *ApiName: nome da sua REST API ==Exemplo== O exemplo a seguir segue os passos presentes nesse link: https://documentation.bonitasoft.com/bonita/2022.1/process/connector-archetype-tutorial Neste exemplo, vamos criar um conector para se comunicar com a API de Star Wars. Ele receberá um nome de personagem de Star Wars e retornará detalhes sobre esse personagem. Veremos então como implantar esse conector nos pacotes do Github para instalá-lo como uma extensão no Bonita Studio de qualquer lugar. O primeiro passo é gerar o projeto maven usando o arquétipo: <code class="terminal-line"> mvn archetype:generate \ -DarchetypeGroupId=org.bonitasoft.archetypes \ -DarchetypeArtifactId=bonita-connector-archetype </code> Com essas informações: *groupId: com.company.connector *artifactId: connector-starwars *version: 1.0.0 *package: com.company.connector *bonitaVersion: [Technichal Bonita id] (ex: 7.13.0) *className: ConnectorStarWars *language: groovy *wrapper: true Adicione as seguintes propriedades e dependências às existentes no pom.xml:<br/> <code> <properties> <retrofit.version>2.9.0</retrofit.version> <logging-interceptor.version>3.11.0</logging-interceptor.version> <converter-jackson.version>2.4.0</converter-jackson.version> <mockwebserver.version>3.14.8</mockwebserver.version> </properties> <dependencies> <dependency> <groupId>com.squareup.retrofit2</groupId> <artifactId>retrofit</artifactId> <version>${retrofit.version}</version> </dependency> <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>logging-interceptor</artifactId> <version>${logging-interceptor.version}</version> </dependency> <dependency> <groupId>com.squareup.retrofit2</groupId> <artifactId>converter-jackson</artifactId> <version>${converter-jackson.version}</version> <exclusions> <exclusion> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>mockwebserver</artifactId> <version>${mockwebserver.version}</version> <scope>test</scope> </dependency> </dependencies> </code> ===Definindo input do conector=== As entradas do conector são definidas na definição do conector. Abra o arquivo src/main/resourcesources-filteredrces/connector-starwars.def Primeiro vamos criar duas entradas para o conector: *Um nome de entrada, que conterá o nome de um personagem de Star Wars *Um URL de entrada, que conterá o URL do servidor de API (portanto, se o URL do servidor de API mudar no futuro, o serviço ainda poderá ser usado). Remova a entrada padrão da definição e inclua as duas entradas a seguir:<br/> <code> <input mandatory="true" name="name" type="java.lang.String"/><br/> <input mandatory="true" name="url" type="java.lang.String" defaultValue="http://swapi.dev/"/> </code> Então vamos criar uma página e dois widgets para essas entradas. Páginas e widgets são usados pelo Bonita Studio para criar uma interface de usuário a partir da definição do conector. Substitua a página padrão pela seguinte:<br/> <code> <page id="starWarsPage"> <!-- A widget has a type (Text, combo box ...), an id and an input name. - The name must reference an existing input - The id is used in the property file to reference the widget --> <widget xsi:type="definition:Text" id="nameWidget" inputName="name"/> <widget xsi:type="definition:Text" id="urlWidget" inputName="url"/> </page> </code><br/> Para cada página e widget, um nome e uma descrição devem ser incluídos no arquivo de propriedades, caso contrário o Studio não poderá exibir o elemento. Abra o arquivo src/main/resources-filtered/connector-starwars.properties e substitua o conteúdo da página e widgets padrão pelo seguinte:<br/> <code> starWarsPage.pageTitle=Star Wars connector - configuration page<br/> starWarsPage.pageDescription=Indicate a Star Wars character name, and the service base URl if required.<br/> nameWidget.label=Character name<br/> nameWidget.description=The name of the character to retrieve<br/> urlWidget.label=URL<br/> urlWidget.description=The service base url<br/> </code> ===Criar o serviço Retrofit e o modelo===
Resumo da edição:
Por favor, note que todas as suas contribuições em EAPn podem ser editadas, alteradas ou removidas por outros contribuidores. Se você não deseja que o seu texto seja inexoravelmente editado, não o envie.
Você está, ao mesmo tempo, a garantir-nos que isto é algo escrito por si, ou algo copiado de alguma fonte de textos em domínio público ou similarmente de teor livre (veja
EAPn - Escritório de Automação de Processos de Negócio:Direitos de autor
para detalhes).
NÃO ENVIE TRABALHO PROTEGIDO POR DIREITOS DE AUTOR SEM A DEVIDA PERMISSÃO!
Cancelar
Ajuda de edição
(abre numa nova janela)
Menu de navegação
Ferramentas pessoais
Não autenticado(a)
Discussão
Contribuições
Entrar
Espaços nominais
Página
Discussão
português do Brasil
Visualizações
Ler
Editar
Ver histórico
Mais
Pesquisa
Navegação
Página principal
Mudanças recentes
Página aleatória
Ajuda do MediaWiki
Ferramentas
Páginas afluentes
Mudanças relacionadas
Páginas especiais
Informações da página