Or, in Java, use the "private-members" option to force yourself to use the accessors.
On Mon, May 10, 2010 at 2:36 PM, Mark Slee <[email protected]> wrote: > Is this Java or C++? > > > > ReverseRequest reverseRequest; > > > reverseRequest.text = "test"; > > > reverseRequest.int_value = 50; > > Try adding (C++): > reverseRequest.__isset.text = true; > reverseRequest.__isset.int_value = true; > > Or (Java): > reverseRequest.setText("test"); > reverseRequest.setIntValue(50); > > > If fields are explicitly marked optional, you need to flag the isset bits > to indicate that they are considered present. > > Cheers, > mcslee > > -----Original Message----- > From: Noam Wolf [mailto:[email protected]] > Sent: Monday, May 10, 2010 7:28 AM > To: [email protected] > Subject: Re: about optinal field > > Can you provide more code of how you're actually passing the response back > to the client? > > On Mon, May 10, 2010 at 10:24 AM, Bryan Duxbury <[email protected]> wrote: > > > What language are your clients and servers? > > > > On Mon, May 10, 2010 at 6:41 AM, thrift thrift <[email protected]> > > wrote: > > > > > Hi, > > > I met a weard problem like below. > > > > > > I have two struct > > > > > > struct ReverseRequest { > > > 1: string text, > > > 2: optional i32 int_value, > > > } > > > struct ReverseResponse { > > > 1: string reversed_text, > > > 2: optional i32 reversed_int_value, > > > } > > > > > > In client side, it set like > > > > > > ReverseRequest reverseRequest; > > > reverseRequest.text = "test"; > > > reverseRequest.int_value = 50; > > > > > > and > > > When I tried to get response from client > > > I used > > > ReverseResponse reverseResponse; > > > reverseResponse.reversed_int_value; > > > > > > The thing is that if I use optional keyword, then response will be 0, > if > > > not, the response is 50. But even when I use optional, I also set the > > > int_value and reversed_int_value. Why 0 is returned? > > > > > > > > > -- > Best Regards, > Noam Wolf >
