RCP工程导出后乱码问题解决方法
在eclipse rcp 使用utf-8编码,调试运行都正常,在导出后运行出现中文乱码。
工程导出时编译器会按照操作系统的默认编码编译,中文版的windows的话大部分是GB2312,如果工程的Text file encoding是UTF-8的话,导出后画面的中文会变成乱码,或者启动时报错
java.lang.Error: Unresolved compilation problem:
String literal is not properly closed by a double-quote
查询资料后大部分的解决方式是如下
1>打开plugin.xml,选择build页面,选中"Custom Build"复选框
2> 右键单击build.properites文件,PDE tools --> Create Ant Build File
3>修改build.xml文件,添加javac参数encoding="UTF-8"
4>重新导出工程,能正确显示中文。
有一个更简单的方法:
在build.properties中增加一行,
javacDefaultEncoding.. = UTF-8
让输出时编译器知道java源文件是UTF-8编码,重新导出问题解决.
刚刚看完《蜗居》
n年没有这么疯狂一口气看完一部电视剧,可能是因为我们生活的现实太接近了,产生了一些共鸣,从里边的镜头或多或少的看到一些自己的影子。
这是一部不错的电视剧,推荐观看。
说说自己对里面人物的一点感受
宋思明:典型的金钱与权力的代表,大部分男人女人追求的目标,很聪明很圆滑,或许就是他的聪明害了他,一开始的喜欢海藻发展为无法自拔。
海藻:可怕的单纯,前平后板的漂亮。没有选自可会变成绩优股的小贝,而是选择了已经到达终点的宋。就像是一次登上,有人喜欢享受登山的过程,有人喜欢在山顶的豪壮。登山的过程
可能很漫长并充满了危险,还有可能永远到达不了山顶。海藻选择了坐飞机直接到达山顶。说白了就是哪肉体换金钱的妓女,只是在感情的名义下进行罢了。
海萍:现实社会房屋大山下被压迫的典型。我很喜欢她与马克的那种纯洁友谊。为什么一开始的宋思明不能和海藻发展为纯洁友谊。
小贝:可爱的单纯,不够霸道的帅气。
海萍老公:说不上来他有多差,只是在其他角色映衬下很平庸。
里边有两个让我比较感动的镜头
一个是宋思明老婆的父亲去世时拥抱在一起痛哭的镜头。
一个是宋思明老婆卖拿着所有的钱卖掉了所有的房子给宋补窟窿的镜头。
win7正式发布好几天了,今天周末正好有时间在我的小黑上做个实验,原来的系统是在RB装的ASUS 的oem vista u版,越用越慢,每次启动5分钟以后QQ登录界面才弹出来。终于忍无可忍,无需再忍啦。
win7刚刚发布RC版的时侯我就试用过,感觉不错,桌面好看了,占用的系统资源也少了,性能确实提升了不少,TMD就是价格没降下来,谁叫咱小老百姓没钱呢,国情决定了win7的命运,破解!要是把价格后边的美刀变成人民币,我还有可能支持一下MS。网上早有牛人给咱指明了方向,T400,刷BIOS,安装OEM版完美破解。这是购买小黑的又一馈赠啊。
赶紧来装一下吧,我下载的是7600.16385.090713-1255_x64fre_client_zh-cn_Retail_Ultimate-GRMCULXFRER_CN_DVD.iso
远景论坛http://bbs.pcbeta.com/thread-564992-1-1.html上有资源,64位的,嘿嘿!知道小黑能支持64位,榨干他的最后一滴性能:)
提醒:下载完了别忘了比较一下官方公布的SHA1值
MS对零售、OEM和批量激活都采用了不同类型的序列号和授权激活方式,可要认准了。
零售版的需要连接或者打电话联系MS激活,并且还很容易被封,危险。批量激活的没接触过。只有OEM版最方便了,不用联网直接激活。方便了厂商批量生产的同时也方便了咱们,MS的双刃剑啊。
简单说激活oem要有三要素:
1.存在bios当中的SLIC表当中的一些oem厂商信息(改掉!就是刷BIOS)
2.微软颁发的OEM证书(与vista的通用)
3.微软发给OEM厂商的序列号,即Key(LENOVO已经流出 22TKD-F8XX6-YG69F-9M66D-PMJBM )
其实这中间都有复杂的算法环环相扣的,只要一个地方那个出错也通不过验证。
早期XP激活使用的是SLIC1.0,VISTA使用的是SLIC2.0,WIN7使用的是SLIC2.1
T400 6月份以前出的都是SLIC2.0,需要升级到2.1,这个升级废了我老大劲,一开始用官方提供的刷BIOS工具7uuj35us 怎么刷,重启之后用slic查看工具SLIC_Dump_ToolKit查看还是2.0 试了n遍之后,发现有人说必须在dos系统下执行才管用。一般ghost安装盘里都带dos系统进去之后执行个命令 am2dk.exe /w:7U.bin /z am2dk.exe这个小工具就是用来修改BIOS当中的slic的,7U.bin里就是要写到slic当中文件内容,这个文件不同型号的机器可不一样要认准了,7u是slic当中的一个标识符,用SLIC_Dump_ToolKit能查到。执行完命令重启系统,验证一些这一步就算完成了。
然后就可以开始安装系统了,安装的时候key可以先空着,其他没啥特别之处与装xp雷同,甚至更简单。
我安装时有个很不爽的地方是:提示 press any key to continue的时候只能按Enter键,按其他的键能囧死人,深受其害啊!
剩下的就是导入OEM证书 和安装key了
slmgr.vbs -ilc d:\***.XRM-MS 回车,导入相应OEM证书文件(***.XRM-MS即为自己刷的相关品牌的证书)。
slmgr.vbs -ipk 22TKD-F8XX6-YG69F-9M66D-PMJBM
BIOS之家上已经有牛人把这两部整合成了一个小工具,并且收集了个大厂商的证书和key,叫“Win7_OEM证书序列号导入工具v1.6”,可以搜一下最新版。
装完了就可以低调享受一下ms的免费大餐了。
ps:64位的软件还是少了一些。
博客out了吗?
忽然发现自己很长时间没有博了,是博客落伍了吗?当初写博客是为了防止忘记一些东西才记录下载,也作为一种沉淀积累下来。慢慢的发现自己变懒了,也可能是受众太少了,或者是没动力了。
没博不代表不想博,或者换一种思路动力会更大一些。
centos安装oracle 11g注意的问题
1.磁盘空间6G以上
2.创建用户和组
groupadd dba
groupadd oinstall
useradd -g oinstall -G oinstall,dba -d /home/oracle -m oracle
3.设置静态IP
4.修改或添加内核参数
vi /etc/sysctl.conf
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 4294967295
kernel.shmall = 268435456
kernel.sem =250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default =4194304
net.core.rmem_max =4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
fs.file-max = 6553600
生效 /sbin/sysctl -p
5.修改 .bash_profile
export PATH=$PATH:$HOME/bin
export ORACLE_BASE=/home/oracle
export ORACLE_HOME=$ORACLE_BASE/11g
export ORA_CRS_HOME=$ORACLE_BASE/crs
export ORACLE_PATH=$ORACLE_BASE/common/oracle/sql:.:$ORACLE_HOME/rdbms/admin
export ORACLE_SID=orcl1
export PATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin::$HOME/bin
export PATH=:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin
export PATH=:$ORACLE_BASE/common/oracle/bin
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORA_NLS10=$ORACLE_HOME/nls/data
export LD_LIBRARY_PATH=:/lib:/usr/lib:/usr/local/lib:$ORACLE_HOME/oracm/lib:$ORACLE_HOME/lib
export LIBPATH=$LIBPATH:$ORA_CRS_HOME/lib:$ORACLE_HOME/lib
export CLASSPATH=:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/jlib:$ORACLE_HOME/network/jlib:$ORACLE_HOME/JRE
export THREADS_FLAG=native
export TEMP=/tmp
export TMPDIR=/tmp
export NLS_LANG=american_america.WE8ISO8859P1
alias sysdba="sqlplus '/as sysdba'"
export EDITOR=vi
6.使用yum安装一下文件
glibc-devel-2.3.9.4-2.19
libstdc++-devel-3.4.5-2
sysstat-5.0.5
unixODBC-2.2.11
unixODBC-devel-2.2.11
机器不同,缺的包可能也不一样,安装时看检测报告,缺什么一定要添加完毕之后再继续安装。
7.执行./runInstaller开始安装
8.测试
# sqlplus /nolog
SQL> conn / as sysdba
SQL> select * from scott.emp;
SQL> quit
9.修改 /etc/oratab
orcl1:/home/oracle/11g:Y
10.创建启动脚本
# !/bin/bash
ORACLE_DESC="Oracle 11g"
case "$1" in
'start')
echo "Starting "
lsnrctl start
dbstart $ORACLE_HOME
emctl start dbconsole
echo
;;
'stop')
echo "shutting down "
emctl stop dbconsole
lsnrctl stop
dbshut $ORACLE_HOME
echo
;;
'restart')
echo "restarting "
$0 stop
$0 start
echo
;;
*)
echo "usage: $0 { start | stop | restart }"
exit 1
esac
exit 0
今天用servlet生成图片的时候遇到了这么一个异常
java.lang.UnsatisfiedLinkError: /usr/local/j2sdk1.4.2_05/jre/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory
没有安装libXp.so.6
在linux当中生成图片的时候用到了系统X环境的组件,如果没有启动图形界面的话 需要加一个
System.setProperty("java.awt.headless", "true");
如果你的系统压根就没装图形界面的话就会抛出以上异常。
缺少libXp.so.6找一个按装上就是了
我从这里下载的 http://ftp.xfree86.org/pub/XFree86/4.8.0/binaries/Linux-ix86-glibc24/Xbin.tgz
tar -zxf Xbin.tgz -C /usr/X11R6/
vi /etc/ld.so.conf,加入/usr/X11R6/lib
ldconfig
OK
运行环境
openSUSE11
eclipse3.4(Ganymede) linux版
jdk1.6 选择linux版
nutch1.0
fckeditor更新到最新版了
今天把fckeditor更新到最新版2.6.4,由于java版的fckeditor已经包含了文件上传部分,就把自己用struts实现的文件上传部分给替换掉了,新版上传文件用servlet实现,与struts2集成是由冲突,因为FilterDispatcher把上传文件给拦截了,修改了struts2的url-pattern解决。
ConnectorServlet的mapping如下
<servlet-mapping>
<servlet-name>Connector</servlet-name>
<url-pattern>/fckeditor/editor/filemanager/connectors/*</url-pattern>
</servlet-mapping>
url-pattern不支持正则表达式为了防止过滤/fckeditor/editor/filemanager/connectors/* 把struts2的url-patern修改如下(希望下个版本能支持正则表达式)
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.jspx</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.js</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.css</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/manager/*</url-pattern>
</filter-mapping>
另外发布是还出现了如下异常
log4j:ERROR LogMananger.repositorySelector was null likely due to error in class reloading, using NOPLoggerRepository.
有人说是log4j的版本问题,换了其他版本错误依旧,再换回,重启tomcat以上问题没了,出了Error filterStart,打开web.xml Ctrl+Shift+F搞定。
osgi学习笔记
对osgi有了一个初步的了解之后,准备写段代码跑跑,一试身手,
先下载了一份Bluedavy 的《OSGI实战》
里边有可以直接运行的代码,双击run.bat运行正常,暗爽!
开始练习《OSGI实战》中用户登录验证模块,一行一行敲代码,第一个变化就是工程之间相互引用不能在Build path里添加工程引用了,改成了在MANIFEST.MF当中添加Import-Package
在学习过程当中还是遇到了不少问题,记录下来,帮助遇到和我同样样问题的少走弯路。
我用的是eclipse3.4 jdk1.6
1.Import-Package时org.eclipse.equinox.servlet.api这个包死活找不到。
在eclipse3.4已经不存在了直接导入javax.servlet_2.4.0.v200806031604.jar就可以了
如果没有添加javax.servlet会出现 INSTALLED UserValidatorWebBundle_1.0.0
强行启动会抛出以下异常
org.osgi.framework.BundleException: The bundle could not be resolved. Reason: Missing Constraint: Require-Bundle: javax.servlet; bundle-version="2.4.0"
2.如果使用了Equinox OSGI Declarative Service需要下载 eclipse-equinox-SDK-3.4.2.zip
因为Declarative Service实现并没有包含在Eclipse的默认软件包中,需要单独从 Eclipse 的的网站上获得,下载包当中的plugins和features复制到eclipse当中重启
org.eclipse.equinox.ds_1.0.0.v20080427-0830.jar是运行时用到的bundle
org.eclipse.equinox.ds用到了org.eclipse.equinox.util_1.0.0.v20080414.jar
都要在config.ini当中添加并启动
3.一切看似启动正常了,log当中还是有以下异常
java.lang.IllegalStateException: Unable to acquire application service. Ensure that the org.eclipse.core.runtime bundle is resolved and started (see config.ini).
还得启动 org.eclipse.osgi.util_3.1.300.v20080303.jar这个bundle
4.如果http://localhost/demo/page/login.htm 这个页面不能访问可能org.eclipse.equinox.http_1.0.200.v20080421-2006.jar没有启动,如何htm能访问了http://localhost/demo/login 不能访问 可能org.eclipse.equinox.http.servlet_1.0.100.v20080427-0830.jar没有启动
总结一下用户登录验证模块要启动的bundle
id State Bundle
0 ACTIVE org.eclipse.osgi_3.4.2.R34x_v20080826-1230
1 ACTIVE ConfigFileValidatorBundle_1.0.0
2 ACTIVE DBValidatorBundle_1.0.0
4 ACTIVE UserValidatorBundle_1.0.0
5 ACTIVE LDAPValidatorBundle_1.0.0
9 ACTIVE UserValidatorWebBundle_1.0.0
10 ACTIVE org.eclipse.equinox.util_1.0.0.v20080414
11 ACTIVE org.eclipse.equinox.ds_1.0.0.v20080427-0830
12 ACTIVE javax.servlet_2.4.0.v200806031604
13 ACTIVE org.eclipse.osgi.services_3.1.200.v20071203
14 ACTIVE org.eclipse.equinox.http.servlet_1.0.100.v20080427-0830
15 ACTIVE org.eclipse.equinox.http_1.0.200.v20080421-2006
17 ACTIVE org.eclipse.osgi.util_3.1.300.v20080303