Componente de Conectividade

Anterior
Próximo
Feedback
Imprimir

Componente de Conectividade

 

Os conteúdos abaixo são exemplos, porém as estruturas são reais e devem ser seguidas. Junto com as linhas e tags correspondentes referentes à funcionalidade, segue também a implementação a ser realizada.

 

Existem 2 dos 3 parâmetros passados que merecem Atenção:

IP: É o que trata o endereço do Agente em que vai se conectar, pode ser o IP local ou 172.0.0.1;

Port: É a porta de comunicação que deve ser estabelecida com o Agente. Deve ser a mesma setada no arquivo CONFIG.PROPERTIES na propriedade socketPort, que subirá o servidor socket. É uma porta TCP que deve estar liberada localmente no computador onde encontra-se instalado o Agente para permitir a comunicação e por padrão a sugestão é colocar na 9000.

 

Exemplo de Config.Properties utilizando socketPort:

xms=32m

xmx=64m

serverUrl=http://localhost:8080

token=1c0f6919-81e3-4b25-a41a-96fb9e2b0638

enterpriseId=NDDigital

sourceId=01

proxy=;;;;

socketPort=8081Os conteúdos abaixo são exemplos, porém as estruturas são reais e devem ser seguidas. Junto com as linhas e tags correspondentes referentes à funcionalidade, segue também a implementação a ser realizada.

 

Este é um exemplo do componente/método connect que invoca o socket em JAVA utilizado nos exemplos acima:

 

Envio:

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.io.OutputStream;

import java.io.OutputStreamWriter;

import java.net.Socket;

 

import javax.net.SocketFactory;

 

public class Principal {

 

       static Socket socket;

       static OutputStream os;

       static InputStream is;

       static OutputStreamWriter osw;

       static BufferedWriter bw;

       static InputStreamReader isr;

       static BufferedReader br;

 

       public static void connect(String ip, int port, String msg) {

             try {

                    SocketFactory sf = SocketFactory.getDefault();

                    socket = sf.createSocket(ip, port);

                    os = socket.getOutputStream();

                    is = socket.getInputStream();

             } catch (IOException e) {

                    System.out.println("ERROR - Não foi possível estabelecer conexão no IP:" + ip + " PORTA: " + port);

                    System.out.println(e);

             }

             sendProcess(ip, port, msg);

             getResultProcess();

       }

 

       public static void sendProcess(String ip, int port, String msg) {

             try {

                    osw = new OutputStreamWriter(os);

                    bw = new BufferedWriter(osw);

                    bw.write(new String(msg.getBytes(), "UTF-8"));

                    bw.flush();

                    socket.shutdownOutput();

             } catch (IOException e) {

                    System.out.println("ERROR - Ocorreu erro ao enviar resposta do servidor");

                    System.out.println(e);

             }

       }

 

       public static void getResultProcess() {

             try {

                    isr = new InputStreamReader(is);

                    br = new BufferedReader(isr);

                    StringBuffer message = new StringBuffer();

                    String linha;

                    while ((linha = br.readLine()) != null) {

                           message.append(linha.trim());

                           message.append(System.getProperty("line.separator"));

                    }

                    String[] fileNameContent = message.toString().split("_TCPMSG;");

                    System.out.println(fileNameContent[0]);

                    System.out.println(fileNameContent[1]);

             } catch (Exception e) {

                    System.out.println("ERROR - Ocorreu erro ao receber resposta do servidor.");

                    System.out.println(e);

             }

       }

}

 

 

 

Voltar