Traditionelle Plattform

Empfangene Nachricht ist keine Instanz einer Textnachricht: < Klasse oder Schnittstelle > < vollständig qualifizierter Name der Klasse >

Fehler

Der JMS-Konsument in IBM Sterling® Order Management System erwartet eine Textnachricht im Nachrichtentext, und wenn er auf einen anderen Nachrichtentyp wie ByteMessage, ObjectMessage, MapMessage oder StreamMessage stößt, gibt er einen Fehler im folgenden Format aus:
Empfangene Nachricht ist keine Instanz einer Textnachricht: < Klasse oder Schnittstelle > < vollständig qualifizierter Name der Klasse >
IBM Sterling Order Management System löst beispielsweise den folgenden Fehler aus:
Empfangene Nachricht ist keine Instanz einer Textnachricht: Schnittstelle javax.jms.BytesMessage
wenn ein ByteMessage in der JMS-Warteschlange gefunden wird.

Lösung

Wenn der JMS-Konsument das zuvor beschriebene Problem feststellt, werden die folgenden Informationen zusammen mit der Fehlernachricht ausgegeben:
  • Nachrichten-ID-Gibt jede von einem Provider gesendete Nachricht eindeutig an.
  • Zielobjekt für diese Nachricht-Der Warteschlangenname.
  • Nachrichtenzeitmarke-Dies ist die Zeit, zu der eine zu sendende Nachricht an einen Provider übergeben wird.
  • Korrelations-ID für die Nachricht-Dies ist entweder die providerspezifische Nachrichten-ID oder der anwendungsspezifische Zeichenfolgewert.
  • DeliveryMode für diese Nachricht angegeben-Der Wert kann PERSISTENT (Wert = 1) oder NON_PERSISTENT (Wert = 2) sein. Dies sind Aufzählungstypen, ganzzahlige Werte werden angezeigt.
  • Die ID des Nachrichtentyps, die vom Client beim Senden der Nachricht bereitgestellt wird.

Sie können diese Details bewerten oder sortieren, die Quelle der Nachricht ermitteln und Anpassungen im entsprechenden Nachrichtensendertool vornehmen, um eine TextMessage im Nachrichtenhauptteil zu senden.