2010年4月15日星期四

Unable to modify the parent container element before the child element is closed (KB927917)

又涨见识了
IE8报下面错误,而且是我的机器不报,同事的机器报,试了4台,两个报,两个不报,IE版本都一样,没想明白
解决:1、查看是否有未关闭的html标签,比如<table>而没有</table> (我就是这个原因)
2、是否在页面未加载完前js代码操作了body里的元素,将相关js代码移到</body>后面



网页错误详细信息

用户代理: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0)
时间戳: Wed, 14 Apr 2010 08:33:56 UTC


消息: HTML Parsing Error: Unable to modify the parent container element before the child element is closed (KB927917)
行: 0
字符: 0
代码: 0
URI: 


http://support.microsoft.com/kb/927917

2010年3月30日星期二

OLAP(On_line Analytical Processing联机分析处理) 和 OLTP(On_line Transaction Processing联机事务处理)

OLAP(On_line Analytical Processing联机分析处理) 和 OLTP(On_line Transaction Processing联机事务处理)

OLTP:On_line Transaction Processing 联机事务处理 ,以业务处理为主

OLAP:On_line Analytical Processing     联机分析处理,则是专门为支持复杂的分析操作而设计的,侧重于对决策人员和高层管理人员的决策支持

2010年3月29日星期一

2010年3月11日星期四

GWT GXT探索

因为客户不满意界面设计,人家看中了兄弟单位用的系统的样子,可他却不知那时cs程序,要想用bs做成那样的效果还是先天不足,就这样开始了GWT GXT的探索,一边摸索一边用GXT重写这个系统
现在想想 经历了三个阶段
刚开始是demo阶段,因为不知道路走不走的通,全面摸索GXT能实现的效果,也没注意模块的规划,甚至就一个类
而后发现还是能走通的,就开始添砖加瓦,发现代码越加越乱,决心重构,定义了多个包,多个类负责不同的功能模块,定义了一些Panel,一下子清晰多了,也遇到了不同模块间互相调用的问题,自己想当然的办法就是在一个类中声明每个模块作为属性,就像一个总管,每个屋子的钥匙我都有了,也认识到了这样的缺点,一些模块中的事件不等不在这个主管中定义
现在Now,用一天时间再次改写,仿照Gxt中的例子Explorer
1、将各个模块定义成com.extjs.gxt.ui.client.mvc.View,View中必须实现方法handleEvent(AppEvent event),负责处理发给自己的事件
2、为每个View定义com.extjs.gxt.ui.client.mvc.Controller,每个Controller中包含View,在这里定义View要处理的事件
3、在Dispatcher中注册每个Controller

这样,每个View各司其职,他们各自有各自的功能,会接收为他们定义的所有事件并处理,发送事件Dispatcher.forwardEvent(appEvent);

感觉这次改写后 速度还没有改写前的快,现在每次操作url会自动添加Hash,想把它去掉,一直没找到根结

2010年3月3日星期三

Gwt中为加载中的Frame加上wait

Gwt中调用panel的setUrl方法嵌入一个网页
在网页加载过程中加入wait
在页面中加入javascript
var ready = false;
$j(document).ready(function(){
ready = true;
});//这里用了jquery

然后再java中声明
public native boolean ready(Element frame)/*-{
return frame.contentWindow.ready?true:false;
}-*/;

然后在设置Frame的url时
olapFrame = centerCp.setUrl(GWT.getHostPageBaseURL()
+ com.google.gwt.http.client.URL.encode("jsp/showOlap.jsp?dim="
+ dims + "&dimname=" + colLabels + ""));
final MessageBox box = MessageBox.wait("等待", "正在查询数据,请稍后...", "查询中...");
final Element frame = olapFrame.getElement();
final Timer t = new Timer() {
@Override
public void run() {
if (ready(frame)) {
this.cancel();
box.close();
}
}
};
t.scheduleRepeating(100);

eclipse中的add import organize imports

organize imports应该是ctrl+shift+o的操作
add import导入指定的类
organize imports导入所有需要导入的类,并且如果有些import是没用的,那么eclipse会自动删除

gwt中JavaScript访问java代码

javascript 调用java代码
//调用JAVA静态方法
//规则: @全路径类名::静态方法名(方法签名)(传入参数)
//@com.capinfo.cdss.gwt.olap.client.ui.PartOlapCenterTab::saveOlapState

