起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1705|回复: 2

[结贴] 执行Action:save出错,后端显示SQL语句错误

[复制链接]

7

主题

15

帖子

41

积分

新手上路

Rank: 1

积分
41
QQ
发表于 2016-8-8 16:36:30 | 显示全部楼层 |阅读模式
1、新建BaaS服务,有query和save两个Action;
2、在UI设计时,新建bassData并绑定BaaS服务;
3、主页面有一个cuisineWindowDialog,绑定的src是AddCuisine.w,通过按钮打开cuisineWindowDialog,即跳转到AddCuisine.w页面;
4、在AddCuisine.w页面中输入数据后,点击保存按钮,触发windowRecerver,详见下面代码,结果页面报错为:HTTP Status 500 - 执行Action:test/Field/saveField失败,Action[test/Field/saveField]执行失败,SQL执行失败,tomcat的错误提示为:当 IDENTITY_INSERT 设置为 OFF 时,不能为表 '领域' 中的标识列插入显式值。

请问这是什么问题?谢谢。

下面为两个的js文件。
父窗口:
define(function(require) {
        var $ = require("jquery");
        var justep = require("$UI/system/lib/justep");

        var Model = function() {
                this.callParent();
                this.actionUrl = "/baas/takeoutAdmin/attachment/SimpleFileStore";
        };

        // 点击新增按钮
        Model.prototype.addCuisineClick = function(event) {
                this.comp('cuisineWindowDialog').open();
        };
        // 编辑行信息
        Model.prototype.editCuisine = function(row) {
                this.comp('cuisineWindowDialog').set({
                        "title" : "编辑信息"
                });
                this.comp('cuisineWindowDialog').open({
                        data : row.toJson()
                });
        }

        // 点击编辑按钮
        Model.prototype.editCuisineClick = function(event) {
                var row = this.comp('cuisineData').getCurrentRow();
                this.editCuisine(row);
        };
        // 删除会员
        Model.prototype.deleteClick = function(event) {
                var data = this.comp("cuisineData");
                var row = this.comp("cuisineData").getCurrentRow();
                this.comp("cuisineData").deleteData([ row ], {
                        "async" : true,
                        "onSuccess" : function() {
                                data.saveData();
                        }
                })
        };

        // 双击列表打开编辑框
        Model.prototype.cuisineListDblclick = function(event) {
                var row = this.comp('cuisineData').getCurrentRow();
                this.editCuisine(row);
        };

        // 新增或编辑的保存
        Model.prototype.cuisineWindowDialogReceived = function(event) {
                alert("3");
                this.comp('cuisineData').saveData();
                alert("6");
                this.comp('cuisineData').refreshData();
        };


子窗口:
define(function(require) {
        var $ = require("jquery");
        var justep = require("$UI/system/lib/justep");

        var Model = function() {
                this.callParent();
                this.actionUrl = "/baas/takeoutAdmin/attachment/SimpleFileStore";
        };

        // 点击新增按钮
        Model.prototype.addCuisineClick = function(event) {
                this.comp('cuisineWindowDialog').open();
        };
        // 编辑行信息
        Model.prototype.editCuisine = function(row) {
                this.comp('cuisineWindowDialog').set({
                        "title" : "编辑信息"
                });
                this.comp('cuisineWindowDialog').open({
                        data : row.toJson()
                });
        }

        // 点击编辑按钮
        Model.prototype.editCuisineClick = function(event) {
                var row = this.comp('cuisineData').getCurrentRow();
                this.editCuisine(row);
        };
        // 删除会员
        Model.prototype.deleteClick = function(event) {
                var data = this.comp("cuisineData");
                var row = this.comp("cuisineData").getCurrentRow();
                this.comp("cuisineData").deleteData([ row ], {
                        "async" : true,
                        "onSuccess" : function() {
                                data.saveData();
                        }
                })
        };

        // 双击列表打开编辑框
        Model.prototype.cuisineListDblclick = function(event) {
                var row = this.comp('cuisineData').getCurrentRow();
                this.editCuisine(row);
        };

        // 新增或编辑的保存
        Model.prototype.cuisineWindowDialogReceived = function(event) {
                alert("3");
                this.comp('cuisineData').saveData();
                alert("6");
                this.comp('cuisineData').refreshData();
        };
发表于 2016-8-8 19:02:38 | 显示全部楼层
请问子页面和父页面是对同一个data组件进行保存吗??子页面只能是重新加载数据后才可以保存!
建议只在子页面或父页面进行保存操作!如果两个页面都存在保存,请每次都重新加载数据!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

7

主题

15

帖子

41

积分

新手上路

Rank: 1

积分
41
QQ
 楼主| 发表于 2016-8-9 09:09:13 | 显示全部楼层
liangyongfei 发表于 2016-8-8 19:02
请问子页面和父页面是对同一个data组件进行保存吗??子页面只能是重新加载数据后才可以保存!
建议只在子 ...

找到解决方案了,谢谢。主要问题是主键自增不能insert,解决方案如下:http://bbs.wex5.com/forum.php?mo ... page=1#pid165254345
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-23 09:51 , Processed in 0.086678 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表