Share via


Problembehandlung für COM+ CRM

Im Folgenden sind die häufigsten Probleme aufgeführt, die bei der Entwicklung und Verwendung von COM+ CRM auftreten:

  • Ereignisprotokollmeldungen. Wenn für die CRM-Serveranwendung ein schwerwiegender interner Fehler auftritt, wird sie failfast (beendet den CRM-Serveranwendungsprozess) und eine Nachricht in das Windows-Ereignisprotokoll schreiben. Wenn Probleme auftreten, lesen Sie das Ereignisprotokoll.

  • Ausnahmen vom CRM-Kompensator. Die CRM-Infrastruktur erstellt den CRM-Kompensator und übergibt ihn die Benachrichtigungen zum Transaktionsergebnis und die vom CRM-Worker geschriebenen Protokolldatensätze. Wenn der CRM-Kompensator einen Fehler zurückgibt oder eine Ausnahme auslöst, wird er von der CRM-Infrastruktur abgefangen und verursacht ein Failfast. Eine Meldung im Ereignisprotokoll gibt an, dass eine Ausnahme vom CRM-Kompensator empfangen wurde. Es ist möglich, zu erzwingen, dass diese Ausnahmen ignoriert werden. (Siehe COM+ CRM-Registrierungseinstellungen.) Ausnahmen vom CRM-Kompensator bedeuten wahrscheinlich ein Problem in der spezifischen CRM-Kompensatorkomponente und nicht in der CRM-Infrastruktur selbst.

  • Wiederherstellungsablaufverfolgung. Die Wiederherstellungsablaufverfolgung kann sehr nützlich sein, um Probleme während der Wiederherstellung zu ermitteln. Informationen zum Aktivieren der Wiederherstellungsablaufverfolgung finden Sie unter COM+ CRM-Registrierungseinstellungen.

  • Versuchen Sie, mit nicht aktiviertem CRM auszuführen. Es reicht nicht aus, die KOMPONENTEN CRM Worker und CRM-Kompensator einfach in der COM+-Serveranwendung zu platzieren. Die Unterstützung für CRMs muss speziell für die spezifische COM+-Serveranwendung aktiviert werden, indem auf den Eigenschaftenseiten der COM+-Anwendung auf der Registerkarte Erweitert die Option Kompensierende Ressourcen-Manager aktivieren verwendet wird. (Weitere Informationen finden Sie unter Konfigurieren von COM+-CRM-Komponenten .) Wenn versucht wird, ein CRM in einer Serveranwendung zu verwenden, für die CRM nicht aktiviert ist, wird ein Fehlercode an den CRM-Worker zurückgegeben.

  • Es wird versucht, CRMs in Clientprozessen auszuführen. CRMs werden nicht in Clientprozessen ausgeführt. Sie müssen in einem COM+-Serveranwendungsprozess ausgeführt werden. CRM-Komponenten können in einem Bibliothekspaket für die Verwendung durch mehrere COM+-Serveranwendungen platziert werden, sind aber nicht für die Verwendung in Clientprozessen verfügbar. Beim Versuch, die CRM-Schnittstellen in einem Clientprozess zu verwenden, wird ein Fehlercode an den CRM-Worker zurückgegeben.

  • Wiederherstellung wird ausgeführt. Die Wiederherstellung beginnt, wenn eine CRM-Serveranwendung gestartet wird. Die Wiederherstellung erfolgt jedoch im Hintergrund während der normalen Verarbeitung der CRM-Serveranwendung. Der CRM-Worker kann vor Abschluss der Wiederherstellung erstellt werden. CRMs können erst in einem CRM-Serveranwendungsprozess verwendet werden, wenn die Wiederherstellung erfolgreich abgeschlossen wurde. In diesem Fall erhält der CRM-Worker den Fehlercode "Wiederherstellung in Bearbeitung", wenn er versucht, den CRM-Kompensator zu registrieren. Der CRM-Worker sollte abfragen oder anderweitig verzögern, bis die Wiederherstellung abgeschlossen ist. Die Wiederherstellungszeit bezieht sich auf einen bestimmten CRM-Typ, und dies sollte beim Entwerfen des CRM berücksichtigt werden. Wiederherstellungen mit langer Dauer sind nicht wünschenswert.

  • Sicherheit für die CRM-Protokolldatei. Wenn der Zugriff auf die CRM-Protokolldatei verweigert wird, finden Sie unter Überlegungen zur Sicherheit von COM+ CRM eine Beschreibung der Einstellung der Sicherheit für die CRM-Protokolldatei.

  • Im Zweifelsfall transaktionen. In seltenen Fällen kann eine DTC-Transaktion in den Zweifelszustand versetzt werden. Das heißt, der DTC kann das Transaktionsergebnis nicht bestimmen. In diesen Fällen verwaltet das CRM während der Wiederherstellung die Protokolldatensätze für diese Transaktion in der CRM-Protokolldatei. Wenn die zweifelsfreie Transaktion vom DTC aufgelöst wurde, wird die Transaktion durch eine weitere CRM-Wiederherstellung abgeschlossen.

  • Erstellung und Freigabe von CRM-Kompensator. Wenn ein CRM-Kompensator zum ersten Mal von einem CRM-Worker registriert wird, wird er von der CRM-Infrastruktur erstellt und abgefragt, um zu bestimmen, welche der CRM-Kompensatorschnittstellen er unterstützt. Es wird dann sofort freigegeben. CRM-Kompensatoren müssen die Möglichkeit unterstützen, ohne zwischengeschaltete Methodenaufrufe erstellt und freigegeben zu werden. Wenn der CRM-Kompensator nicht ordnungsgemäß erstellt werden kann, möglicherweise aufgrund einer falschen COM-Registrierung, oder wenn er mindestens eine der richtigen CRM-Kompensatorschnittstellen nicht unterstützt, wird ein Fehlercode an den CRM-Worker zurückgegeben.

COM+ kompensierende Resource Manager Konzepte