(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava

/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)

(saveName,dims,rowDims,colDims,sql,colLabels,expandInfo,hideInfo,exp,field,remark);
//调用JAVA非静态方法
//规则:实例对象.@全路径类名::方法名(方法签名)(传入参数)
//this.@com.capinfo.cdss.gwt.olap.client.ui.PartOlapCenterTab::saveOlapState

(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava

/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)

(saveName,dims,rowDims,colDims,sql,colLabels,expandInfo,hideInfo,exp,field,remark);


//调用JAVA的非静态属性
//规则:实例对象.@全路径类名::属性名
//var field=this.@com.capinfo.cdss.gwt.olap.client.ui.PartOlapCenterTab::field;

参考:http://java.sun.com/j2se/1.4.2/docs/guide/jni/spec/types.html#wp16432
http://yonglin4605.javaeye.com/blog/568045
http://yonglin4605.javaeye.com/blog/564829

访问gwt嵌入页面中的元素

调用panel的setUrl方法嵌入一个网页
要访问这个网页中的js变量 var abc
setUrl返回一个Frame

public native void jsGetVar(Element element)/*-{
var abc = element.contentWindow.abc;
//element.contentWindow.document.getElementById("name");访问element
}-*/;

调用 jsGetVar(frame.getElement());

参考:http://tailorcai.javaeye.com/blog/186897

gwt 设置国际化

在*.gwt.xml中加入 显示中文
<inherits name="com.google.gwt.i18n.I18N"/>
<extend-property name="locale" values="zh" />
在页面中加入
<meta name="gwt:property" content="locale=zh" >

gxt 日期控件设置日期格式

ext-gwt 设置日期格式

DateField date = new DateField();
date.setPropertyEditor(new DateTimePropertyEditor("yyyy-MM-dd"));

2010年2月2日星期二

gwt 部署到Tomact Production Mode

在网上搜索了很多部署gwt到tomcat的blog,吸取了大家的经验,又发现一些问题,总结一下
我是用的Google Plugin for Eclipse ,跟用gwt的sdk编译有点点不一样
1、在gwt项目右键Google > GWT Compile,就会在项目中的war中得到编译后的文件
To run the application as JavaScript in what GWT calls "production mode", compile the application by right-

clicking the project and choosing Google > GWT Compile.
参考:http://code.google.com/webtoolkit/usingeclipse.html#compiling
2、将war中这些文件复制到tomcat webapp/应用 目录下
看一下WEB-INF\classes是不是有相应的class文件,要是没有用eclipse编译后复制过来
3、这样就需要gwt-user.jar了
url中也不需要?gwt.codesvr=172.20.66.140:9997这样的参数了
4、打开tomcat访问相应html可能什么都出不来,或者访问数据库时出错,查看gwt编译时控制台输出,是不是跟web.xml中配的

Servlet mapping是不是对应,
比如
Linking into D:\spring\workspace\fusionchart\war\olap.
Link succeeded
Compilation succeeded -- 92.640s
我的web.xml原来是
<servlet-mapping>
<servlet-name>olap</servlet-name>
<url-pattern>/com.capinfo.cdss.gwt.olap.Olap/olap</url-pattern>
</servlet-mapping>
要改成
<servlet-mapping>
<servlet-name>olap</servlet-name>
<url-pattern>/olap/olap</url-pattern>
</servlet-mapping>
相应html中原来是
<script type="text/javascript" language="javascript" src="com.capinfo.cdss.gwt.olap.Olap/com.capinfo.cdss.gwt.olap.Olap.nocache.js"></script>
改成
<script type="text/javascript" language="javascript" src="olap/olap.nocache.js"></script>
还没闹清楚为什么会这样
跟eclipse自动编译有关?高人告知啊

连接Sql Azure

连接Sql Azure
微软早就公布Sql Azure可以使用了,今天切身体验了一下,方法看下面链接
http://blogs.msdn.com/sqlcrd/archive/2009/12/28/sql-azure.aspx

测试asp.net连接时,启动项目报错:
Windows Azure Tools: Failed to initialize the Development Storage service. Unable to start Development Storage.

