我在 FormName 表单中为 ClassObj-6ren">
gpt4 book ai didi

java - 是否可以将类对象作为隐藏变量从 JSP 传输到操作

转载 作者:行者123 更新时间:2023-12-02 05:37:42 26 4
gpt4 key购买 nike

我使用 Struts 1.x 作为我的框架,

这里我遇到的情况是我需要将自定义类对象作为隐藏变量传递,就像我想做如下的事情

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

我在 FormName 表单中为 ClassObject 创建了 getter 和 setter,如下所示。

     private MyClassObject ClassObject; 

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

因此,在我的操作类中,我尝试获取如下所示的 ClassObject

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

但是当我这样做时,我收到错误 Unable to crate class for JSP at line

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

我的疑问是:如果可以的话,是否有可能卡鲁这样的物体,我在哪里弄错了?

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

提前致谢。

最佳答案

不,因为您从客户端发送的任何内容都只是 html,而不是任何对象。请求仅具有一组字符串,例如(标题、查询字符串和正文等)。

要将人类对象从客户端传递到服务器端,您可以使用 JSON。否则请使用 session 。

JSON:

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

[{id:"",name:""}]——这是字符串,但您可以使用 JSON 相关的 API 来引入它。

P.S:JSON 相关想法来自 Scary。

关于java - 是否可以将类对象作为隐藏变量从 JSP 传输到操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24816238/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com