用struts2+spring用json来取数据
总是出现下面错误
ava.sql.SQLException: Positioned Update not supported.
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
at com.mysql.jdbc.ResultSetImpl.getCursorName(ResultSetImpl.java:2093)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
查找资料说是修改struts.xml,加exclude,但是还是报这个错误

解决方案 »

  1.   

    struts.xml配置<struts> <constant name="struts.i18n.encoding" value="utf-8"></constant> <package name="struts2" extends="struts-default"> <global-results>
    <result name="add_success" type="redirect">/common/pub_add_success.jsp
    </result>
    <result name="del_success" type="redirect">/common/pub_del_success.jsp
    </result>
    <result name="modify_success" type="redirect">
    /common/pub_modify_success.jsp</result>
    </global-results>
    <action name="addPerson" class="personAction" method="addPerson">
    </action> <action name="delPerson" class="personAction" method="delPerson">
    </action> <action name="main" class="mainAction">
    <result name="success">/main.jsp</result>
    </action> </package>

        <package name="json" extends="json-default">
            <action name="find_foodCode" class="foodCodeAction" method="find_foodCode">
                <result type="json" >
                 <param name="excludeProperties">
                         foodCodeManager
                    </param>
     
                </result>
            </action>           
    </package></struts>
      

  2.   

    这个是spring的配置相关<bean id="foodCodeAction" class="com.struts2.action.FoodCodeAction"
    scope="prototype">
    <property name="foodCodeManager" ref="foodCodeManager"></property>
    </bean>        <bean id="foodCodeManager" class="com.oa.manager.impl.FoodCodeManagerImpl">
    <property name="sessionFactory" ref="sessionFactory"></property>
    </bean>这个是action类package com.struts2.action;import net.sf.json.JSONObject;import org.apache.struts2.ServletActionContext;import com.oa.PagerModel;
    import com.oa.manager.FoodCodeManager;
    import com.oa.model.FoodCode;
    import com.opensymphony.xwork2.ActionSupport;
    @SuppressWarnings("serial")
    public class FoodCodeAction extends ActionSupport{ private int codeId;
    private String name;
    private int parentId;
    private FoodCodeManager foodCodeManager;
    private String result;

    public String getResult() {
    return result;
    } public void setResult(String result) {
    this.result = result;
    }

    public int getCodeId() {
    return codeId;
    } public void setFoodCodeManager(FoodCodeManager foodCodeManager) {
    this.foodCodeManager = foodCodeManager;
    } public void setCodeId(int codeId) {
    this.codeId = codeId;
    }

    public String getName() {
    return name;
    } public void setName(String name) {
    this.name = name;
    } public int getParentId() {
    return parentId;
    } public void setParentId(int parentId) {
    this.parentId = parentId;
    } @Override
    public String execute() throws Exception {  PagerModel pm = foodCodeManager.findFoodCodes(parentId);

       ServletActionContext.getRequest().setAttribute("pm", pm); return SUCCESS;
    }

        public String find_foodCode() throws Exception{

         FoodCode foodCode = foodCodeManager.findFoodCode(1111);
         System.out.println(foodCode.getCodeId());
    JSONObject jsonObject = JSONObject.fromObject(foodCode);
            System.out.println(jsonObject);

            return SUCCESS;
    } }