Für z/OS-Plattformen

Optimierte lokale Adapter für die Herstellung einer Verbindung zu einer Anwendung in einem externen Adressraum über eine Liberty-Anwendung verwenden

Verwenden Sie die WOLA-APIs (WebSphere Optimized Local Adapters), um eine Verbindung zu einer Anwendung in einem externen Adressraum über eine Anwendung herzustellen, die im Liberty-Server implementiert ist.

Vorbereitende Schritte

Registrieren Sie den externen Adressraum bei der WOLA-Gruppe. Weitere Informationen finden Sie unter Externen Adressraum bei einem lokalen Liberty-Server mit optimierten lokalen Adaptern registrieren.

Konfigurieren Sie die Anwendung im externen Adressraum als Server-Task für optimierte lokale Adapter, indem Sie die API "Receive Request Any", "Receive Request Specific" oder "Host Service" aufrufen. Weitere Informationen finden Sie unter APIs für optimierte lokale Adapter in Liberty für z/OS.

Vorgehensweise

  1. Aktivieren Sie die Liberty-Anwendung, um entweder über Ressourceninjektion oder über JNDI-Suche auf die Verbindungsfactory zuzugreifen.

    Das folgende Beispiel verwendet eine EJB-Anwendung (Enterprise JavaBeans). Sie können denselben Code in einer Webanwendung oder in einem Servlet verwenden.

    • Verwenden Sie für die Ressourceninjektion die Annotation @Resource, um die Verbindungsfactory, die Sie in der Datei server.xml definiert haben, zu referenzieren. Im folgenden Beispiel wird die Verbindungsfactory eis/ola referenziert:
      @Resource(lookup = "eis/ola",
                          authenticationType = Resource.AuthenticationType.APPLICATION,
                          shareable = false)
          private ConnectionFactory cf;
    • Erstellen Sie für die JNDI-Suche eine Ressourcenreferenz in Ihrer Anwendung, die Sie dann in der Enterprise-Bean suchen.
      1. Erstellen Sie eine Ressourcenreferenz in der Datei META-INF/ibm-ejb-jar-bnd.xml für die Anwendung. Hierbei stimmt binding-name mit dem JNDI-Namen der Verbindungsfactory in der Datei server.xml überein.
        <session name="HSCBC016Bean">
            <resource-ref name="eis/ola" binding-name="eis/ola"/>
        </session>
      2. Erstellen Sie in der EJB-Implementierung ein Verbindungsfactory-Objekt, das die Ressourcenreferenz sucht, die Sie definiert haben. Setzen Sie an den Anfang des Namens der Ressourcenreferenz das Präfix java:comp/env/ wie im folgenden Beispiel gezeigt:
        Context ctx = new InitialContext();
        ConnectionFactory cf = ctx.lookup("java:comp/env/eis/ola");
  2. Erstellen Sie eine Verbindungsspezifikation, indem Sie ein Objekt "ConnectionSpecImpl" erstellen. Verwenden Sie eine der nachfolgenden genannten Methoden, um den Registernamen des externen Addressraums anzugeben, zu dem Sie eine Verbindung herstellen möchten:
    • Fügen Sie den Registernamen als Attribut der Verbindungsfactory hinzu.
    • Rufen Sie die Methode "ConnectionSpecImpl" mit dem Registernamen "setRegisterName" auf.
    Das folgende Beispiel erstellt das Objekt "ConnectionSpecImpl" und gibt den Registernamen MyRES1 an:
    ConnectionSpecImpl csi = new ConnectionSpecImpl();
    csi.setRegisterName ("MyRES1");
  3. Stellen Sie eine Verbindung zur Verbindungsfactory her, wie im folgenden Beispiel gezeigt:
    Connection con = cf.getConnection(csi);

Ergebnisse

Die Liberty-Anwendung wird mit einem externen Adressraum verbunden und kann Services aufrufen, die im externen Adressraum gehostet werden. Weitere Informationen finden Sie im Artikel APIs für optimierte lokale Adapter in Liberty für den Aufruf von Services in einem externen Adressraum verwenden.

Symbol das den Typ des Artikels anzeigt. Taskartikel

Dateiname: twlp_dat_connect2wlpapp.html