不打印所需的结果

时间:2015-01-09 03:27:55

标签: java java-ee ejb-3.0

尝试使用SOAP UI进行测试时,我无法获得正确的输出:

public String registerUserByuser(String user) public String getAllUsers(String userNames)

User.java

package com.ws.entity;

public class User implements java.io.Serializable{

    public String getUserName() {
        return userName;
    }
    public void setUserName(String userName) {
        this.userName = userName;
    }
    public int getUserId() {
        return userId;
    }
    public void setUserId(int userId) {
        this.userId = userId;
    }
    private String userName;
    private int userId;


}
===============================================================================
RegistrationService.java

package com.ws.Service;

import com.ws.entity.User;

public interface RegistrationService {
    String registerUserByuser (String user);
    User getuserNameById(int Id );
    String getAllUsers (String userNames);

}
===============================================================================

RegistrationServiceImpl.java

package com.ws.test;

import javax.jws.WebMethod;
import javax.jws.WebService;

import com.ws.Service.RegistrationService;
import com.ws.entity.User;

@WebService(name = "UserWS", serviceName="RegService", portName = "CustomerPort", targetNamespace = "http://www.reg.com")
public class RegistrationServiceImpl implements RegistrationService {

    @WebMethod
    @Override
    public String registerUserByuser(String user) {
        // TODO Auto-generated method stub

        User u = new User();
        u.setUserId(555);
        u.setUserName("Keith");
        return user;
    } 

    @WebMethod
    @Override
    public User getuserNameById(int Id) {
        // TODO Auto-generated method stub
        User a = new User();
        a.setUserId(888);
        a.setUserName("Seth");
        return a;
    }

    @WebMethod
    @Override
    public String getAllUsers(String userNames) {
        return userNames;
        // TODO Auto-generated method stub

    }

}

要求是开发Bottom Up WebServices: UserRegistration - 接口

方法1 - 将用户作为输入并将String作为输出发送的registerUser 方法2- getUser,它将id作为输入并返回用户对象 方法3 - 将用户列表返回给用户的getAllusers

我是否以错误的方式编写代码?

1 个答案:

答案 0 :(得分:0)

您的代码似乎更像是一个模型,而不是一个实际的实现。您正在使用getuserNameById方法对返回的用户进行硬编码,并且您还会在getAllUsers方法中指出Invexity指出的错误。

你需要某种形式的持久性。对于原型设计,您只需向类中添加List属性,即可存储您创建的用户。类似的东西:

private List<User> users = new ArrayList<User>();

并在registerUserByUser方法中执行以下操作:

this.users.add(user);

最后,在getAllUsers方法中,您可以:

return this.users;

但是,如果这是某种模型或测试,我猜是好的。但是,如果要构建生产代码,则需要阅读有关Web服务,持久性和安全性的更多信息(假设您的域是关于用户的)。由于许多原因(硬编码,缺乏实际持久性,数据安全性,仅举几例),此代码绝对不适合生产。