baasServer服务器端获取request response 对象
可以参考:Baas/justep/SimpleFileStore.java HttpServletRequest request = (HttpServletRequest)context.get(ActionContext.REQUEST); HttpServletResponse response = (HttpServletResponse)context.get(ActionContext.RESPONSE);
可以参考:Baas/justep/SimpleFileStore.java HttpServletRequest request = (HttpServletRequest)context.get(ActionContext.REQUEST); HttpServletResponse response = (HttpServletResponse)context.get(ActionContext.RESPONSE);
3.2.1版本下载:http://pan.baidu.com/s/1dDLgFzN 3.2.1代码都是使用data组件,自己接管请求服务器进行数据交互的! 3.2.1的baas讲解应该是:http://pan.baidu.com/s/1o7SOo6e 文档 : http://docs.wex5.com/baas/
原因:在浏览器输入IP 端口后,回车,直接跳转到自定义的首页位置!! 解决方法: 修改配置文件runtime\UIServer\WEB-INF\web.xml 不同设备环境跳转到不同的首页路径的定义!都在这个配置文件中!相信您一定能看得懂。 修改后,重启服务
1.参考/Baas/justep/demo.service.m 关于 queryUser 的定义 ,在sql属性中定义sql语句,可以是多表关联, 注意:action 配置的实现部分是 :action:common/CRUD/sqlQuery (和其他默认配置action:common/CRUD/query 是有区别的) 如果有设置过滤条件,以及排序,可以参考:http://docs.wex5.com/wex5-server-question-list-2006/ 前端调用的代码参考:UI2/demo/baas/complexData/index.w 2.在java代码中自定义sql语句实现:/Baas/takeoutAdmin/Statistics.java,这个时候过滤条件等都是通过传递参数实现的!前端调用的代码参考:/UI2/demo/takeoutAdmin/statistics.js
原因:如果想实现baasServer 不页面分开部署,或者访问多个不同服务器的baasServer,就需要设置可以跨域访问 解决方法: 跨域设置BaasServer\WEB-INF\web.xml <init-param> <param-name>Access-Control-Allow-Origin</param-name> <param-value>*</param-value> </init-param> js访问的时候可以直接使用平台baas就可以了! 不过调用Baas.sendRequest 以前 先设置一个变量参数 Baas.BASE_URL等于你的服务地址,比如justep.Baas.BASE_URL = http://ip:端口/baas;
报错 UIServer错误 URI:/x5/UI2/v_4935_nol_zh_CNs_desktopd_pc/v-nauAJf-zh_CN-/image/index.w 错误码:500 错误信息: com.justep.ui.exception.UIException: 编码: JUSTEP000014; 提示: WINDOW编译出错, 文件"/UI2/v-nauAJf-zh_CN-/image/index.w"不存在 隐藏错误详细 原因:有可能是编辑APP,没有选择模式3打包,但是web路径写成了/x5开头的写法!这样就会优先访问UIServer 解决方案:如果是模式1,模式2打包web路径必要写/x5开头的字符串!如果是模式3打包!web路径尽量写成/x5/UI2
原因:UIServer默认访问的web路径是x5,如果想修改成其他字符串,比如x6,请参考如下! 解决方案: 一共修改了3个地方:把x5修改为x6 1.pache-tomcat\webapps\ROOT\index.html 2.新版本修改这个文件的:conf\server.xml,旧版本V3.2.1以前版本修改runtime\UIServer\WEB-INF\justep.xml 3.apache-tomcat\conf\Catalina\localhost\x5.xml,修改为x6.xml 重启服务!浏览器清空缓存就可以了! 开发模式下,设计器中也需要修改,首选项这里 也需要把x5改掉!然后重启studio!如图
服务器报错: com.justep.baas.action.ActionException: Action[justep/takeout/queryFood]执行失败, 获取数据库 连接失败,可能原因:数据库已经关闭或者数据源配置错误 原因:不是使用平台自己的mysql,而是自己安装的mysql数据库,驱动版本不匹配,导致连接数据库失败! 解决方法:mysql版本对应的驱动包,拷贝到现在的版本中,替换tomcat\lib下的mysql驱动
原因:自己配置的mysql数据库,查看正常,当执行baasData.saveData() 保存数据时,出现问题!数据库中存储的是乱码!,这个是因为数据库编码问题!我们WeX5平台使用的编码一律是UTF-8 解决方案: 在 mysql 的配置文件my.cnf(Linux 下在/etc 目录)中加入 character_set_server=utf8 lower_case_table_names=1
原因:有些逻辑,比如多表关联,或者其他特殊sql语句需要自定义sql语句才能够解决,平台提供了sqlQuery action可以设置sql语句,传参有以下两种方式 解决方案: 1、:name----一个:的方式,这种是值参数,类似于我们通常的的sql中的?; 如:select * from abc where name=:name 前端设置通过data设置name='liming' data.filters.setVar("name",'liming'); 最终服务端按 select * from abc where name=?,'liming'执行 在baas设计器中设置条件,参考/Baas/justep/netease.service.m action queryNetease_user 定义了参数condition ,值为fID=:usera 添加参数 var-usera 前端设置 data.filters.setVar("usera",'123456'); 最终也会在标准的queryAction 中拼接这个where条件 2、::filter----两个::的方式,这种参数将会拼到sql中去 如:select * from a [...]