You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Jan Brauer (JIRA)" <ji...@apache.org> on 2015/02/10 09:32:35 UTC

[jira] [Created] (THRIFT-2994) Node.js TJSONProtocol cannot be used for object serialization.

Jan Brauer created THRIFT-2994:
----------------------------------

             Summary: Node.js TJSONProtocol cannot be used for object serialization.
                 Key: THRIFT-2994
                 URL: https://issues.apache.org/jira/browse/THRIFT-2994
             Project: Thrift
          Issue Type: Bug
          Components: Node.js - Library
            Reporter: Jan Brauer


Consider the following code using the Thrift example types.
{code:title=serialize.js|borderStyle=solid}
var thrift = require('thrift');
var test_types = require('gen-nodejs/ThriftTest_types.js');

var bonk = new test_types.Bonk({message: "message", type: 6})
var t_out = new thrift.TBufferedTransport();
var p_out = new thrift.TJSONProtocol(t_out);
bonk.write(p_out);
var out
t_out.flush(function (b) { out = b;});
console.log(out)
{code}

My expectation would be for {{out}} to contain the serialized {{Bonk}} struct.
But due to [TJSONProtocol|https://github.com/apache/thrift/blob/master/lib/nodejs/lib/thrift/protocol.js#L1287] only writing to the underlying transport in {{writeMessageEnd}} the above code does not work.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)