I'm developing a service using apache thrift. I have a service named
getUser which returns User object. I couldn't find any way to define
user-defined data type as a return type for my service defined in .thrift
file.
user.thrift file looks like:
service UserService{
User getUser(1:i32 userId),}
When I am compiling the user.thrift to generate java source code, I am
getting "*Type "User" has not been defined*" error. Can anyone please help
me, how to represent this user-defined java object as a data type in thrift.
The getUser method code in service implementation class:
@Override
public User getUser(int user id) throws TException {
// here is the code that fetch the user object from database
return user;
}
This is my User class, whose object is being returned by service getUser:
public class User {
private int userId;private String name;private String city;private
String country;public int getUserId() {
return userId;}public void setUserId(int userId) {
this.userId = userId;}public String getName() {
return name;}public void setName(String name) {
this.name = name;}public String getCity() {
return city;}public void setCity(String city) {
this.city = city;}public String getCountry() {
return country;}public void setCountry(String country) {
this.country = country;}
}