Failed to start Development Storage: the SQL Server instance ‘localhost\SQLExpress’ could not be found.   Please configure the SQL Server instance for Development Storage using the ‘DSInit’ utility in the Windows Azure SDK.
解决方法:
go to the "Windows Azure SDK Command Prompt"
执行:
DSInit /sqlInstance:. /forceCreate

再次重新启动,惊喜,报一堆这样的错误:

命名空间“http://schemas.microsoft.com/developer/msbuild/2003”中的“PropertyGroup”。 的子元素
命名空间“http://schemas.microsoft.com/developer/msbuild/2003”中的“ServiceHostingSDKInstallDir”。
无效。应为可能元素的列表: 命名空间“http://schemas.microsoft.com/developer/msbuild/2003”中的“Property”。。   

C:\Program Files\MSBuild\Microsoft\Cloud Service\v1.0\Microsoft.CloudService.targets    9    6    杂项文件

闹了半天是因为刚才
开着"Windows Azure SDK Command Prompt"
关了就OK了

2010年1月30日星期六

啊安装Google Plugin for Eclipse 真是太慢了

安装Google Plugin for Eclipse 真是太慢了,简直无法忍受,睡觉去

2010年1月22日星期五

您对无法重新创建的表进行了更改或者启用了 阻止保存要求创建表的更改

如果要去掉此提示,打开SQL 2008 在最上面 工具-〉选项-〉左侧有个 设计器-〉表设计器和数据库设计器 -> 阻止保存要求重新创建表的更改(右侧) 把钩去即可

参考:http://www.cnblogs.com/ajayumi/archive/2009/04/08/1431429.html

2010年1月13日星期三

10086的特别用途

昨天,隔壁班一学生,上课的时候去上厕所。结果他上完发现自己没带纸。。。而等又等不到人。。。他的手机又欠费了。。。

这时,绝望中 的他做出了一个特别有才的决定:他拿出手机给10086打电话。

他说——他是哪儿的学生,他上厕所没带纸,能不能给他的同学发个短信,给他 送下纸。。。

据说那边沉默了很久。。。后来。。。

他班同学上课时收到了这样一条短信:

尊敬的中国移动用户你 好,你的同学谁谁谁在厕所里,让你给他送手纸。详情咨询10086。

就这样,他得救了。。。

http://yxk.cn.yahoo.com/articles/20100112/1qpp.html

谷歌考虑全面退出中国市场

昨儿早上baidu被黑
今儿早上谷歌考虑全面退出中国市场

地球进入微型冰河时代

今天冬天有些异常 这几天冷的出奇
这是怎么了?2012要来了?

哈哈 ,做刚学会弄了个Tor 翻墙了

2010年1月12日星期二

新闻说百度被黑了

手机新闻说百度被黑了大事儿大事儿 记录一下

windows7 访问局域网计算机 提示用户名密码错误

今天上班发现访问公司局域网里的计算机共享不好使了,输入正确的用户名密码,也提示不正确,差点就还原系统了,最后Google到了方法:WIN7电脑上开始 search 输入sec , 打开local security policy, 找到security settings\local policies\Network Security: LAN Manager authentication level, the default vaule 是 not defined. 改为"Send NTLM response only"后即可.参考:http://bbs.pcbeta.com/thread-511161-1-1.html

2010年1月8日星期五

段祺瑞的遗嘱

余年已七十有余,一朝怛化,揆诸生寄死归之理,一切无所 萦怀,惟我瞻四方,蹙国万里,民穷财尽,实所痛心,生平不喜多言,往日曲突徒薪之谋,国人或不尽省记,今则本识途之验,为将死之鸣,愿我国人静听而力行 焉!则余生虽死犹生,九原瞑目矣。国虽微弱,必有复兴直道,亦至简单。

    勿因我见而轻起政争,勿尚空谈而不顾实践,勿兴不急之务而浪用民财,勿信过激言行之说而自摇邦本。讲外交者,勿忘巩固国防;司教育者,勿忘保存国粹;治家者,勿弃国有之礼教;求学者,勿鹜时尚之纷华。

    本此八勿,以应万有,所谓自力更生者在此,转弱为强者亦在此矣。余生平不事生产,后人宜体我乐道安贫之意,丧葬力崇节简,殓以居士服,毋以荤腥馈祭。

好一个 勿兴不急之务而浪用民财

引自:时寒冰 -- 腾讯博客  http://shihanbing.qzone.qq.com