论坛首页 Java企业应用论坛

我开发的基于JEE的Web应用软件开发和部署平台软件。支持Eclipse开发和调试。可以用于开发各类型应用系统和各行业应用软件。

浏览 78020 次
该帖已经被评为精华帖
作者 正文
   发表时间:2010-01-20  
xuyelongjava 写道
lz是采用的JDK1.6编译的吗?
我是用的1.5 运行时报“bad version number in .class file”错误。不知道是不是这个问题

就是jdk需要1.6  呵呵 我也犯这个错了
1 请登录后投票
   发表时间:2010-01-20  
java.wj 写道
xuyelongjava 写道
lz是采用的JDK1.6编译的吗?
我是用的1.5 运行时报“bad version number in .class file”错误。不知道是不是这个问题

就是jdk需要1.6  呵呵 我也犯这个错了

呵呵,知道了
0 请登录后投票
   发表时间:2010-01-20  
xuyelongjava 写道
lz是采用的JDK1.6编译的吗?
我是用的1.5 运行时报“bad version number in .class file”错误。不知道是不是这个问题

对,帮助和说明里写了运行环境了,jdk>6。
1 请登录后投票
   发表时间:2010-01-20  
很强大。特意回来感谢LZ 。。
0 请登录后投票
   发表时间:2010-01-20  
怎么说呢,也许可能象你们说的那样,我还比较嫩(Web开发2年)。从进入这个公司开始我就一直在做Web的开发,开发环境使用的是普元的EOS5.6、EOS6.0。用工具生成代码确实
比较快,但是这样的工具好多时候都是一次性的,通过对话框设置生成代码后就不能进行
修改了,哪怕你只要改一个字段也要重新来一回。代码就更难看了,如果你的JSP页面中
有几处使用自动生成代码,那么你打开后唯一想做的就是Ctrl+A 然后Delele。那个Ext我也写过,确实有些繁琐,但是一个项目的复杂度是一定的,布局就那么复杂,你用手工
敲需要那么多代码,用生成器也一样。手工敲得代码不好维护,生成器生成的代码就好维护了?
    到目前为止我用过的代码生成器没有几个用着顺手的,有的可配置性稍微好一些,基本上功能都很有限,遇到一些个性化的东西(比如有的表格需要有合并的表头等等)你还
得自己来写。所以我们目前的做法是将一些重用性比较高的代码做成Tag,那些花哨的界面就省了
0 请登录后投票
   发表时间:2010-01-20  
你那个Main类,或者说Main servlet做的事情太多了,你应该专门写一个基类让我来用,他不做任何登录的判断,它只是解析客户端所请求的 xwl文件,而且这个main类里面好多都写死了没法扩展到比如我自己定义的xwl文件去
String webPath;
        String action;
        String type;
        File actionFile;
        String needLogin;
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        webPath = StringUtil.replace(getServletContext().getRealPath("/"), "\\", "/");
        bufferToRequest(request, webPath, true);
        FileUtil.saveFileToRequest(request);
        action = request.getParameter("action");
        actionFile = FileUtil.getFullFile(webPath, action);
        type = FileUtil.extractFileExt(action);
        if(actionFile == null)
            break MISSING_BLOCK_LABEL_424;
        if(type.equalsIgnoreCase("xwl"))
        {
            (new Parser(webPath, actionFile, request, response, action)).parse();
            break MISSING_BLOCK_LABEL_497;
        }
        needLogin = request.getAttribute("sys.needLogin").toString();
        if(!WebUtil.checkLogin(needLogin, request, response))
            return;
        try
        {
            if(!WebUtil.userHasRight(needLogin, actionFile, webPath, request))
            {
                response.setStatus(403);
                request.getRequestDispatcher("main?action=webbuilder/system/forbidden.xwl").forward(request, response);
                return;
            }
        }
        catch(Exception e)
        {
            throw new ServletException(e);
        }
        WebUtil.recordLog(request, action, 0);
        response.reset();
        if(StringUtil.stringInList(StringUtil.split(request.getAttribute("sys.webFile").toString(), ","), type.toLowerCase()) != -1)
        {
            boolean isMark = request.getParameter("__mark") != null;
            try
            {
                request.getRequestDispatcher(action).forward(request, response);
                if(isMark)
                    response.getWriter().print("{@ok@}");
            }
            catch(Exception e)
            {
                String exceptType;
                if(isMark)
                    exceptType = "mark";
                else
                    exceptType = request.getAttribute("sys.exceptionType").toString();
                WebUtil.recordLog(request, (new StringBuilder(String.valueOf(FileUtil.extractFileName(action)))).append(":").append(WebUtil.getShortError(request, e)).toString(), 2);
                WebUtil.showException(exceptType, e, request, response);
            }
        } else
        {
            response.setHeader("content-length", Long.toString(actionFile.length()));
            response.setHeader("content-type", "application/force-download");
            response.setHeader("Content-disposition", (new StringBuilder("attachment;filename=")).append(WebUtil.getFileName(actionFile.getName())).toString());
            FileInputStream inputStream = new FileInputStream(actionFile);
            SysUtil.inputStreamToOutputStream(inputStream, response.getOutputStream());
            inputStream.close();
        }
        break MISSING_BLOCK_LABEL_497;
        if(StringUtil.isEmpty(request.getQueryString()))
        {
            response.sendRedirect((String)request.getAttribute("sys.portal"));
        } else
        {
            response.setStatus(404);
            request.getRequestDispatcher("main?action=webbuilder/system/invalid.xwl").forward(request, response);
        }


