Show TOC Anfang des Inhaltsbereichs

Vorgehensweisen Java-Programm zu Erstellung einer Server-Verbindung  Dokument im Navigationsbaum lokalisieren

Verwendung

Im nächsten Schritt können Sie ein Java-Programm schreiben, dass eine Server-Verbindung zu einem SAP Gateway erstellt.

Vorgehensweise

Um dies zu tun, müssen Sie:

·        die Klasse JCO.Server erweitern

·        einen Konstruktor implementieren, der die notwendigen Parameter an die JCO.Server Superklasse übergibt wie Gateway Host, Gateway Service, Programm-ID und Repository.

·        die protected void-Methode handleRequest(JCO.Function function) überschreiben und das coding implementieren, dass ausgeführt wird wenn der Aufruf eingeht.

·        verschiedene Instanzen für Ihre JCO.Server Implementierung anlegen und mit start() starten.

Beispiel

Syntax

public class MyFirstServer extends JCO.Server {

    /**

     *  Create an instance of my own server

     *  @param gwhost (gateway host)

     *  @param gwserv (gateway service number)

     *  @param progid (program id)

     *  @param repository (repository used by the server to lookup the

       definitions of an inc)

     */

    public MyFirstServer(String gwhost, String gwserv,

                         String progid, IRepository repository) {

               super(gwhost,gwserv,progid,repository);

    }

 

    /**

     *  Overrides the default method.

     */

    protected void handleRequest(JCO.Function function) {

        JCO.ParameterList input  = function.getImportParameterList();

        JCO.ParameterList output = function.getExportParameterList();

        JCO.ParameterList tables = function.getTableParameterList();

       

        System.out.println("handleRequest(" + function.getName() + ")");

        if (function.getName().equals("STFC_CONNECTION")) {

            System.out.println(">>> request STFC_CONNECTION: " + input.getString("REQUTEXT"));

            output.setValue(input.getString("REQUTEXT"),"ECHOTEXT");

            output.setValue("This is a response from MyFirstServer","RESPTEXT");

        }

    }

}

 

public class FirstExample {

    static MyFirstServer serverConnections[] = new MyFirstServer[3];

    /**

     *  Start the server

     */

    public static void startServers()  {

      JCO.addClientPool("POOL",  3, "000", "user" ,"password" , "EN",

                                     "abap_system" ,"00");

       IRepository repository = JCO.createRepository("REP", "POOL");

       for(int i = 0; I < serverConnections.length; i++) {

           // Server listens for incoming requests from system 1

           // (Change gateway host, service, and program ID according to your

              needs)

           serverConnections [i] = new MyFirstServer

                             ("gwhost",  //gateway host, often the same as host

                              "sapgw00", //gateway service, generally sapgw+<SYSNR>

                              "JCOSERVER01", // corresponds to program ID defined in SM59

                              repository);

           serverConnections [i].start();

    }

    public static void stopServers()  {

       for(int i = 0; I < serverConnections.length; i++) {

           serverConnections [i].stop();

    }

    public static void main(String[] args)    {

              startServers() ;

    }

}

Weitere Informationen

Eine Beschreibung der Unicode-Anbindung finden Sie unter:

·        Server-Verbindung zu Unicode-Backend-System

 

 

Ende des Inhaltsbereichs