JMS-Verbindungsfactorys einrichten

Vorgehensweise

  1. Navigieren Sie zu Ressourcen > JMS > JMS-Provider.
  2. Hinweis: An dieser Stelle sollte der entsprechende Bereich ausgewählt werden, in dem die JMS-Ressourcen definiert werden sollen.
  3. Wählen Sie den Link Standard-Messaging-Provider aus.
  4. Wählen Sie im Abschnitt Weitere Eigenschaften den Link Verbindungsfactorys aus.
  5. Klicken Sie auf Neu und setzen Sie die folgenden Felder:

    Name : CuramQueueConnectionFactory

    JNDI-Name : jms/CuramQueueConnectionFactory

    Beschreibung : Die Factory für alle Verbindungen zu Anwendungswarteschlangen.

    Busname : CuramBus

    Authentifizierungsalias für XA-Wiederherstellung : Gleicher Wert wie für die Datenquelle jdbc/curamdb (z.B. <SERVERNAME> /dbadmin)

    Alias für Konfigurationszuordnung : DefaultPrinicipalMapping

    Container-managed authentication alias : Gleicher Wert wie für den Authentifizierungsalias für die XA-Wiederherstellung.

    Belassen Sie alle anderen Werte als Standardwerte und klicken Sie auf OK, damit die Änderungen Anwendung finden.

  6. Klicken Sie auf Neu und setzen Sie die folgenden Felder:

    Name : CuramTopicConnectionFactory

    JNDI-Name : jms/CuramTopicConnectionFactory

    Beschreibung : Die Factory für alle Verbindungen zu Anwendungswarteschlangen.

    Busname : CuramBus

    Authentifizierungsalias für XA-Wiederherstellung : Gleicher Wert wie für die Datenquelle jdbc/curamdb (z.B. <SERVERNAME> /dbadmin)

    Alias für Konfigurationszuordnung : DefaultPrinicipalMapping

    Containergesteuerter Authentifizierungsalias : Gleicher Wert wie für die Datenquelle jdbc/curamdb (z.B. <SERVERNAME> /dbadmin)

    Belassen Sie alle anderen Werte als Standardwerte und klicken Sie auf OK, damit die Änderungen Anwendung finden.

  7. Speichern Sie die Änderungen in der Masterkonfiguration wie unter Masterkonfiguration speichern beschrieben.

Ergebnisse

Anmerkung: Mit den obigen manuellen Konfigurationsschritten ist es nicht möglich, die Sicherheit für die Warteschlange und die Topic-Verbindungsfactorys ordnungsgemäß zu konfigurieren. Für diesen Teil der Konfiguration müssen Sie das Tool wsadmin verwenden. Befolgen Sie dazu diese Schritte:
  1. Geben Sie die Einträge für die Warteschlange und die Topic-Verbindungsfactory in der Datei resources.xml für die Konfiguration von WebSphere Application Server ein. Diese Datei befindet sich in der Dateisystemhierarchie %WAS_HOME%\profiles\<profile_name>\config. Ihr Ort ist von Ihren Namenskonventionen und dem Bereich abhängig, den Sie für Ihre JMS-Ressourcen definiert haben. Beispielsweise würde sich die Datei bei einem Knotenebenenbereich mit dem Profilnamen AppSrv01, dem Zellennamen MyNodeCell und dem Knotennamen MyNode an folgendem Ort befinden: C:\WebSphere\profiles\AppSrv01\config\cells\MyNodeCell\nodes\MyNode\resources.xml. In dieser Datei müssen Sie die <factories>-Entitäten für CuramQueueConnectionFactory und CuramTopicConnectionFactory suchen und die ID für jede von ihnen vermerken, die mit J2CConnectionFactory_ beginnt und von einem numerischen Wert gefolgt wird, z.B. 1264085551611).
  2. Rufen Sie das WebSphere-Script wsadmin auf. In diesen Beispielen ist die Sprache Jacl, so dass das -lang jacl-Argument möglicherweise mit Berechtigungsnachweisen für Anmeldung o.ä., je nach Ihrer lokalen Konfiguration, angegeben werden muss.
  3. In wsadmin rufen Sie die folgenden Befehle auf, wieder mit den angenommen Definitionen auf Knotenebene, dem Zellennamen MyNodeCell und dem Knotennamen MyNode. Die Ressourcen-IDs werden in Ihrer Umgebung andere sein.
    1. $AdminConfig getid /Node:MyNode
    2. $AdminTask showSIBJMSConnectionFactory CuramQueueConnectionFactory(cells/MyNodeCell/nodes/MyNode|resources.xml#J2CConnectionFactory_1264085551611)

      An dieser Stelle sollten Sie verifizieren, dass 'authDataAlias' nicht gesetzt ist (z.B. authDataAlias=), sonst bekommen Sie Probleme, wie folgendes Beispiel für eine wsadmin-Ausgabe zeigt:

      {password=, logMissingTransactionContext=false,
      readAhead=Default, providerEndpoints=,
      shareDurableSubscriptions=InCluster,
      targetTransportChain=, authDataAlias=, userName=,
      targetSignificance=Preferred,
      shareDataSourceWithCMP=false,
      nonPersistentMapping=ExpressNonPersistent,
      persistentMapping=ReliablePersistent, clientID=,
      jndiName=jms/CuramQueueConnectionFactory,
      manageCachedHandles=false,
      consumerDoesNotModifyPayloadAfterGet=false,
      category=, targetType=BusMember, busName=CuramBus,
      description=None,
      xaRecoveryAuthAlias=crouch/databaseAlias,
      temporaryTopicNamePrefix=, remoteProtocol=,
      producerDoesNotModifyPayloadAfterSet=false,
      connectionProximity=Bus, target=,
      temporaryQueueNamePrefix=,
      name=CuramQueueConnectionFactory}
    3. $AdminTask modifySIBJMSConnectionFactory CuramQueueConnectionFactory(cells/MyNodeCell/nodes/MyNode|resources.xml#J2CConnectionFactory_1264085551611) {-authDataAlias crouch/databaseAlias}
    4. $AdminConfig save
    5. Sie können sich die Ressource noch einmal anzeigen lassen, um die Änderung zu überprüfen.
    6. Wiederholen Sie diese Schritte für CuramTopicConnectionFactory.
    7. Starten Sie den Anwendungsserver erneut.