按 tomcat docs 中 Tomcat Standard Resource Factories 的说明,新建了一个 ServerSettings 类,配置内容如下:
<resource name="bean/ServerSettings" auth="Container" type="com.lingsmm.framework.config.ServerSettingsBean" factory="org.apache.naming.factory.BeanFactory" uploadfilesavepath="/usr/local/nan/uploadFiles" uploadfiletemppath="/usr/local/nan/temp"/>
将文件打成 war 文件包进行发布,启动服务时,提示无法创建实例,似乎是类工厂无法取到,具体不是很确定。
改用直接使用绝对路径,指向应用所在目录,启动服务时,打开 /manager/ 看到有两个 / (应用的 path = "/"),状态都是未启动的。
将系统默认的 "/" 应用删除,重新启动服务,这回可以取得 JNDI 资源对象了。
虽然解决问题了,但问题的原因却无法找到,感觉很是郁闷,大致看了下 tomcat 6.0.18 的源代码,对于那个 lookup 对应的 binding ,里面的对象是如何生成的,看得有点糊涂,没有深究。不知道有人遇上没,给个解析就好了。
2009-04-17
2009-02-09
EXCEL VBA Array Define & compile error
EXCEL VBA, EXCEL 2003 EN
VBA1:
dim a(), b() as string
call func a
// compile error:
Type mismatch: array or user-defined type expected
VBA2:
dim a() as string
dim b() as string
call func a
// compile success
VBA1:
dim a(), b() as string
call func a
// compile error:
Type mismatch: array or user-defined type expected
VBA2:
dim a() as string
dim b() as string
call func a
// compile success
2009-01-31
【翻译】如何使用 X RESOURCES
翻译的出发点,一是正好在找相关资料,一是,学习英文吧。
本人虽然是PG,但没上过大学,英语也是很差,翻译非常费时,边查单词边造句,太累了。不过感觉对学习英语没有太大帮助吧。
疑点;
1. Athena 不知道具体是什么,可能是某种软件/硬件平台吧
2. geometry?几何?不知如何翻译。
来源:http://web.mit.edu/answers/xwindows/xwindows_resources.html
译稿:
如何使用 X RESOURCES
● X-RESOURCES 文件是什么?
用户可以定制程序的外观,使用了 X 资源文件中的条目的 X 接口的程序。在 Athena 上,这个文件叫 .Xresources,为了能够工作,这个文件需要放在用户目录的最上层。定制内容举例来说,包括改变应用程序的 geometry 和尺寸大小,或者程序所用的颜色。
● 使用 X RESOURCES 我需要知道什么?
要使用你的 .Xresource 为某个程序定制资源,你首先要知道你想要定制的资源,以及这个程序的实例或类。
对于使用 X Toolkit intrinsics 编写的程序,其标准资源,请查阅 X 手册;对于程序的特定资源,请查阅该程序的手册。比如:要查找程序 "xterm" 的资源,你可以输入:
man xterm
通常,一个 X 程序,它默认的实例就是它的名字,它的类,就是它的名字并且首字母大写,除非它的首字母是 "X",这种情况下,其前两个字母大写。比如:程序 "xterm" 的实例是 "xterm",类是 "XTerm",程序 "mwm","mwm" 作为实例,"Mwm" 作为类。
相对于使用传统方式的程序,不幸的事情是,许多 X 程序是非传统的。如果是这种情况,只要启动有疑问的 X 程序,在 unix 提示符下输入 "xprop",再然后点击这个程序。比如,在一个 "xterm" 窗口使用 xprop 会得到:
WM_CLASS(STRING) = "xterm", "XTerm"
● 我应当如何使用 X RESOURCES?
在 .Xresources 文件中,条目有多种差异,但,是类似的,格式化的。说明所有的条目太费事。如果你需要比这里所说的更详细的信息,请查阅 X 手册。
通常,这些条目的形式如下:
class*resource: value
instance*resource: value
class.resource: value
instance.resource: value
资源设置的第一个元素可以是 "class(类)" 或者 "instance(实例)"。类包含了通过特定程序启动的所有,实例是一个给定特定名称的进程。
比如,XTerm 是一个类,所有你启动的 xterm,无论如何,他们都由这个类而来(这个类启动的所有资源都将被应用)。然而,你也可以像这样来启动 xterm:
xterm -name xterm-big
这个处理将会产生一个 XTerm 类,但是实例却是 xterm-big。
因此,你可以像这样来创建资源:
XTerm*reverseVideo: on
xterm*VT100.geometry: 80x24
xterm-big*VT100.geometry: 80x48
xterm-small*VT100.geometry: 80x10
这样,所有你启动的 xterm 的 reverse video 被设置为 on,但是使用 "-name xterm-big" 选项启动的,拥有一个 geometry,使用 "-name xterm-small" 选项启动的,拥有另一个,而没有指定名称的则默认名称为 xterm,也拥有一个不同的 geometry。(VT100 指明 geometry 用在主文本窗口,而不是菜单或子窗口。)
资源名称(如上面例子中的 'geometry')是 X 程序的特定外观属性。拼写资源名称是要小心。只有特定的拼写才正确。比如:'reverseVideo' 和 'ReverseVideo' 作为 xterm 资源而正确地起作用,而不是其它拼写。
其它例子:
oneko*tora:true
matlab*reverseVideo: false ! matlab windows in "reverse video"
emacs*Font: 8x13 ! 字体 8x13, 80 列
emacs*geometry: 80x48+0+0 ! 宽的, 48 行高
XTerm*scrollBar: on ! 带滚动条
XTerm*saveLines: 250 ! 保存 250 行回溯
XTerm*VT100.geometry:80x48+0+0 ! 仅主窗口 80x48
在这些例子中,"*" (宽松绑定) 和 "." (严格绑定) 之间的区别是,*会让资源应用到顶级窗口之内的所有子窗口(像菜单之类),点则只应用到程序的顶级窗口。
● 其它信息
-感叹号(!)用来在 .Xresources 文件中注释一行
-实例的优先级比类高。如果你为一个程序使用不同的值同时指定了类和实例,实例的资源将被使用,如:
xterm*Background: blue
将被使用,代替:
XTerm*Background: green
-要重新读入 .Xresources 文件,并且抛弃老的资源,你可以输入:
xrdb ~/.Xresources
-要重新读入 .Xresources 文件,并保持原来的资源,输入:
xrdb -merge ~/.Xresources
这将合并资源到你当前正在使用的资源中。
-对于 Athena 程序,X 接口程序的默认资源被放在目录 /usr/athena/lib/X11/app-defaults.
-事实上,你并不需要通过程序的类或实例名称来作定制。比如,如果你想为所有 X 驱动的程序指定相同设置,只要加入:
*resource: value
到你的 .Xresources 文件中。
-避免在 .Xresources 文件的头部和尾部出现空格。
-输入 "attach dotfiles",查找 /mit/dotfiles/Xresources 目录,你可以找到 Xresource 文件的示例。
-你可以改变许多使用 -name 选项启动的 X 程序的实例。比如,你如果输入 "xterm -name XT1" 来启动一个 xterm 窗口,那么你可以在你的 .Xresources 文件中使用 "XT1" 来定制资源,就像这样:
XT1*Background: yellow
Xorg 日文键盘,打不出下划线
修改配置文件: /etc/X11/xorg.conf
修改前:
Section "InputDevice"
Identifier "Keyboard0"
Driver "keyboard"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "jp106"
Option "XkbVariant" ""
EndSection
修改后:
Section "InputDevice"
Identifier "Keyboard0"
Driver "keyboard"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "jp106"
Option "XkbLayout" "jp"
Option "XkbVariant" ""
EndSection
修改前:
Section "InputDevice"
Identifier "Keyboard0"
Driver "keyboard"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "jp106"
Option "XkbVariant" ""
EndSection
修改后:
Section "InputDevice"
Identifier "Keyboard0"
Driver "keyboard"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "jp106"
Option "XkbLayout" "jp"
Option "XkbVariant" ""
EndSection
2009-01-30
Archlinux 安装笔记
安装环境:
vista + virtualbox 2.1.2(audio: ICH AC97)
1.基本系统安装
加载启动光盘:archlinux-2008.10-archboot.iso,手工分区
/boot : 32M
swap: 512M
/: 剩余空间
使用 jp106 keymap, ext3 filesystem
参考 /cdrom/arch/archdoc.txt
2.从硬盘启动,更新软件包
编辑 /etc/pacman.conf,添加非官方源 http://mirror.lupaworld.com/archlinux/ 速度较快,adsl,大概 150K - 200K 左右。
参考:http://wiki.archlinux.org/index.php/Mirrors
#pacman -Syu
3.创建普通用户
#adduser
4.安装sudo
#pacman -S sudo
#visudo
(添加sudo用户列表)
参考:http://wiki.archlinux.org/index.php/Sudo
5.安装 Xorg
#pacman -S xorg
参考:http://wiki.archlinux.org/index.php/Xorg
#pacman -S hwd
#hwd -u
#hwd -xa
6.安装vbox-addition
在虚拟机菜单中,选择 Devices - Install Guest Additions
#mount /dev/cdrom
#cp /media/VBoxLinuxAdditions-x86.run ~/
#pacman -S gcc make
#~/VBoxLinuxAdditions-x86.run
#nano /etc/X11/xorg.conf
找到 ps/2 mouse,将 Driver 修改为 vboxmouse
7.安装 openbox
参考:http://wiki.archlinux.org/index.php/Openbox
1) #pacman -S openbox
2) 再按照安装提示,复制配置文件到 ~/.config/openbox
3) 编辑 .xinitrc ,添加 exec openbox-session
4) 可编辑 ./config/openbox/autostart.sh 添加自启动项,别忘了在每个命令后加 &
8.安装 fbpanel
#pacman -S fbpanel
添加到 ~/.config/openbox/autostart.sh
9.安装 yaourt
#pacman -U http://repo.archlinux.fr/i686/yaourt-0.9.2.4-1.pkg.tar.gz
10.安装 ibus 输入法
1) 安装 pkg-config,ibus 的 configure 需要它
下载: http://pkgconfig.freedesktop.org/releases/?C=M;O=D
#tar zxvf pkg*.tar.gz
#cd pkg-config...
#./configure --prefix /usr
#make
#make install
2) 安装 ibus-pinyin ibus-table ibus-anthy
3) 将 ibus 添加到 ~/.config/openbox/autostart.sh
4) 设置环境变量,修改文件 ~/.bashrc,添加:
export XMODIFIERS=@im=ibus
export GTK_IM_MODULE=ibus
export QT_IM_MODULE=ibus
5) 重新登录
11.安装 firefox
1) #pacman -S firefox
2) 安装扩展 user agent switcher,添加 Firefox 3.0.5,设置内容,参考默认值,将 GranParadiso 修改为 Firefox,appName: Firefox/3.0.5
3) 安装 google toolbar
4) 安装 Torbutton
12.安装 flashplugin
#pacman -S flashplugin
13.安装 tor
参考:http://wiki.archlinux.org/index.php/Tor
别忘了 forward-socks4a / localhost:9050 . 最后的这个"."
14.安装文本编辑器 leafpad
#pacman -S leafpad
15.安装文件管理器 xfe
#pacman -S xfe
16.设置ALSA
参考:http://wiki.archlinux.org/index.php/ALSA
别忘了确认,最后加载 snd-pcsp。方法是在 /etc/modprobe.conf 中添加:
options snd-pcsp index=2
vista + virtualbox 2.1.2(audio: ICH AC97)
1.基本系统安装
加载启动光盘:archlinux-2008.10-archboot.iso,手工分区
/boot : 32M
swap: 512M
/: 剩余空间
使用 jp106 keymap, ext3 filesystem
参考 /cdrom/arch/archdoc.txt
2.从硬盘启动,更新软件包
编辑 /etc/pacman.conf,添加非官方源 http://mirror.lupaworld.com/archlinux/ 速度较快,adsl,大概 150K - 200K 左右。
参考:http://wiki.archlinux.org/index.php/Mirrors
#pacman -Syu
3.创建普通用户
#adduser
4.安装sudo
#pacman -S sudo
#visudo
(添加sudo用户列表)
参考:http://wiki.archlinux.org/index.php/Sudo
5.安装 Xorg
#pacman -S xorg
参考:http://wiki.archlinux.org/index.php/Xorg
#pacman -S hwd
#hwd -u
#hwd -xa
6.安装vbox-addition
在虚拟机菜单中,选择 Devices - Install Guest Additions
#mount /dev/cdrom
#cp /media/VBoxLinuxAdditions-x86.run ~/
#pacman -S gcc make
#~/VBoxLinuxAdditions-x86.run
#nano /etc/X11/xorg.conf
找到 ps/2 mouse,将 Driver 修改为 vboxmouse
7.安装 openbox
参考:http://wiki.archlinux.org/index.php/Openbox
1) #pacman -S openbox
2) 再按照安装提示,复制配置文件到 ~/.config/openbox
3) 编辑 .xinitrc ,添加 exec openbox-session
4) 可编辑 ./config/openbox/autostart.sh 添加自启动项,别忘了在每个命令后加 &
8.安装 fbpanel
#pacman -S fbpanel
添加到 ~/.config/openbox/autostart.sh
9.安装 yaourt
#pacman -U http://repo.archlinux.fr/i686/yaourt-0.9.2.4-1.pkg.tar.gz
10.安装 ibus 输入法
1) 安装 pkg-config,ibus 的 configure 需要它
下载: http://pkgconfig.freedesktop.org/releases/?C=M;O=D
#tar zxvf pkg*.tar.gz
#cd pkg-config...
#./configure --prefix /usr
#make
#make install
2) 安装 ibus-pinyin ibus-table ibus-anthy
3) 将 ibus 添加到 ~/.config/openbox/autostart.sh
4) 设置环境变量,修改文件 ~/.bashrc,添加:
export XMODIFIERS=@im=ibus
export GTK_IM_MODULE=ibus
export QT_IM_MODULE=ibus
5) 重新登录
11.安装 firefox
1) #pacman -S firefox
2) 安装扩展 user agent switcher,添加 Firefox 3.0.5,设置内容,参考默认值,将 GranParadiso 修改为 Firefox,appName: Firefox/3.0.5
3) 安装 google toolbar
4) 安装 Torbutton
12.安装 flashplugin
#pacman -S flashplugin
13.安装 tor
参考:http://wiki.archlinux.org/index.php/Tor
别忘了 forward-socks4a / localhost:9050 . 最后的这个"."
14.安装文本编辑器 leafpad
#pacman -S leafpad
15.安装文件管理器 xfe
#pacman -S xfe
16.设置ALSA
参考:http://wiki.archlinux.org/index.php/ALSA
别忘了确认,最后加载 snd-pcsp。方法是在 /etc/modprobe.conf 中添加:
options snd-pcsp index=2
Subscribe to:
Posts (Atom)
By mostone.Jiang