在命令列指定使用的keystore, client端:
java -Djavax.net.ssl.trustStore=mykeystore -Djavax.net.ssl.trustStorePassword=123456 Client
server端:
java -Djavax.net.ssl.keyStore=mykeystore -Djavax.net.ssl.keyStorePassword=123456 Server
在程式中設定使用的keystore:
在命令列指定使用的keystore, client端:
java -Djavax.net.ssl.trustStore=mykeystore -Djavax.net.ssl.trustStorePassword=123456 Client
server端:
java -Djavax.net.ssl.keyStore=mykeystore -Djavax.net.ssl.keyStorePassword=123456 Server
在程式中設定使用的keystore:
欲指定樣版所使用的編碼可以在component、page或application specification之中加入 <property name=”org.apache.tapestry.template-encoding” value=”Big5”/> 或 <property name=”org.apache.tapestry.template-encoding_zh” value=”Big5”/> 前者是指定所有樣版的編碼,後者僅指定以Home_zh.html方式命名的樣版編碼。
原本要在同一個context執行2個以上的Tapestry程式時,必須在application specification補上不少page的資訊,不過,現在有方便的做法了。檔案架構:
/app1/Home.html /WEB-INF/app1/app1.application /app2/Home.html /WEB-INF/app2/app2.application
app1和app2是servlet名稱,所以在web.xml中要設定:
<servlet> <servlet-name>app1</servlet-name> <servlet-class>org.apache.tapestry.ApplicationServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> <servlet> <servlet-name>app2</servlet-name> <servlet-class>org.apache.tapestry.ApplicationServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>app1</servlet-name> <url-pattern>/app1/app</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>app2</servlet-name> <url-pattern>/app2/app</url-pattern> </servlet-mapping>
使用app1:http://hostname/app1/app
以Tapestry的首頁Home為例,ApplicationServlet收到請求時會建立Engine並叫調用Engine.service(), 在Engine.service()之中會載入application specification,然後找出對應的HomeService並調用HomeService.service(), HomeService.service()之中會以RequestCycle.getPage()取得IPage物件,如果是第一次使用,會再經由 PageSource、PageLoader最後用DefaultTemplateSource讀入HTML樣版,讀取檔案內容時是用 InputStreamReader類別,所以只能使用一種字元集,否則讀入的樣版內容會不正確,另外,可以繼承 DefaultTemplateSource並改寫成從資料庫讀取樣版,這樣要做CMS就方便多了。
Orion的安裝程序非常簡單,下面是安裝步驟:
/usr/local/etc/mail/spamassassin/local.cf: always_add_headers 0 # 不是spam就不要動它的頭 report_safe 0 # 就算是spam也不要亂搞它的身體 use_terse_report 1 # 不需要詳細的報告 spam_level_stars 0 # 用不到星星
mailbox_command = /usr/local/bin/procmail myhostname = ms1.zbwei.net mydomain = zbwei.net mydestination = ms1.zbwei.net,/etc/mail/local-host-names relay_domains = /etc/mail/relay-domains disable_vrfy_command = yes smtpd_sasl_auth_enable = yes smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination smtpd_client_restrictions = reject_rbl_client sbl.spamhaus.org, reject_rbl_client blackholes.mail-abuse.org virtual_alias_maps = hash:/usr/local/etc/postfix/virtual
搭利木津巴士到京王飯店,再走到預訂住宿的西新宿飯店,雙人房十天要十四萬日圓。六月卅日,早上去國際展示場,午餐蛋包飯,下午繼續待在國際展示場,十八 時出發去NTT Data Security開會,晚餐天婦羅。七月一日,早上去NTT Data的data center昇級伺服器,午餐吃sashimi,下午回到寒冷的data center繼續昇級伺服器,晚餐NTT Data的部長請吃串燒。七月二日,午餐中華涼麵,然後到上野動物園,之後到秋葉原的妹斗店(http://www.cos-cha.com/),點了哈 蜜瓜蘇打,送來的是杯像化學廢料的深綠色透明液體,只有淡淡的哈蜜瓜味,Someya點了一千日圓的飲料,示範被妹斗餵一口的樣子,晚餐炸豬排飯。七月三 日,早上到NTT Data Security開會,午餐吃醬酒拉麵,下午到CPI開會,晚餐吃大阪燒。七月四日,早上去住宿處附近的公司看伺服器OutOfMemory問題,午餐韓 國料理,下午至CPI開會,晚餐沖繩料理。七月六日,午餐咖哩。七月八日,十二點半在小田急見面後,到附近吃了親子丼和蕎麥麵,大約十五時到達八景島,嘗 試了blue fall,接著去逛水族館,最後去橫濱吃了此次日本行的最後一頓晚餐。七月九日,六點半起床,到車站發現還趕得上七點七分的成田特快,買了票就快速走向有 一小段距離的月臺,約八點四十分到達成田機場,在ANA經濟艙排隊的人真是多得不得了,慢慢晃到登機門的時候,也差不多十一點了。
左右置中:
.centered { width: 800px; margin: auto; }上下左右置中:
.centered { width: 800px; margin: auto; height: 50%; position: absolute; top: 0; bottom: 0; left: 0; right: 0; }欲讓Apache用mod_proxy將連線轉送給Mongrel執行的Rails應用程式,以Typo為例,如果要將網址設為http://zbwei.net/blog/,需要在config/environments.rb加上:
ActionController::AbstractRequest.relative_url_root = "/blog"
在httpd.conf加上:
ProxyPass /blog/ http://localhost:8001/blog/ ProxyPass /blog http://localhost:8001/blog/ ProxyPassReverse /blog/ http://localhost:8001/blog/
在public目錄建立符號連結: