使用Struts2从java类检索JSON

使用Struts2从java类检索JSON,java,jquery,json,struts2,Java,Jquery,Json,Struts2,我在通过struts2检索Json数据时遇到问题。下面是我的代码: struts.xml <struts> <package name="default" extends="struts-default,json-default"> <action name="getMenuInfo" class="test.AppTaskConfigDAOImpl" method="getJsonData"> <result type=

我在通过struts2检索Json数据时遇到问题。下面是我的代码: struts.xml

  <struts>

    <package name="default"  extends="struts-default,json-default">
    <action name="getMenuInfo" class="test.AppTaskConfigDAOImpl" method="getJsonData">
    <result type="json">
    <param name="root">jsonResponse</param>
    </result>
    </action>
    </package>

    </struts> 
没有显示任何警报消息。我正在HTML页面上显示警报。我正在尝试调试,但它甚至没有进入java方法。请让我知道正确的操作方法。
谢谢你的帮助

您缺少根对象的Getter
字符串jsonResponse


根对象必须是类变量,而不是方法变量。

Portal环境?你不认为这是相关信息吗?无论如何,尝试使用
标记。是否调用了该操作?如果是,你会得到什么样的回应?(您可以签入开发者工具或直接点击浏览器中的url)查看提供的代码
jsonResponse
是方法变量。:)奇怪的缩进和丢失的类名欺骗了我:)
public String getJsonData() {
 {
        List<AppTaskConfig> records = null;
        String jsonResponse;
    try {
        SessionFactory sessionFactory= new AnnotationConfiguration().configure().buildSessionFactory();
        Session session=sessionFactory.openSession();
        session.beginTransaction();
        Criteria criteria=session.createCriteria(AppTaskConfig.class);
        records = (List<AppTaskConfig>)criteria.list();

        ClassMetadata classMetadata = sessionFactory.getClassMetadata(AppTaskConfig.class); 
        String [] names=classMetadata.getPropertyNames();
        session.getTransaction().commit();
        session.close();
        ConvertToJson jsondoc= new ConvertToJson();

        jsonResponse=jsondoc.toJsonArray(records, names[2]).toString();
        System.out.println(jsonResponse);

    } 
    catch (HibernateException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (JSONException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return ActionSupport.SUCCESS;
}
$.getJSON('getMenuInfo.action', function(json) {

        $.each(json, function (key, value) {
            alert(value);
        });

                                            });