Ok. Thanks for the reply.
But my actual use case is: I want my service to return java.sql.Connection
object, and this data type is not supported in hive. How it represent it in
thrift file?
.thrift file is:
service databaseService{
Connection openConnection(),}
The openConnection method code in service implementation class:
@Override
public Connection openConnection() throws TException {
// here is the code that fetch the user object from database
return connecton;
}
On Wed, Jun 17, 2015 at 11:19 PM, nash <[email protected]> wrote:
> I typically do it like this:
>
> struct User {
> 1: required string username;
> 2: required i32 id;
> 3: required string homedir;
> }
>
> service UserService {
> User getUser(1:i32 userid);
> }
>
> When I compile the thrift file, it generates the User class.
>
> --nash
>
> On Wed, Jun 17, 2015 at 10:41 AM reena upadhyay <[email protected]>
> wrote:
>
> > 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;}
> >
> > }
> >
>