希望能提供一个只解析swl文件的servlet 可以让我方便的配置到web.xml中去
0 请登录后投票
   发表时间:2010-01-20  
LZ不是一般的强啊。想想这么大的工程常人是有能力也不太想去做啊。称赞一个。
0 请登录后投票
   发表时间:2010-01-20   最后修改:2010-01-20
chenjie100 写道
hatedance 写道
LZ非常有才。我一直很关注java RAD web开发工具,
我和lz一样,厌恶年复一年的写那些重复代码。我也在发明自己的轮子,为了让自己工作好过点。
我看了demo,发现LZ的这个工具不是纯java的,里头的脚本语言也不知道是什么语言,貌似JS。
我想象中的理想平台是java+xml就解决问题了。在delphi平台上有个intraweb,也有java版本不过很少人用吧。

兄弟,你好,这个工具是纯java的,后台是纯Java,前台是纯html+js,没有用任何插件。webbuilder集成了很多的组件和框架,比如像前台的ext,fusioncharts等。可以跨平台和浏览器使用。

我说的纯java的意思是像struts那样,我可以在已有的java web应用里加一点东西就能用的,就像spring,hibernate,struts那样,比如在web.xml里加一点servlet/filter,然后定义一些xml配置文件,就能把某个框架用上了。

而你这个工具有点霸道了。你能不能把你的工具也做成一个jar包,然后做一个eclipse插件允许可视化编辑界面,你还是把界面信息保存成xml文件?这样的话,我觉得符合大多数java开发者的习惯。
0 请登录后投票
   发表时间:2010-01-20  
UI的设计是一大问题呀,谢谢楼主啦
0 请登录后投票
   发表时间:2010-01-20  
hatedance 写道
chenjie100 写道
hatedance 写道
LZ非常有才。我一直很关注java RAD web开发工具,
我和lz一样,厌恶年复一年的写那些重复代码。我也在发明自己的轮子,为了让自己工作好过点。
我看了demo,发现LZ的这个工具不是纯java的,里头的脚本语言也不知道是什么语言,貌似JS。
我想象中的理想平台是java+xml就解决问题了。在delphi平台上有个intraweb,也有java版本不过很少人用吧。

兄弟,你好,这个工具是纯java的,后台是纯Java,前台是纯html+js,没有用任何插件。webbuilder集成了很多的组件和框架,比如像前台的ext,fusioncharts等。可以跨平台和浏览器使用。

我说的纯java的意思是像struts那样,我可以在已有的java web应用里加一点东西就能用的,就像spring,hibernate,struts那样,比如在web.xml里加一点servlet/filter,然后定义一些xml配置文件,就能把某个框架用上了。

而你这个工具有点霸道了。你能不能把你的工具也做成一个jar包,然后做一个eclipse插件允许可视化编辑界面,你还是把界面信息保存成xml文件?这样的话,我觉得符合大多数java开发者的习惯。

可以的啊。实事上引用webbuilder就只需引用一个jar包就可以(在lib目录下webbuilder.jar),使用的时候同jsp差不多,只不过引用方式不同,使用main?action=file.xwl这样的方式引用即可,main是一个解析引擎。你使用的原有技术都可以保留,也可以混合使用,把webbuilder的xwl当jsp就行了,只不过xwl是用xml描述的。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics