Samir, Thank you much. I missed that. thanks
Simon On Fri, Sep 18, 2009 at 3:34 PM, Samir Mulder <[email protected]>wrote: > Simon, > > you need to call: > > $transport->open(); > > before making any calls to the server. That opens the socket to the server. > > The error 'supplied argument is not a valid stream resource' means 'not a > valid open socket'. > > And after you're done with your server calls, call: > > $transport->close(); > > to close the socket and free up the file descriptor. > > Thanks. > > Paul > > > On Sep 18, 2009, at 3:25 PM, Simon Chu wrote: > > This is my entire program: (transport is not null, and no exception >> thrown there...) >> >> it threw exception at the last line: >> >> $socket = new TSocket("thriftpuzzle.facebook.com", 9030); >> if (($transport = new TBufferedTransport($socket)) == null) { >> printf("Transport is null"); >> } >> $protocol = new TBinaryProtocol($transport); >> >> //$ssclient = new SimonSaysClient("thriftpuzzle.facebook.com"); >> $ssclient = new SimonSaysClient($protocol); >> $ssclient->registerClient("[email protected]"); // replace >> emailaddr with your email addr >> >> Output: >> PHP Warning: stream_set_timeout(): supplied argument is not a valid >> stream resource in >> /home/simon/PROG/PHP/UTILITY/trunk/facebook/thrift/transport/TSocket.php on >> line 281 >> PHP Warning: stream_get_meta_data(): supplied argument is not a valid >> stream resource in >> /home/simon/PROG/PHP/UTILITY/trunk/facebook/thrift/transport/TSocket.php on >> line 287 >> Failed registeringTSocket: Could not write 55 bytes >> thriftpuzzle.facebook.com:9030 >> >> On Fri, Sep 18, 2009 at 3:03 PM, Samir Mulder <[email protected]> >> wrote: >> Are you sure you successfully opened the transport? >> >> If possible, can you post the sample client prog you have so far? >> >> Samir >> >> >> On Sep 18, 2009, at 2:54 PM, Simon Chu wrote: >> >> PHP Warning: stream_set_timeout(): supplied argument is not a valid >> stream >> resource in >> /home/simon/PROG/PHP/UTILITY/trunk/facebook/thrift/transport/TSocket.php >> on >> line 281 >> PHP Warning: stream_get_meta_data(): supplied argument is not a valid >> stream resource in >> /home/simon/PROG/PHP/UTILITY/trunk/facebook/thrift/transport/TSocket.php >> on >> line 287 >> Failed registeringTSocket: >> >> Exception msg >> Could not write 55 bytes http://thriftpuzzle.facebook.com:9030 >> >> Sorry if this is a repeat, not sure if my last post went through. >> >> Simon >> >> On Fri, Sep 18, 2009 at 11:43 AM, bill fumerola <[email protected]> wrote: >> >> On Fri, Sep 18, 2009 at 11:07:10AM -0700, Simon Chu wrote: >> i) is the C, cpp interface similar, please give example >> >> c++ interface is as identical as a php and c++ implementation can be. >> >> shared_ptr<TSocket> socket (new TSocket(host, port)); >> shared_ptr<TTransport> transport (new TBufferedTransport(socket); >> shared_ptr<TProtocol> protocol (new TBinaryProtocol(transport)); >> shared_ptr<myClient> client (new myClient(protocol); >> >> try { >> transport->open(); >> int ret = client->someCallReturnsInt(); >> } catch (exception &e) { >> cout << "exception: " << e.what() << endl; >> } >> >> ii) I got further. Where is TException defined? What is the method to >> print out exception message? >> >> TException inherits from Exception. >> >> >> >> http://svn.apache.org/repos/asf/incubator/thrift/trunk/lib/php/src/Thrift.php >> >> http://us2.php.net/manual/en/language.exceptions.php >> >> e.g. >> try { >> $transport->open(); >> } catch (Exception $e) { >> echo $e->getMessage(); >> } >> >> >> -- bill >> >> >> >> >
