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

QQ登录

只需一步,快速开始

查看: 14444|回复: 19

[结贴] WeX5_3.3_4610保存时报错!

[复制链接]

66

主题

350

帖子

2143

积分

金牌会员

Rank: 6Rank: 6

积分
2143
发表于 2015-12-21 14:22:12 | 显示全部楼层 |阅读模式
WeX5_3.3_4610保存时报错,该如何处理,新版本的baas简化了,之前的服务也没了。
错误信息:严重: Servlet.service() for servlet WeX5_Baas_Servlet threw exception
java.sql.SQLException: 不允许从数据类型 nvarchar 到数据类型 timestamp 的隐性转换....请使用 CONVERT 函数来运行此查询。

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36064
发表于 2015-12-21 17:39:55 | 显示全部楼层
发控制台完整的错误信息

应该是给字段赋的值给数据库中的字段类型不一致
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

66

主题

350

帖子

2143

积分

金牌会员

Rank: 6Rank: 6

积分
2143
 楼主| 发表于 2015-12-21 21:23:41 | 显示全部楼层
jishuang 发表于 2015-12-21 17:39
发控制台完整的错误信息

应该是给字段赋的值给数据库中的字段类型不一致 ...

十二月 21, 2015 9:22:18 下午 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet WeX5_Baas_Servlet threw exception
java.sql.SQLException: 不允许从数据类型 nvarchar 到数据类型 timestamp 的隐性转换(表 'kmjxc_prolj.dbo.bi_t_branch_info',列 'row_version')。请使用 CONVERT 函数来运行此查询。
        at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:365)
        at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2781)
        at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2224)
        at net.sourceforge.jtds.jdbc.TdsCore.getMoreResults(TdsCore.java:628)
        at net.sourceforge.jtds.jdbc.JtdsStatement.processResults(JtdsStatement.java:525)
        at net.sourceforge.jtds.jdbc.JtdsStatement.executeSQL(JtdsStatement.java:487)
        at net.sourceforge.jtds.jdbc.JtdsPreparedStatement.execute(JtdsPreparedStatement.java:475)
        at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:172)
        at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:172)
        at com.justep.baas.data.DataUtils.saveData(Unknown Source)
        at com.justep.baas.data.DataUtils.saveData(Unknown Source)
        at com.justep.baas.action.CRUD.save(Unknown Source)
        at sm.Sm__do.saveBi_t_branch_info(Sm__do.java:75)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at com.justep.baas.action.Engine.execAction(Unknown Source)
        at com.justep.baas.action.Engine.execAction(Unknown Source)
        at com.justep.baas.servlet.BaasServlet.execService(Unknown Source)
        at com.justep.baas.servlet.BaasServlet.service(Unknown Source)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:745)

com.justep.baas.action.ActionException: 执行Class[sm.Sm__do] Method[saveBi_t_branch_info]失败
        at com.justep.baas.action.Engine.execAction(Unknown Source)
        at com.justep.baas.action.Engine.execAction(Unknown Source)
        at com.justep.baas.servlet.BaasServlet.execService(Unknown Source)
        at com.justep.baas.servlet.BaasServlet.service(Unknown Source)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
        at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        ... 16 more
Caused by: java.sql.SQLException: 不允许从数据类型 nvarchar 到数据类型 timestamp 的隐性转换(表 'kmjxc_prolj.dbo.bi_t_branch_info',列 'row_version')。请使用 CONVERT 函数来运行此查询。
        at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:365)
        at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2781)
        at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2224)
        at net.sourceforge.jtds.jdbc.TdsCore.getMoreResults(TdsCore.java:628)
        at net.sourceforge.jtds.jdbc.JtdsStatement.processResults(JtdsStatement.java:525)
        at net.sourceforge.jtds.jdbc.JtdsStatement.executeSQL(JtdsStatement.java:487)
        at net.sourceforge.jtds.jdbc.JtdsPreparedStatement.execute(JtdsPreparedStatement.java:475)
        at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:172)
        at org.apache.tomcat.dbcp.dbcp.DelegatingPreparedStatement.execute(DelegatingPreparedStatement.java:172)
        at com.justep.baas.data.DataUtils.saveData(Unknown Source)
        at com.justep.baas.data.DataUtils.saveData(Unknown Source)
        at com.justep.baas.action.CRUD.save(Unknown Source)
        at sm.Sm__do.saveBi_t_branch_info(Sm__do.java:75)
        ... 20 more
