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.BytesMessagewenn 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.