大峡-华山论剑

一心一意做技术

原创 一个不用写javascript的ext综合应用收藏

新一篇: 《ExtJS实用开发指南》导读 | 旧一篇: EasyJWeb-1.1版发布

  相信很多人虽然喜欢Ext,却不太喜欢写javascript,一个原因是javascript太灵活、太强大了,所以有时候很难掌控。因此,春节期间仿照http://wlr.easyjf.com上下载的源代码,基于EasyJWeb1.1,使用了其中Rich Component技术写了一个跟williamraym的单用户blog功能完全一样ExtJS综合应用,不同在于这里不需要manage.js、core.js、topic.js等众多的javascript代码,所有的组件及自定义控件都是在服务器用java书写。

  这个应用演示了如何在用java代码写ExtJS的各种控件,如何对各种事件进行响应,如何与服务器端进行集成等。用java的好处是多方面的,有兴趣的朋友慢慢体会。

    应用示例地址:http://wlr2.easyjf.com
    源代码下载地址:ftp://ftp1.easyjf.com/easyjweb/demo/blog2.zip
 ExtJS相关的技术资料:http://wlr.easyjf.com  
 在线《ExtJS2.0实用简明教程》:http://www.easyjf.com/blog/html/20080217/1179671.html
 关于EasyJWeb1.1:http://www.easyjf.com/html/20080218/2424833.html http://wiki.easyjf.com/display/wiki/EasyJWeb

  让我们一起携起手来,支持国产开源,从我做起。

  应用截图:



(日志分类管理)



(后用户管理)

  管理员登录的AdminLoginAction中的代码:

   

public class AdminLoginAction extends RichComponentAction {
    
public void doIndex() {
        Window win 
= new Window("win1""登陆系统"265140);
        win.setClosable(
false);
        Form f 
= new Form("fp");
        f.setLabelAlign(
"right");
        f.setLabelWidth(
55);
        f.set(
"bodyStyle""padding-top:6px");
        f.set(
"frame"true);
        f.getDefaults().put(
"width"158);
        TextField tf1 
= new TextField("userName""帐号");
        tf1.set(
"cls""user");
        TextField tf2 
= new TextField("password""密码");
        tf2.setInputType(
"password");
        tf2.set(
"cls""key");
        f.add(tf1, tf2);
        win.add(f);
        Function success 
= new ActionFunction(
                
"window.location.href = 'manage.ejf';");
        Function failure 
= new ActionFunction(
                
"form.reset();if(action.failureType == Ext.form.Action.SERVER_INVALID)Ext.MessageBox.alert('警告',action.result.errors.msg);");
        FormAction action 
= new FormAction("action1",
                
"portal.ejf?cmd=adminLogin", success, failure);
        action.setWaitMsg(
"请稍后...");
        Button b 
= new Button("登陆"new Function(
                
"var fp=Ext.getCmp('fp');fp.form.submit(action1);"));
        Button b2 
= new Button("重置"new Function(
                
"var fp=Ext.getCmp('fp');fp.form.reset();"));
        win.addButtons(b, b2);
        win.show();
        
this.addComponents(action, win);
    }

}

 

 

发表于 @ 2008年02月20日 10:15:00|评论(loading...)|编辑

新一篇: 《ExtJS实用开发指南》导读 | 旧一篇: EasyJWeb-1.1版发布

评论

#seathj 发表于2008-02-25 10:24:48  IP: 122.51.64.*
去你妈,,写这个了东东还想要钱
#liu251 发表于2008-03-10 16:40:31  IP: 202.106.49.*
很好很强大
#拉风 发表于2008-04-02 10:13:42  IP: 202.108.130.*
服务器端的框架有GWT,有基于Eclipse风格的RAP,干嘛还造出这个东东?
发表评论  


登录
Csdn Blog version 3.1a
Copyright © 大峡