2011-09-19 133 views
0

我有3個TextFields(Vaadin)(DBName,DBUserName,DBPassword)我想發送文本中的文本從一個portlet到一個servlet,這是我到目前爲止:發送TextField值(參數)到一個servlet

的Portlet部分:

TextField DBName; 
TextField DBUserName; 
TextField DBPassword; 

DBName = new TextField("Enter DB Name"); 
DBName.setColumns(20); 
DBUserName = new TextField("Enter UserName"); 
DBUserName.setColumns(20); 
DBPassword = new TextField("Enter Password"); 
DBPassword.setColumns(20); 
    //Button 
    if(event.getSource()== Connect){ 
     Resource newPictureResource = new ExternalResource("http://localhost:8888/portlet/picture?UserName="+DBUserName.getValue()+"&DBPassword="+DBPassword.getValue()+"&DBName="+DBName.getValue()); 
     picture.setSource(newPictureResource); 
     editContent.addComponent(picture); 
    } 

Servlet的一部分:

這裏沒有思想,是關於若干思考

String UserName = request.getParameter("DBUserName"); 
    String Password = request.getParameter("DBPassword"); 
    String DataBase = request.getParameter("DBName"); 

我想獲得已輸入到文本字段的值, 有什麼想法?

+0

瞭解更多關於查詢字符串的信息。什麼是TextField的fqn? – Bozho

+0

您正考慮通過HTTP以純文本格式發送密碼?這也不是一個好設計。 – duffymo

+0

它只是一個例子,我可以寫text1 text2和text3這裏的安全性不是問題 – Kiesa

回答

0

您的代碼幾乎看起來已經完成。我只編輯了一點(我不確定你的實際問題是什麼)。您可以簡單地使用內置的支持posting data的Java。你可以在the vaadin book.

TextField DBName; 
    TextField DBUserName; 
    TextField DBPassword; 

    DBName = new TextField("Enter DB Name"); 
    DBName.setColumns(20); 
    DBUserName = new TextField("Enter UserName"); 
    DBUserName.setColumns(20); 
    DBPassword = new TextField("Enter Password"); 
    DBPassword.setColumns(20); 

    Button b = new Button("Connect"); 
    b.setImmediate(true); 
    b.addListener(new ClickListener() { 

     @Override 
     public void buttonClick(ClickEvent event) { 
      // post form values using java url connection 


     } 
    }) 
相關問題