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

QQ登录

只需一步,快速开始

楼主: flydream

[结贴] 页面会自动跳转到index页面后再跳回来求解决!!!

[复制链接]

135

主题

387

帖子

775

积分

高级会员

Rank: 4

积分
775
QQ
 楼主| 发表于 2018-5-30 17:42:40 | 显示全部楼层
liangyongfei 发表于 2018-5-30 15:21
那你重新定义action 访问试试吧,代码一点点搬过去,运行时看看是那儿代码导致的
这个action和其他action ...

这个action调用了其他类里面的方法以及调用了接口和数据库驱动
回复 支持 反对

使用道具 举报

发表于 2018-5-30 17:49:46 | 显示全部楼层
flydream 发表于 2018-5-30 17:42
这个action调用了其他类里面的方法以及调用了接口和数据库驱动

嗯嗯,按理说不影响的,那你试试注释掉代码,排除法找下原因,是什么导致的稳定重现?
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

135

主题

387

帖子

775

积分

高级会员

Rank: 4

积分
775
QQ
 楼主| 发表于 2018-5-31 11:11:11 | 显示全部楼层
liangyongfei 发表于 2018-5-30 17:49
嗯嗯,按理说不影响的,那你试试注释掉代码,排除法找下原因,是什么导致的稳定重现? ...

控制台.png
这是用apploader测试时控制台的信息,我不太明白画大红框里面的是啥,请指教,现在正在测试actoin中的代码,发现代码走到输入输出流那里页面不知道为什么就会跳转了。
回复 支持 反对

使用道具 举报

发表于 2018-6-1 09:52:36 | 显示全部楼层
flydream 发表于 2018-5-31 11:11
这是用apploader测试时控制台的信息,我不太明白画大红框里面的是啥,请指教,现在正在测试actoin中的代 ...

这个是appLoader 运行打印的日志
,appLoader 运行 所有的功能都会 打印这个的,
另外问下,你是什么版本呢??确认wex5 和 appLoader 都是最新的3.8版本!

和appLoader这个应该没关系,你还是用浏览器去调试吧
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

135

主题

387

帖子

775

积分

高级会员

Rank: 4

积分
775
QQ
 楼主| 发表于 2018-6-1 10:38:04 | 显示全部楼层
liangyongfei 发表于 2018-6-1 09:52
这个是appLoader 运行打印的日志
,appLoader 运行 所有的功能都会 打印这个的,
另外问下,你是什么版本 ...

请您帮我看看我自定义中的这段代码有问题吗,红色字体部分,因为走到这段代码后页面会发生跳转。
// 获取图片
        public static JSONObject getTP(JSONObject params, final ActionContext context) throws ServletException, IOException, AddressException, MessagingException {
                String id = params.getString("Strid"); //前端传过来的参数
                System.out.println("*****************************");
                System.out.println("id:"+id);
                HttpServletRequest request = (HttpServletRequest) context.get(ActionContext.REQUEST);
                HttpServletResponse response = (HttpServletResponse) context.get(ActionContext.RESPONSE);
                PreparedStatement pstmt = null;
                Connection conn = null;
                String sql1 = "";
                ResultSet rs = null;
                JSONObject result = new JSONObject();
                String FilePath = null;
       
                try {
                        conn = context.getConnection("txxt");
                        sql1 = "SELECT EXT,ID,T_NAME FROM ENTITY_INDEX WHERE VER=0 AND USED=1 AND ID ='" + id+"'";//查询后缀
                        System.out.println(sql1);
                        pstmt = conn.prepareStatement(sql1);
                        rs = pstmt.executeQuery();//返回的结果集
                        if(rs.next()){//遍历结果集
                                String ext = rs.getString("EXT");
                                System.out.println("ext:"+ext);
//                                GraphBizImpl biz = new GraphBizImpl();//将图片通过流的方法下载到本地指定文件下
                                 if (".TIF".equals(ext)) {
                                         String fileAddrName = "D://WORK/model/UI2/txxt/img/";
                                         String tabName = "";
                                         fileAddrName += rs.getString("ID") + rs.getString("EXT");
                                                tabName = rs.getString("T_NAME");
                                                System.out.println("tableName:"+tabName);
                                                System.out.println("sql1123456897:"+sql1);
                                                File file = new File(fileAddrName);
                                                PreparedStatement pstmt1 = null;
                                                ResultSet rs1 = null;
                                                if (!file.exists()) {
                                                        String sql = "SELECT ENTITY FROM " + tabName + " WHERE VER=0 AND ID='" + id+"'";
                                                        pstmt1 = conn.prepareStatement(sql);
                                                        rs1 = pstmt1.executeQuery();
                                                        System.out.println("sql查询数据库图片数据语句:"+sql);
                                                        if (rs1 != null) {
                                                                if (rs1.next()) {
                                                                        Blob blob = rs1.getBlob("ENTITY");
                                                                        System.out.println("blob**************:"+blob);
                                                                        InputStream ins = blob.getBinaryStream();
                                                                        // 输出到文件
                                                                        OutputStream fout = new FileOutputStream(file);
                                                                        // 下面将BLOB数据写入文件
                                                                        byte[] b = new byte[1024];
                                                                        int len = 0;
                                                                        while ((len = ins.read(b)) != -1) {
                                                                                fout.write(b, 0, len);
                                                                        }
                                                                        // 依次关闭
                                                                        fout.close();
                                                                        ins.close();
                                                                }
                                                        }
                                                }

                                   System.out.println("转换后的地址:" + fileAddrName);
                                   String src = fileAddrName;
                                   result.put("src", src);
                                 }
                        }
                } catch (Exception e) {
                        e.printStackTrace();
                } finally {
                        try {
                                conn.close();
                        } catch (Exception e2) {
                                e2.printStackTrace();
                        }
                }
                return result;
        }

