`
woshixushigang
  • 浏览: 576358 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

struts2 JSON插件怪异的问题

阅读更多

private FenleiBizIntf fenleiBizIntf = new FenleiBizImpl();

    private Fenlei fenlei;

    List<Fenlei> fenleilist = null;

    private boolean message = false;

    public boolean isMessage() {

       return message;

    }

    public void setMessage(boolean message) {

       this.message = message;

    }

    public List<Fenlei> getFenleilist() {

       return fenleilist;

    }

    public void setFenleilist(List<Fenlei> fenleilist) {

       this.fenleilist = fenleilist;

    }

    public Fenlei getFenlei() {

       return fenlei;

    }

    public void setFenlei(Fenlei fenlei) {

       this.fenlei = fenlei;

    }

   

    public String addFenleiAction()

    {

       message = fenleiBizIntf.addFenlei(fenlei);

      

       fenleilist = fenleiBizIntf.getFenleiAll(null, null);

      

      

       return SUCCESS;

        

    }

 

页面中:

 

function ajaxAddFenlei()

       {

              var fenleiname = $('#fenleiname').val();

              var fenleisupname = $('#fenleisupname').val();

             

              $.ajax

              (

                  {

                     url:,'addFenleiAction!addFenleiAction.action'

                     secureuri:false,//一般设置为false

                     dataType: 'json',//返回值类型 一般设置为json

                     data: "fenlei.name="+fenleiname+"      &fenlei.supname="+fenleisupname,

                    

                     success: function (data, status)  //服务器成功响应处理函数

                     {

                        

                         if(data.message==true)

                         {

                            alert("恭喜您,新增类别成功!");

                            $('#fenleiid').empty();

                            for(var i = 0,len = data.fenleilist.length; i<len; i++)

                            {

                                //alert(data.fenleilist[i].id+'-------');

                                //alert(data.fenleilist[i].name+'----');

                                if(i==len-1)

                                {

                                  

                                $('#fenleiid').append($("<option value='"+data.fenleilist[i].id+"'  selected='selected'>"+data.fenleilist[i].name+"</option>"));

                                }

                               

                                else

                                {

                               

                                $('#fenleiid').append($("<option value='"+data.fenleilist[i].id+"'>"+data.fenleilist[i].name+"</option>"));

                                  

                                }

                           

                            }

                           

                           

                                $('#fenleiid').append($("<option value=-1>新增类别</option>"));

                                closeDiv('aaaa');

                               

                         }

                     },

                     error: function (data, status, e)//服务器响应失败处理函数

                     {

                         //alert(e);

                     }

                  }

              )

     }

 

 

 执行时候页面是可以正常得到message数值和fenleilist数值。

---------------------------------------------------------------------------------------------------------------------------------

以下是无法取到值的情况:

Integer n ;

 

set .....

get ....

 

 

public String checkPersoncode()
 {
  String code = ServletActionContext.getRequest().getParameter("userPersoncode");
  System.out.println(code);
     n = userBiz.selectPersoncodeByCode(code);
  return SUCCESS;
 }

 

页面也是那样写的,但是弹出来的值始终未定义。

 

但是这样倒是可以的 如:

 

 

public String checkPersoncode()
 {
  ServletActionContext.getResponse().setCharacterEncoding("utf-8");
  String code = ServletActionContext.getRequest().getParameter("userPersoncode");
  System.out.println(code);
     Integer n = userBiz.selectPersoncodeByCode(code);
     System.out.println(n);
  try {
   ServletActionContext.getResponse().getWriter().print(n);
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return NONE;
    
 }

 

 

 

不得其解释啊!!!!

 

 

 

 

 

分享到:
评论

相关推荐

    struts2 json

    1. **Struts2 JSON插件**:为了支持JSON,你需要在Struts2项目中添加JSON插件。这个插件提供了一组拦截器和结果类型,使得Action可以直接返回JSON响应。 2. **xwork-core-2.1.6.jar**:这是Struts2的核心库,包含了...

    struts2-json-plugin源码

    在Struts2中,通过整合JSON插件,可以方便地将Action的返回结果转换为JSON格式,供前端JavaScript处理。 `struts2-json-plugin`是Struts2的一个插件,它使得Struts2能够处理JSON请求和响应,无需额外的配置或库。这...

    struts2乱码与json插件(1)

    在这个主题中,“struts2乱码与json插件”主要关注两个方面:字符编码问题和JSON数据交互。 **字符编码问题** 在开发web应用时,乱码问题经常出现,尤其是在处理用户输入或显示非ASCII字符时。Struts2框架默认使用...

    Struts2与JSON

    1. **配置Struts2**: 首先,确保你的项目已经引入了Struts2的核心库和JSON插件。在`struts.xml`配置文件中,添加JSON结果类型: ```xml &lt;constant name="struts.enable.SlashesInActionNames" value="true"/&gt; ...

    struts2-json

    Struts2提供了JSON插件,允许开发者在Action类中返回JSON响应。安装插件后,只需在Action配置中启用JSON支持,就能自动处理JSON输出。 2. **Action配置**: 在Struts2的配置文件(struts.xml或struts.properties)...

    struts整合json用到Jar.zip

    9. **版本兼容性**:确保使用的Struts2版本和JSON插件版本兼容,避免出现不兼容的问题。 以上就是关于Struts整合JSON的基本知识点,通过这些步骤,开发者可以让Struts2应用能够便捷地与客户端进行JSON数据的交互,...

    struts2必备包+json包.rar

    要在Struts2应用中启用JSON支持,首先需要在项目的`struts.xml`配置文件中添加JSON插件的配置。通常,你会看到类似以下的配置: ```xml &lt;constant name="struts.enable.SlashesInActionNames" value="true"/&gt; ...

    json示例下载 +struts2

    2. **配置Struts2 JSON插件**:在struts.xml配置文件中,你需要启用JSON插件,并配置默认的JSON结果类型。例如: ```xml &lt;constant name="struts.enable.SMD" value="true"/&gt; &lt;constant name="struts.action....

    struts-json-plugin-2.1.8.jar struts2-junit-plugin-2.1.8.jar json-lib-2.1.jar

    在给定的标题和描述中,提到的是关于Struts2的JSON插件和相关库的版本问题,以及如何解决这个问题。 首先,我们来看`struts-json-plugin-2.1.8.jar`,这是Struts2的JSON插件,它允许Struts2的动作类直接返回JSON...

    Struts2_JSON_Demo

    1. **Struts2 JSON插件**:Struts2提供了内置的JSON插件,允许我们直接将Action的返回值转换为JSON格式。安装并配置该插件后,只需在Action类的方法上添加`@Result(type="json")`注解,即可启用JSON响应。 2. **...

    struts2与json插件(2)

    在Struts2中,JSON(JavaScript Object Notation)插件是用于处理JSON数据交换的重要组件,这使得Struts2能够与前端的AJAX或者JavaScript进行高效的数据交互。JSON是一种轻量级的数据交换格式,易于人阅读和编写,...

    struts2 json例子 可执行

    1. **Struts2 JSON插件**:为了在Struts2中启用JSON支持,你需要添加Struts2的JSON插件到项目类路径中。这个插件通常包含在struts2-core库中,或者你可以单独下载。通过在`struts.xml`配置文件中引入相应的拦截器栈...

    struts2-json包集合 不会出现任何报错

    4. **struts2-json-plugin-2.1.8.1.jar**:这是Struts2的JSON插件,实现了在Struts2应用中支持JSON的Action结果类型。通过这个插件,开发者可以直接将Action的结果以JSON格式返回给客户端,无需额外的序列化工作。 ...

    struts2+json的使用

    2. 配置Struts2的JSON插件:在struts.xml配置文件中,添加JSON插件的配置,以启用JSON支持。 ```xml &lt;constant name="struts.enable.SMD" value="true"/&gt; &lt;constant name="struts.action.extension" value=",json"/...

    struts2返回json

    1. **添加依赖**:首先,你需要确保你的项目已经包含了Struts2的JSON插件。这通常意味着在Maven的pom.xml文件或构建脚本中添加相关的依赖。 2. **配置Action**:在你的Action类中,你需要定义一个方法来处理请求并...

    myeclipse8下STRUTS(自带JSON插件)的JSON传值例子.rar

    2. **配置struts.xml**:在项目的配置文件struts.xml中,启用JSON插件。添加以下配置: ```xml &lt;constant name="struts.enable.SlashesInActionNames" value="true"/&gt; &lt;constant name="struts.action.extension" ...

    struts2-json-plugin-2.3.8.jar

    在Eclipse中,这个jar包可以直接添加到项目的类路径中,然后在struts.xml配置文件中激活JSON插件。例如: ```xml &lt;package name="default" namespace="/" extends="struts-default"&gt; &lt;result type="json"&gt;/...

    extjs 跟 struts+json

    - 使用Struts 2的JSON插件,使Action能够返回JSON格式的数据。 3. **JSON数据交换**: - JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。 - 在...

    struts2+json/ajax

    在Struts2中,实现JSON支持需要配置Struts2的JSON插件。首先,需要在项目的`struts.xml`配置文件中添加相应的配置,启用JSON结果类型。例如: ```xml &lt;constant name="struts.enable.SlashesInActionNames" value=...

    struts2 相关jar包 包含json-lib-2.1.jar+struts2-json-plugin-2.1.8.1.jar

    使用Struts2 JSON插件时,需要注意JSON/XML注入的安全风险。攻击者可能尝试通过构造恶意输入来操纵JSON响应,因此确保对用户输入进行适当验证和过滤至关重要。 6. **性能优化**: - 对于大型应用,可以通过调整...

Global site tag (gtag.js) - Google Analytics