"Comunicarea cu managerul de tranzacții subiacent a eșuat"

Un client al nostru a actualizat recent o aplicație web ASP.NET 1.1 la ASP.NET care utilizează procesarea tranzacțiilor COM + și a primit următoarea excepție în timp ce încearcă să proceseze o tranzacție:

Exception Type: System.Transactions.TransactionManagerCommunicationException
Message: Communication with the underlying transaction manager has failed.

Inner Exception Type: System.Runtime.InteropServices.COMException ErrorCode: -2147467259
Message: Error HRESULT E_FAIL has been returned from a call to a COM component.

Iată următoarele setări în Setările de securitate MSDTC:

-- Network DTC Access
-- Allow Inbound
-- Allow Outbound
-- Incoming Caller Authenication Required

O stație de lucru Windows XP SP3 încearcă să stabilească o conexiune la o mașină Windows Server 2003.

A mai experimentat cineva această eroare și a ști cum să o rezolviți.

8

5 răspunsuri

Va trebui să aveți activat accesul DTC în rețea atât pe stația dvs. de lucru XP, cât și pe mașina dvs. Windows 2003. De asemenea, dacă aplicația dvs. este publicată numai pe plan intern, puteți dezactiva autentificarea apelantului primit și setați-o la "fără autentificare".

14
adăugat
Cool ... Voi compara setările de pe server cu setările de pe stația mea de lucru.
adăugat autor Michael Kniskern, sursa
Vă mulțumim pentru răspuns. Pur și simplu a trebuit să schimb "Authenication Caller Incoming Required" la "No Authentication Required"
adăugat autor Michael Kniskern, sursa

Adăugați C: \ Windows \ msdtc.exe la excepțiile de tip firewall atât pe paravanul de protecție, cât și pe server. Am petrecut vremuri de maimuță în jurul deschiderii numerelor specifice de porturi și nu a avut nici un rezultat înainte de a face acest lucru.

9
adăugat
+1 M-ai scos dintr-o gaură neagră neproductivă de văi, mulțumesc
adăugat autor Ralph Lavelle, sursa
În Windows Server 2008 R2 Datacenter a fost la c: \ windows \ system32 \ msdtc.exe.
adăugat autor Rami A., sursa

1) Dezactivați autentificarea în afară de activarea accesului la rețea la serviciul de "coordonare a tranzacțiilor distribuite" (autentificarea reciprocă nu funcționează așa cum este afișat pe internet în mașinile xp sp3)

2) să permită accesul la rețea în mașinile client (web aplicaton) și server (serverul sql) pentru serviciul de "coordonare a tranzacțiilor distribuite".

3
adăugat

În cazul în care aveți nevoie de ajutor pentru găsirea setărilor MSDTC menționate în celelalte răspunsuri (cum am făcut eu), următorul link explică modul de configurare a MSDTC pe serverul 2003.

http://itknowledgeexchange.techtarget.com/ sql-server/how-to-configure dtc-la-ferestre-2003/

0
adăugat