回复 支持 反对

使用道具 举报

发表于 2018-6-1 14:28:40 | 显示全部楼层
flydream 发表于 2018-6-1 10:38
请您帮我看看我自定义中的这段代码有问题吗,红色字体部分,因为走到这段代码后页面会发生跳转。
// 获取 ...

你是想显示数据库的图片对吧??直接文件输出流,将图片写出去就可以了,
页面 img 的src属性直接指定action的url即可
不需要先把文件写道目录下,再指定这个文件的路径,其实这样不是最优的

我怀疑,可能这里生成了新的文件资源,导致了页面重新刷新的

wex5调试模式就是这样的,资源改变后,页面会自动刷新的!  调试模式 的原因

你启动tomcat 别使用调试模式 应该就没问题了!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

135

主题

387

帖子

775

积分

高级会员

Rank: 4

积分
775
QQ
 楼主| 发表于 2018-6-1 15:21:52 | 显示全部楼层
本帖最后由 flydream 于 2018-6-1 15:24 编辑
liangyongfei 发表于 2018-6-1 14:28
你是想显示数据库的图片对吧??直接文件输出流,将图片写出去就可以了,
页面 img 的src属性直接指定act ...

老师您好,因为我数据库存的是二进制数据,而不是路径,而且格式还是image组件不支持打开的格式,所以我需要转换一下才能展示出来,转换格式也是自己用代码转换的,在以上代码中没有体现。我刚刚试了我的Tomcat就是不以调试模式运行的, Tomcat.png



回复 支持 反对

使用道具 举报

发表于 2018-6-1 16:03:15 | 显示全部楼层
本帖最后由 liangyongfei 于 2018-6-1 16:05 编辑
flydream 发表于 2018-6-1 15:21
老师您好,因为我数据库存的是二进制数据,而不是路径,而且格式还是image组件不支持打开的格式,所以我需 ...

我的意思是调试启动tomcat   不是调试 java

这个刷新应该只是开发模式会这样
正式部署后就不会有问题了!
A$I07(CNRO])I`S[D}A@6M1.png
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

135

主题

387

帖子

775

积分

高级会员

Rank: 4

积分
775
QQ
 楼主| 发表于 2018-6-4 10:14:06 | 显示全部楼层
本帖最后由 flydream 于 2018-6-4 10:38 编辑
liangyongfei 发表于 2018-6-1 16:03
我的意思是调试启动tomcat   不是调试 java

这个刷新应该只是开发模式会这样

1.老师,我按照您说的方式启动了Tomcat,但是手机上模式三打包运行时后报内存溢出的错误,Tomcat启动也就只能用平台按钮启动,运行文件夹下的.bat文件就会导致内存溢出错误。导致每个页面的数据都加载不出来了。
2.然后我又按照模式一打包后测试,不会出现页面跳转的问题了,也就是说调试模式启动Tomcat下载新资源后会自动更新,但是模式一打包后图片页面的图片不会显示了,请您帮忙解决,谢谢谢您了,打apk包部署后图片无法显示,没打包时测试正常!!!

http://bbs.wex5.com/forum.php?mod=viewthread&tid=192917
(出处: 起步软件技术论坛)

回复 支持 反对

使用道具 举报

发表于 2018-6-4 11:47:03 | 显示全部楼层
flydream 发表于 2018-6-4 10:14
1.老师,我按照您说的方式启动了Tomcat,但是手机上模式三打包运行时后报内存溢出的错误,Tomcat启动也就 ...

调试模式  不会有内存溢出错误吗??
正式模式  就会有内存溢出问题??那你需要修改下java代码, 是否java有问题,存储内存大小不足了报错的?? 是不是      byte[] b = new byte[1024]; 报错的  ??
打断点跟一下代码吧
首先应解决这个错误的!

2. 模式1打包,也是使用相同的BaasServer,你不是将文件写在一个路径下了吗??试试这个路径下是否真的生成了文件,这个文件正常访问的url地址应该是什么??而你的代码 访问的地址是什么??

模式1打包的资源,部署后,也可以有浏览器去访问运行调试
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-25 17:20 , Processed in 0.095537 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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