Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Debagovanje COM+-a

[es] :: .NET :: Debagovanje COM+-a

[ Pregleda: 1819 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

rebelian
Vlada Gosic
OtaCo Inzinjering
sd

Član broj: 68762
Poruke: 11
212.200.27.*



Profil

icon Debagovanje COM+-a11.11.2005. u 08:58 - pre 224 meseci
Pozdrav svima i pomagajte!

Trenutno se bavim izradom svoje prve COM+ aplikacije tako da problem mozda i nije ozbiljan, ali utoliko bolje.

Pokusavam da u komponenti koja je difinisana atributima:

Code:
JustInTimeActivation(True), _
Synchronization(SynchronizationOption.Required), _
Transaction(TransactionOption.Required)


uradim debagovanje jednog poduzeg metoda koji je markiran atributom:

Code:
<AutoComplete()>


U tom metodu radim poredjenje 2 dataseta i za sva polja koja "nisu ista" po jednim SqlCommandObjectom koji poziva Stored Proceduru promenu snimim u bazi. Problem nije postojao dok nisam ubacio SqlCommandObjecte koji umesto Stored Procedure imaju CommandType.Text (jer je query u njima isuvise jednostavan da bih ga izmestio u SP, ali ako bude moralo...). Error handling unutar te komponente prenosi exception dalje:

Code:
Catch ex As Exception
            Throw New Exception(ex.Message, ex)


error koji "po nekad" dobijem (onda kada attachujem debugger) je:

Distributed transaction completed. Either enlist this session in new transaction or the NULL transaction.

A do brake pointa ni ne stigne.
Kada ne attachujem debugger na proces metod "prodje" ali imam neke logicke greske u bazi koje bih "voleo" da otkonim. U setovanju Component Servisa za MyComputer sam Timeout za DTC Transakciju stavio na 3 pa onda i na 5 min ali nije pomoglo.

Ako neko ima bilo kakvu ideju molim vas pomagajte!
Unapred zahvalan,
Vlada
me.Kill()
 
Odgovor na temu

rebelian
Vlada Gosic
OtaCo Inzinjering
sd

Član broj: 68762
Poruke: 11
212.200.27.*



Profil

icon Re: Debagovanje COM+-a28.11.2005. u 16:02 - pre 223 meseci
eh skoro prvi topic i nista. verovatno zato jer je problem bio izuzetno specifican. uspeo sam nekako da otklonim to, i ako neko ikada bude dobio isti error neka DOOOBRO proveri svoje stored procedure ili bilo sta drugo sto u bazi radi u transakciji, jer je moj konkretan problem bio u mom error handleru u stored proceduri gde za jedan slucaj @ERROR-a nisam radio ni commit ni rollback :(

sada imam jedan drugi problem mnogo konkretniji i "opstiji", a tice se instanciranja COM+ serverske aplikacije u drugoj COM+ serverskoj aplikaciji, ali sam trenutno toliko smoren da nemam snage ni pitanje da srocim kako treba. ako ima zainteresovanih za "noob" problematiku u COM+ neka pogleda ovaj topik u narednih dan-dva kada budem nasao vremena da to postavim, jer rokovi se pribilizavaju, a klijentu je bitniji prezentacioni deo (iliti sminka) od same funkcionalnosti, security-ja itd.

hvala svima koji su pogledali u topik!

to be continued...

me.Kill()
 
Odgovor na temu

rebelian
Vlada Gosic
OtaCo Inzinjering
sd

Član broj: 68762
Poruke: 11
212.200.27.*



Profil

icon Re: Debagovanje COM+-a29.11.2005. u 08:16 - pre 223 meseci
dakle, moj trenutni problem je:

Imam 2 COM+ applikacije (a voleo bih da nemam ni jednu :) koje su obe obelezene assembly atributima:

Code:
<Assembly: ApplicationActivation(ActivationOption.Server)>


U njima postoji vec odredjen broj klasa od kojih neke nasledjuju ServicedComponent, a neke ne. Jedno od pitanja je i da li je ovo ok, jer u tim klasama nemam potrebu ni za jednim od COM+ servisa pa ih zato nisam ni koristio.
Trenutni problem je da kada u jednom metodu "prve" COM+ applikacije pozovem konstruktor druge dobijem exception:

Cannot load type {pa celo ime druge app. i verzija itd.}
cini mi se da je Remoting exception.
(trenutno radim dalje tako sto sam uklonio nasledjivanja ServicedComponent da bih mogao joh nesto da uradim, pa ne mogu da paste-ujem ceo ex, ali eventualno hocu)

Inace kada gresku invoke-ujem van exception handlera dobijem IO.FileNotFound error pri pucanju windows client applikacije. Mozda je problem sto u konstruktorima obeju klasa imam neki custom kod koji instancira SharedPropertyManager i Logger klasu koja ne nasledjuje ServicedComponent a definisana je u 2. applikaciji.
I pored toga prva linija konstruktora je:

Code:
MyBase.New()


Bilo kakva idej je vishe nego dobrodosla. Nadam se da sam uspeo bar malo da objasnim o cemu se radi, jer ni meni nista nije jasno.

Unapred hvala !!!
me.Kill()
 
Odgovor na temu

[es] :: .NET :: Debagovanje COM+-a

[ Pregleda: 1819 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.