Newsgroup: it.comp.www.php
Titolo: "Colloquiare" tra due server

Problemino che mi sta facendo scervellare....
Primo server: WinXP, Apache 2.x + PHP 5.2.x
Secondo server: CentoOS, Oracle Report Server 10.x con il servizio di 
reportistica richiamabile tramite un 
"
http://oracle_report_server:7777/reports/rwservlet/nome_del_report
"
Entrambi in rete locale installati per test.
In pratica, in alcuni casi, dovrei lanciare dal primo server dei report 
che scrivono un file pdf in una determinata directory, prendere quel 
file e mandarlo in download/visualizzarlo all'utente.
Ho provato con header("Location: $URL") e il report viene effetivamente 
eseguito ma lo script sembra interrompersi, quindi non posso proporre il 
download del file.
In pratica, lo script oltre a lanciare il report, dovrebbe attendere che 
questo termini, che sia stato effettivamente generato il file pdf e, in 
caso affermativo, lo proponga per il download: ï¿œ la prima parte del 
problema che mi fa impazzire.... soluzione/consigli?
Grazie!
-- 
 >> Torakiki

 "
http://oracle_report_server:7777/reports/rwservlet/nome_del_report
"
Provato ad infilarci uno sleep()?
Ma non si fa prima a creare direttamente il file .pdf attraverso una 
libreria tipo Fpdf direttamente dal primo server pescando i dati dal 
secondo? In genere bastano 5 minuti per creare un report.

file e mandarlo in download/visualizzarlo all'utente.
In AJAX o anche a colpi di reload(), salvi lo stato in sessione:
	stato = 1:	lanci il report
	stato = 2:	verifichi se il report e' finito
			(può non essere semplicissimo)
	stato = 3:	vai di download
Quando sei in stato = 2, fai vedere una animazione ("please wait") e
controlli se il report è pronto. Potresti dover modificare lo script
sul primo server, se fa qualcosa come
	Open PDF as "pippo.pdf"
	Write PDF
	Close PDF
dovresti modificarlo in
	Open PDF as "pippo.tmp"
	Write PDF
	Close PDF
	Rename PDF as "pippo.pdf"
altrimenti per un certo periodo vedi un file pippo.pdf che sembra un
file pdf buono e invece è ancora incompleto.
Sul come mandare un PDF in output, sono due Header() e un readfile()
e i primi due header li ho scritti in un post di mezz'ora fa :-)
Leonardo
-- 
Surstangas via akcipitr', la ceval' fojnumas nur:
Jen vigla damo en brakum', kaj vi pensas pri forkur'?
Do li turnis sin, kaj turnis sin, kaj ekdormis sen singard';
Kaj lin apudis je l' vekigx, soldatoj kaj Barnard'.

 file e mandarlo in download/visualizzarlo all'utente.
Non conosco Oracle Report Server ma sono pronto a scommettere che fa giï¿œ
quello che vuoi tu senza bisogno di scomodare PHP. Hai provato a leggere
la documentazione, in particolare per quanto riguarda i parametri?
	Y.

 la documentazione, in particolare per quanto riguarda i parametri?
In parte lo fa!
Ad esempio, se la destinazione ï¿œ "mail", invia giï¿œ il file allegato (si 
puï¿œ scegliere il tipo di formato in output, testo, pdf, html etc. etc.) 
all'indirizzo specificato, mentre se ï¿œ "file" scrive un file nel path 
specificato.
Il problema ï¿œ che non ï¿œ il server principale, ma il secondario e viene 
interrogato su richiesta dell'utente dal primario. Avevamo proposto "te 
lo fai arrivare via mail e poi ci fai quello che ti pare", ma per 
l'utonto ï¿œ troppo dispendioso in termini di tempo, meglio farglielo 
apparire direttamente dentro il browser :-(
-- 
 >> Torakiki

 secondo? In genere bastano 5 minuti per creare un report.
Perchï¿œ Oracle Report ï¿œ un buon strumento di sviluppo e sicuramente i 
tempi di sviluppo sono inferiori (ad esempio in caso di modifica o 
aggiunta di "pezzi) rispetto al generare direttamente in PDF in PHP, 
visto anche la "complessitï¿œ" di alcuni di questi report.
-- 
 >> Torakiki

[cut]
'Azzarola :-)
Mo' ci butto un occhio!
-- 
 >> Torakiki

 apparire direttamente dentro il browser
Richiesta assolutamente condivisibile, ma sei sicuro che Oracle Reports
non faccia giï¿œ questo di suo?
Se non lo fa, fai uno script PHP che faccia internamente la chiamata a
Oracle Reports via HTTP e poi spari il risultato al browser leggendo il
file e sputando i bytes sullo standard output.
	Y.

 file e sputando i bytes sullo standard output.
...che era la cosa che appunto chiedevo :-)
(se non altro la prima parte, chiamata al server + attesa che questo 
avesse finito)
-- 
 >> Torakiki

 avesse finito)
Non avevo capito...
Usa cURL.
Ciao
	Y.