从Web浏览器返回值

时间:2012-02-08 16:20:16

标签: eclipse-indigo restlet-2.0

我为restlet创建了4个类。但是,当我点击浏览器http://localhost:8182/firstSteps/hello时,它会返回UserName = userName,Password = password。我应该更改哪个类才能获得预期的URL,例如http://localhost:8080/restletTest?p1=abc&p2=def ??

 package firstStep;

    import org.restlet.Component;
    import org.restlet.data.Protocol;

public class Mainone {
    public static void main(String[] args) throws Exception {

        // Create a new Component.
        Component component = new Component();  

        // Add a new HTTP server listening on port 8182.
        component.getServers().add(Protocol.HTTP, 8182);  

        // Attach the sample application.
        component.getDefaultHost().attach("/firstSteps", new FirstStepsApplication());  

        // Start the component.
        component.start();

    }}


package firstStep;

import org.restlet.Application;
import org.restlet.Restlet;
import org.restlet.routing.Router;

public class FirstStepsApplication extends Application{

    public Restlet createInboundRoot(){
        Router router = new Router(getContext());       
        router.attach("/hello",FirstServerResource.class);
        return router;
    }}

package firstStep;

import org.restlet.resource.Get;
import org.restlet.resource.ServerResource;

public class FirstServerResource extends ServerResource {

    Contact contact = new Contact("userName","Password");
    //Contact contactTwo = contact.retrieve();

//  @Get
//  public Contact retrieve() {
//      return contact;
//  }

    @Get
    public String toString() {
        return contact.toString();

    }

}


package firstStep;

public class Contact {
    private String userName;
    private String password;

    //Constructor
    public Contact(String userName,String password){
        this.userName = userName;
        this.password = password;
    }

    public Contact retrieve(){
        System.out.println("Contact retrieve():"+this.userName+"|"+this.password);
        return this;
    }

    public String toString(){
        return "Username:\t"+this.userName+"\nPassword:\t"+this.password;       
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }}

1 个答案:

答案 0 :(得分:0)

点击http://localhost:8182/firstSteps/hello时 调用@Get toString() - 联系方法和输出

UserName: userName
Password: Password

是对的。 所以该值是从服务器正确返回的。

你还想做什么?