Hvordan sende flere linjer med informasjon til telnet / AS400 vert og lese resulterer skjermen i strukturert format i Java

stemmer
0

Jeg prøver å utvikle en Java-program som kan sende flere linjer med informasjon til en telnet / AS400 vert, så får den resulterende skjermen i et strukturert format. Et eksempel på dette kan være påloggingsinformasjon (brukernavn, pass, bibliotek, etc).

Med Telnet / AS400, når brukeren skal kobles til verten ved hjelp av ledeteksten, viser det flere linjer som inngangsverdier kan skrives inn på, og deretter sendes til verten. Som dette:

kommando

[Telnet

Vi ser av eksempelet at det er mulig å sende flere linjer med informasjon til telnet verten bruker Windows kommandolinje. Jeg ønsker å lage et Java-program som har samme funksjonalitet (sende kommandoer på flere linjer og lesing i skjermen i et strukturert format).

Jeg har prøvd å bruke Apache Telnet-klienten til å lese skjermen i å bruke Apache Commons IOUtils. Som dette:

import java.io.IOException;
import org.apache.commons.io.IOUtils;
import org.apache.commons.net.telnet.TelnetClient;
import examples.util.IOUtil;

 // This class requires the IOUtil support class!
public final class Telnet {

public static final void main(String[] args) {
    TelnetClient telnet;

    telnet = new TelnetClient();

    try {
        telnet.connect(hostname, 23);
    } catch (IOException e) {
        e.printStackTrace();
        System.exit(1);
    }

 //   IOUtils
    IOUtil.readWrite(telnet.getInputStream(), telnet.getOutputStream(), System.in, System.out);

    try {
        telnet.disconnect();
    } catch (IOException e) {
        e.printStackTrace();
        System.exit(1);
    }

    System.exit(0);
}

}

som resulterer i å lese et skjermbilde fra Input og deretter å vise den. Som dette

[2J [1;22H[1m[0m [1m             Sign On             [0m [2;47H System  . . . . . :   NLSI5D   [3;47H Subsystem . . . . :   QINTER     [4;47H Display . . . . . :   QPADEV000Q [6;16H User  . . . . . . . 

Fra dette punktet jeg kan ikke velge hvilken linje jeg sender informasjon tilbake på. Mer konkret, hvis jeg skriver i en hvilken som helst tekst og sende den tilbake gjennom konsollen, vil det synes det er for brukernavnfeltet. Jeg kan ikke oppgi noen annen linje eller felt.

Er det mulig å velge hvilket felt innspill linje du sender informasjon om bruk av Java?

Grunnen til at det må være i Java er slik at jeg kan legge det inn i en Android-applikasjon.

Publisert på 02/12/2019 klokken 23:57
kilden bruker
På andre språk...                            


1 svar

stemmer
0

Du er sannsynligvis kommer til å ønske å referere til TN5250J prosjektet

Protokollen du trenger er 5250 i løpet av telnet. 5250 er den skjermprotokoll som brukes av IBM i. Rett telnet mangler visse kontroll koder, nøkler og tjenester fra 5250. Du kan gjøre telnet arbeid for enkle skjermer, men de fleste vil ikke. VT-100 er en dårlig erstatning for 5250.

Svarte 03/12/2019 kl. 05:56
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more