CXF入门问题,怎样在客户端给服务器端传递一个对象 ?

我的服务器端:
User对象
UserService是@webService
它包含两个方法:addUser和getUser。

现在出现一个问题,我在客户端调用的时候,addUser(User user)可以直接给服务器传一个User对象,并且服务器端正常接收。

但是现在我getUser,客户端接收到的却是null,但是我的服务器端已经发送sql语句了,就是说服务器端取到数据了,但是没有传给客户端!

这是怎么回事呢?是不是需要什么特殊设置?

下面是我的代码:

User:
@XmlAccessorType(XmlAccessType.FIELD)
@Entity
@Table(name="T_User")
public class User implements java.io.Serializable{
private static final long serialVersionUID = -7351729135012380019L;
@Id
@GeneratedValue
private int id;
private String username;
private String password;
.....
...

(中间有个UserDao层,可以忽略,那里没有进行任何业务封装,只是传值而已。)
@WebService(endpointInterface="service.UserService")
public class UserServiceImpl implements UserService {
@Resource(name="userDao")
private UserDao userDao;

public void save(User user, boolean flag) {
    userDao.add(user);
}
public User get(int id) {
    User user = userDao.get(id);
    return user;
}

...
....

ws是面向xml的,传输的数据时xml,跟http传输的是html类似;对象是java世界中的东东,只是框架进行了java和xml对象的互转而已,如jaxb等框架负责对xml和java的互转。

请问该如何传递像ArrayList>这种对象呀
即使我把它封装在一个对象中,也是不行的,客户端得到的永远是null
请赐教。。。