Datenzugriff mit JCA-Connector (Java EE Connector Architecture)

Wenn Sie mit einer JCA-kompatiblen Anwendung (Java™ EE Connector Architecture) in WebSphere Application Server auf Daten zugreifen möchten, müssen Sie Ressourcenadapter und Verbindungsfactorys konfigurieren und verwenden.

Informationen zu diesem Vorgang

Eine Anwendungskomponente verwendet eine Verbindungsfactory, um auf eine Verbindungsinstanz zuzugreifen, die die Komponente dann verwendet, um eine Verbindung zum zugrunde liegenden EIS (Enterprise Information System) herzustellen. Beispiele für Verbindungen sind Datenbankverbindungen, JMS-Verbindungen (Java Message Service) und SAP-R/3-Verbindungen.

Wie in der JCA-Spezifikation (Java EE Connector Architecture) aufgeführt, benötigt jedes unternehmensweite Informationssystem (EIS, Enterprise Information System) einen Ressourcenadapter und eine Verbindungsfactory. Auf diese Verbindungsfactory wird dann über das folgende Programmierungsmodell zugegriffen. Wenn Sie die RAD-Tools (Rational Application Development) verwenden, wird der größte Teil der folgenden Implementierungsdeskriptoren und des folgenden Implementierungscodes für Sie generiert. Dieses Beispiel zeigt die manuelle Methode des Zugriffs auf eine EIS-Ressource.

Vorgehensweise

  1. Deklarieren Sie in den Implementierungsdeskriptoren Ihrer Anwendungskomponente, wie in diesem Beispiel beschrieben, eine Ressourcenreferenz auf die Verbindungsfactory:
    <resource-ref>
       <description>description</description>
       <res-ref-name>eis/myConnection</res-ref-name>
       <res-type>javax.resource.cci.ConnectionFactory</res-type>
       <res-auth>Application</res-auth>
    </resource-ref>
  2. Konfigurieren Sie während der Implementierung in der Konsole jeden Ressourcenadapter und die zugeordneten Verbindungsfactorys. Weitere Informationen finden Sie in den Artikeln zum Installieren eines Ressourcenadapters und zum Konfigurieren einer Verbindungsfactory.
  3. Suchen Sie während der Laufzeit mit einer JNDI-Lookup-Operation (Java Naming and Directory Interface) in Ihrer Anwendungskomponente die entsprechende Verbindungsfactory für den EIS-Ressourcenadapter.
  4. Rufen Sie von der Verbindungsfactory die Verbindung zum EIS ab.
  5. Erstellen Sie aus dem Verbindungsobjekt eine Interaktion.
  6. Erstellen Sie ein Objekt InteractionSpec. Konfigurieren Sie die Funktion, die über das Objekt InteractionSpec ausgeführt werden soll.
  7. Erstellen Sie eine Datensatzinstanz für die von der Funktion verwendeten Ein- und Ausgabedaten.
  8. Führen Sie die Funktion über das Objekt Interaction aus.
  9. Verarbeiten Sie die Satzdaten der Funktion.
  10. Schließen Sie die Verbindung.

Beispiel

Das folgende Codefragment zeigt, wie eine Anwendungskomponente eine Interaktion erstellen und auf dem EIS ausführen kann:

javax.resource.cci.ConnectionFactory connectionFactory = null;
javax.resource.cci.Connection connection = null;
javax.resource.cci.Interaction interaction = null;
javax.resource.cci.InteractionSpec interactionSpec = null;
javax.resource.cci.Record inRec = null;
javax.resource.cci.Record outRec = null;

try  {    
// Suchen der Anwendungskomponente und Ausführen einer JNDI-Lookup-Operation
   javax.naming.InitialContext ctx = new javax.naming.InitialContext();
   connectionFactory = (javax.resource.cci.ConnectionFactory)
ctx.lookup("java:comp/env/eis/meineVerbindung");

/ Erstellen einer Verbindung
   connection = connectionFactory.getConnection();

// Interaction und InteractionSpec erstellen
   interaction = connection.createInteraction();
   interactionSpec = new InteractionSpec();
   interactionSpec.setFunctionName("GET");

// Eingabeeintrag erstellen
   inRec = new javax.resource.cci.Record();

// Eine Interaktion ausführen
   interaction.execute(interactionSpec, inRec, outRec);

// Die Ausgabe verarbeiten...

} catch (Exception e)  {
   // Behandlung von Ausnahmen
}
finally {
    if (interaction != null) {
         try  {    
              interaction.close();
         }
         catch (Exception e) {/* Ausnahme ignorieren */}
   }
   if (connection != null) {
        try  {    
             connection.close();
        }
        catch (Exception e) {/* Ausnahme ignorieren */}
   }
}

Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tdat_impjcaapi
Dateiname:tdat_impjcaapi.html