2014-07-18 15 views
0

我使用Struts 1.x作爲我的框架,是有可能從JSP類對象轉移爲隱藏變量,以行動

這裏我情況怎麼樣,我需要通過我的自定義類對象作爲隱變量就像我想這樣做下面

<html:form name="FormName"> 
    <html:hidden property="ClassObject" value="<%=new MyClass() %>" > 
    </html:form> 

我我FormName形式我已經創建getter和setter ClassObject,如下圖所示。

 private MyClassObject ClassObject; 

    public MyClassObject getClassObject() 
     { 
      return ClassObject; 
       } 
     //setter also I have created 

所以在我的動作類,我試圖讓ClassObject如下

 MyClassObject obj = ((FormName) form).getClassObject(); 

但是,當我不喜歡這樣,我在行收到錯誤的無法箱類JSP

 `<html:hidden property="ClassObject" value="<%=new MyClass() %>" >` 

我的疑問是:是否有可能導致這樣的對象,如果是的話我錯在哪裏?

  If not What is the best way to pass Object from JSP to action ? 

在此先感謝。

+0

你爲什麼要這麼做? –

+0

我需要將該對象中的各種變量的一些數據轉移到行動無論如何似乎我不能傳遞對象到這樣的行動.. – Babel

+0

也許使用ajax並在json中傳遞變量。 –

回答

2

不,因爲無論你從客戶端發送的只是html沒有任何objects.Request只有像(Header,QueryString和body等)的字符串集合。

要從客戶端傳遞人類對象到Servler端,您可以使用JSON。否則,請使用Session。

JSON:

Class Human 
{ 
private int id; 
privae String name; 
// other attributes etc 
} 

[{id:"",name:""}] ---這是字符串,但你可以把那個使用JSON相關的API。

P.S:JSON相關的想法來自Scary。

+0

謝謝兄弟..我將使用會議我想,謝謝 – Babel

+0

提及+1 –

相關問題