Newsgroup: it.comp.lang.delphi
Titolo: [D7E] Anomalia su utilizzo web services scritto in ms-c#

Un saluto a tutti.
Sono2 gg che perdo la testa su una cosa molto strana.
Ho un sito web (iis6-winsdows server 2003 - .net 1.1 + .net 2.0) che
espone un web service scritto in c# (
vs.net
 2003).
Questo web service espone una interfaccia veramente ridicola..Un
semplice metodo:
bool WriteData(string Request; bool SvaeRequest)
Request è una stringa che contiene un pacchetto xml.
Il web service deve estrarre i valori di alcuni tag e scriverli in
alcuni campi di una tabella di un db (il cui motore gira sullo stesso
server..) e in un ulteriore cambo blob ci schiaffa tutta la richiesta
xml.
Orbene, 'sta cosa non va. Il web service si inkazza xche dice che il
parametro "request" e' nullo.
Ho fatto un sacco di prove, coinvolgendo un sistemista, 2 sviluppatori
che usano .net da anni in modo veramente massiccio, ma non siamo
venuti a capo di niente.
I tentativi sono stati veramente tanti, ma quelli significativi sono
2:
1) eseguendo la applicazione delphi sul web server, dando come
indirizzo IP quello interno e non quello pubblico, ottengo lo stesso
errore
Questa taglia ovviamente tutti i casini legati a firewall, switch di
rete, autenticazioni, permessi etc, visto che ho fatto il test usando
un utente amministratore della macchina.
(Va detto che la macchina è in una farm di fastweb...)
2) Utilizzando il web service via webservice studio usando un xml
generato dalla applicazione delphi e salvato su file, funziona.
per chi non lo sapesse webservice studio è un client basato su .net
che permette di testare un web service.
Ora non so cosa pensare...
a) Il file generato PRIMA di inviare la richiesta al web service viene
digerito se uso webservice studio; lo stesso xml viene aperto senza
errori sia da ie7 che firefox.
Quindi, delphi genera la richiesta correttamente.
2) L'hardware di rete coinvolto nella trasmissione non ha alcuna
responsabilita'.
In caso contrario eseguendo il programma delphi direttamente sul
server (usando un utente con i diritti di amministratore della
macchina..) non avrei dovuto avere problemi.
3) Idem dicasi per le impostazioni di iis, del relativo pool di
applicazioni e di eventuali problemi legati a diritti.
Ovviamente i test con le 2 diverse app sono stati eseguiti con le
stesse impostazioni.
Qualche idea?
Pax vobiscum.
A.

 Sono2 gg che perdo la testa su una cosa molto strana.
Ecco dov'eri finito ... niente fuga romantica ...
<cut>
Seriamente: non conosco le problematiche di cui parli, quindi non so perchè
ti rispondo (a parte per un veloce saluto).
L'unica idea che mi sono fatto - ripeto, senza aver minimamente mai
affrontato simili tecnologie - e' che il tuo programma invia i pacchetti con
l'encode sbagliato, non riconosciuto dal WebServer (che però contraddice la
questione "se salvato su file tutto funziona").
Prova a "leggere" il flusso Http tra il tuo programma ed il WebService con
qualche programma tipo Fiddler (
http://www.fiddlertool.com/fiddler/
) per
vedere se davvero i dati inviati corrispondono a quanto salvato su file.
Per non rendere del tutto inutile questo post, ti lascio qualche link di
discussioni che sembrano affrontare problemi simili ai tuoi: chissà che tu
non possa trovare qualche spunto illuminante per risolvere positivamente la
questione:
* How to pass string array to C# web service?
http://groups.google.it/group/borland.public.delphi.webservices.soap/browse_frm/thread/3faf337d9277028c/07a9249967071503?lnk=st&q=C%23+DELPHI+STRING+WEBSERVICE&rnum=3&hl=it#07a9249967071503
* help calling C# web service
http://groups.google.it/group/borland.public.delphi.webservices.soap/browse_frm/thread/68536ec57ba633c4/305ac3b0ca30c2a0?lnk=st&q=C%23+DELPHI+STRING+WEBSERVICE&rnum=17&hl=it#305ac3b0ca30c2a0
* Consuming C# Web Services with Delphi 7 Professional
http://www.drbob42.com/examines/examin45.htm
http://www.drbob42.com/examines/examin46.htm
Ciao
-- 
ACSH
[TurboDelphi]
Chi fa da se', fatica il doppio

scusate x il 2 post quasi uguali. non so voi ma oggi ho avuto problemi
con google groups...
A.

E' finalmente nato qualcosa tra voi due?
Brrrrrr... :-)

 Brrrrrr... :-)
eheheh... :-)
-- 
Morde

 ti rispondo (a parte per un veloce saluto).
Grazie x il saluto.
Cmq il problema è risolto, ma resta un  mistero sul quale x ora non ho
tempo di investigare.
Il problema era la classe proxy per il webservice.
Pax vobiscum.
A.

 o similare...
Però... ti accontenti di poco, eh!? :-)
Ciao,
   Marco.
-- 
MARCO BREVEGLIERI
  (
http://www.marco.breveglieri.name
)

> Però... ti accontenti di poco, eh!? :-)
rotfl!
A.