Parent Directory
|
Revision Log
your log message
1 package MySOAP; 2 3 use constant DEBUG =>0; 4 5 use Apache::Request; 6 use Apache::Constants qw(:common); 7 use Apache::File (); 8 use SOAP::Transport::HTTP; 9 10 my $server = SOAP::Transport::HTTP::Apache 11 -> dispatch_to('RQP'); 12 13 sub handler { 14 my $save = $_[0]; 15 my $r = Apache::Request->instance($_[0]); 16 17 my $header = $r->as_string; 18 my $args = $r->args; 19 my $content = $r->content; 20 my $body=""; 21 # this will read everything, but then it won't be available for SOAP 22 my $r2 = Apache::Request->instance($save) if DEBUG; 23 $r2->read($body, $r2->header_in('Content-length')) if DEBUG; 24 # 25 local(*DEBUGLOG); 26 open DEBUGLOG, ">>/home/gage/debug_info.txt" || die "can't open debug file"; 27 28 29 30 31 ################ 32 # Handle a wsdl rquest 33 ################ 34 my %args_hash = $r->args; 35 if (exists $args_hash{wsdl}) { 36 $r->print( $wsdl); 37 print DEBUGLOG "----------start-------------\n"; 38 print DEBUGLOG "handle wsdl request\n"; 39 print DEBUGLOG "\n-header =\n $header\n" ; 40 41 42 my $wsdl = `cat /home/gage/rqp.wsdl`; 43 $r->content_type('application/wsdl+xml'); 44 $r->send_http_header; 45 $r->print( $wsdl); 46 47 48 print DEBUGLOG "---end--- \n"; 49 close(DEBUGLOG); 50 return OK; 51 ############### 52 # Handle SOAP request 53 ############### 54 } else { 55 print DEBUGLOG "----------start-------------\n"; 56 print DEBUGLOG "handle soap request\n"; 57 print DEBUGLOG "\n-header =\n $header\n" ; #if DEBUG; 58 print DEBUGLOG "args= $args\n"; 59 print DEBUGLOG "\nbody= $body\n" if DEBUG; 60 61 $server->handler(@_); 62 63 print DEBUGLOG "---end--- \n"; 64 close(DEBUGLOG); 65 66 } 67 68 69 70 71 }; 72 73 1;
| aubreyja at gmail dot com | ViewVC Help |
| Powered by ViewVC 1.0.9 |