回复 支持 反对

使用道具 举报

0

主题

4

帖子

24

积分

新手上路

Rank: 1

积分
24
QQ
发表于 2015-12-21 22:25:24 | 显示全部楼层
你在哪里下载的V3.3版本呢?求指教
回复 支持 反对

使用道具 举报

66

主题

350

帖子

2143

积分

金牌会员

Rank: 6Rank: 6

积分
2143
 楼主| 发表于 2015-12-22 09:39:50 | 显示全部楼层
reelee 发表于 2015-12-21 22:25
你在哪里下载的V3.3版本呢?求指教

WeX5
http://pan.baidu.com/s/1bfGzts
BeX5
http://pan.baidu.com/s/1c1jahPI

这个版本的baas不向下兼容的噢
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36064
发表于 2015-12-22 10:55:58 | 显示全部楼层
teky 发表于 2015-12-21 21:23
十二月 21, 2015 9:22:18 下午 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.se ...

row_version给这列赋的值什么?
数据库中这列的字段类型是什么?

Sm__do.saveBi_t_branch_info(Sm__do.java:75)java中调试一下看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

66

主题

350

帖子

2143

积分

金牌会员

Rank: 6Rank: 6

积分
2143
 楼主| 发表于 2015-12-22 11:29:03 | 显示全部楼层
jishuang 发表于 2015-12-22 10:55
row_version给这列赋的值什么?
数据库中这列的字段类型是什么?

字段row_version是timestamp类型,在insert记录时由SQL自动加入的。
(Sm__do.java:75这个定位到sm_do.class中:JSONObject ret = com.justep.baas.action.CRUD.save(params, context);
回复 支持 反对

使用道具 举报

发表于 2015-12-22 18:05:42 | 显示全部楼层
teky 发表于 2015-12-22 11:29
字段row_version是timestamp类型,在insert记录时由SQL自动加入的。
(Sm__do.java:75这个定位到sm_do.clas ...

请问你在BAAS  中字段的类型设置是什么?数据库中这个字段的类型是什么?必须类型一致才可以成功映射的
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

66

主题

350

帖子

2143

积分

金牌会员

Rank: 6Rank: 6

积分
2143
 楼主| 发表于 2015-12-22 18:25:21 | 显示全部楼层
liangyongfei 发表于 2015-12-22 18:05
请问你在BAAS  中字段的类型设置是什么?数据库中这个字段的类型是什么?必须类型一致才可以成功映射的 ...

数据库中字段row_version是timestamp类型
我的版本是WeX5_3.3_4610,请问baas中哪里可以设置字段的类型,新建的action里面如图所示

另外一张表数据库中没有timestamp类型字段能保存成功,界面上删除了但是数据库中数据没删除,是何原因?
QQ图片20151222182057.png
回复 支持 反对

使用道具 举报

发表于 2015-12-23 09:48:49 | 显示全部楼层
teky 发表于 2015-12-22 18:25
数据库中字段row_version是timestamp类型
我的版本是WeX5_3.3_4610,请问baas中哪里可以设置字段的类型, ...

1.就是你发的那个图中,类型就是对用数据库的类型,你需要设置为dateTime相关其他类型试试,
2.页面删除,你指的是data组件中数据的删除吗??删除后需要执行data组件的保存操作才会进行数据库的删除操作!否则只是前台删除了,后台并没有真正的删除数据!
TV_@50PLJSMHK4C)9I883$Y.png
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-21 23:15 , Processed in 0.072248 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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