星期二, 11月 30, 2010
星期一, 11月 29, 2010
[JSP] include(import) file with parameter
2. Include Directive 載入指令
include 指令
在編譯時期包括(include)另一個網頁,或是在執行時期包括另一個網頁,是一種靜態的指定方式,而不能傳送參數,使用指令元素include的對象通常是一個靜態網頁。
<%@page contentType="text/html; charset=big5"%>
<%@include file="header.inc"%>
<H1><B>include示範</B><H1>
<%@include file="foot.inc"%>
<%@ include %> v.s. <jsp:include>
<%@ include %> 主要是include靜態網頁
所包含的文件視為同一份文件,被include的頁面裡面所宣告的變數,可以被主頁面直接拿來引用。
例如說在a.jsp 定義String a="aaa";
在b.jsp用<%@ include %> 把a.jsp 包含進來後,可視a.jsp跟b.jsp為同一份,所以不用再宣告String a(再宣告會有錯誤),可直接用a = "abcc";
<jsp:include> 可以include 動、靜態網頁
使用<jsp:include> 則不行,需透過<jsp:param......的方式傳參數才可被引用,承上例,如果用<jsp:include> 包含a.jsp,若直接打a = "abcc";,肯定出錯,因為他不把a.jsp跟b.jsp視為同一分文件
JSP 學習_3_語法 Directive Elements 指令元素
include 指令
在編譯時期包括(include)另一個網頁,或是在執行時期包括另一個網頁,是一種靜態的指定方式,而不能傳送參數,使用指令元素include的對象通常是一個靜態網頁。
<%@page contentType="text/html; charset=big5"%>
<%@include file="header.inc"%>
<H1><B>include示範</B><H1>
<%@include file="foot.inc"%>
<%@ include %> v.s. <jsp:include>
<%@ include %> 主要是include靜態網頁
所包含的文件視為同一份文件,被include的頁面裡面所宣告的變數,可以被主頁面直接拿來引用。
例如說在a.jsp 定義String a="aaa";
在b.jsp用<%@ include %> 把a.jsp 包含進來後,可視a.jsp跟b.jsp為同一份,所以不用再宣告String a(再宣告會有錯誤),可直接用a = "abcc";
<jsp:include> 可以include 動、靜態網頁
使用<jsp:include> 則不行,需透過<jsp:param......的方式傳參數才可被引用,承上例,如果用<jsp:include> 包含a.jsp,若直接打a = "abcc";,肯定出錯,因為他不把a.jsp跟b.jsp視為同一分文件
JSP 學習_3_語法 Directive Elements 指令元素
星期日, 11月 28, 2010
[JSP] JSP Tag Library in Eclipse
今天在要自訂 JSP Tag Library無法正確的import javax.servlet.jsp.tagext.*;
記得把安裝tomcat裡面的lib目錄,將 jsp-api.jar與servlet-api.jar加到你專案的
WEB-INF/lib目錄下。
記得把安裝tomcat裡面的lib目錄,將 jsp-api.jar
WEB-INF/lib目錄下。
ps:請不要將lib內在自訂子目錄來分類你的jar,會讀不到jar
星期四, 11月 25, 2010
[JSP] EL(Expression Language)
EL:變數
屬性範圍 在EL中的名稱
Page pageScope
Request requestScope
Session sessionScope
Application applicationScope
PS:
1自動搜尋範圍 page->request->session->application
2 ${}在jsp 2.0中是特殊字元,JSP容器會自動將它當成EL來執行,因此假若要列印${}時,需在$前加上\,如:\${XXXXXX}
屬性範圍 在EL中的名稱
Page pageScope
Request requestScope
Session sessionScope
Application applicationScope
PS:
1自動搜尋範圍 page->request->session->application
2 ${}在jsp 2.0中是特殊字元,JSP容器會自動將它當成EL來執行,因此假若要列印${}時,需在$前加上\,如:\${XXXXXX}
[Eclipse] Import & Export *.jar library
最近在新建的 eclipse專案匯入其他專案的jar檔時,常常會發生path錯誤無法編譯的問題。
找了一下其他人的解決方案,不過目前採用UserLibraries跟 Web-INF/lib裡面都有引入需要的jar,好像才不會有問題。
星期三, 11月 24, 2010
The server does not support version 3.0 of the J2EE Web module specification
今天遇到在windows剛裝好eclipse執行測試的專案時,
在設定Servers遇到以下錯誤:
原來新增的專案用的是Tomcat 6.0,jdk都是用的1.6
而Tomcat 6.0最多支持Servlet 2.5
解决如下:
在專案根目錄下有一個.settings的目錄下,找到以下文件
org.eclipse.wst.common.project.facet.core.xml文件
内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
<fixed facet="jst.web"/>
<fixed facet="wst.jsdt.web"/>
<fixed facet="java"/>
<installed facet="java" version="1.5"/>
<installed facet="jst.web" version="3.0"/>
<installed facet="wst.jsdt.web" version="1.0"/>
</faceted-project>
把<installed facet="jst.web" version="3.0"/>改為 <installed facet="jst.web" version="2.5"/>
在設定Servers遇到以下錯誤:
The server does not support version 3.0 of the J2EE Web module specification
原來新增的專案用的是Tomcat 6.0,jdk都是用的1.6
而Tomcat 6.0最多支持Servlet 2.5
解决如下:
在專案根目錄下有一個.settings的目錄下,找到以下文件
org.eclipse.wst.common.project.facet.core.xml文件
内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
<fixed facet="jst.web"/>
<fixed facet="wst.jsdt.web"/>
<fixed facet="java"/>
<installed facet="java" version="1.5"/>
<installed facet="jst.web" version="3.0"/>
<installed facet="wst.jsdt.web" version="1.0"/>
</faceted-project>
把<installed facet="jst.web" version="3.0"/>改為 <installed facet="jst.web" version="2.5"/>
星期二, 11月 23, 2010
[Eclipse] WINDOWS 設定 JAVA 環境變數
環境變數若有需要設定,建議是設定在 "系統變數":
PATH=C:\Program Files (x86)\Java\jdk1.6.0_XX\bin;
CLASSPATH=.;C:\Program Files (x86)\Java\jdk1.6.0_XX\lib;C:\Program Files (x86)\Java\jdk1.6.0_XX\lib\tools.jar;
Tip1:win7 啟動 tomcat 請將系統的JRE或JDK下的\bin\把msvcr71.dll手動copy到tomcat下的\bin\
Tip2:目前整合的IDE介面大多不需要額外設定環境變數
PATH=C:\Program Files (x86)\Java\jdk1.6.0_XX\bin;
CLASSPATH=.;C:\Program Files (x86)\Java\jdk1.6.0_XX\lib;C:\Program Files (x86)\Java\jdk1.6.0_XX\lib\tools.jar;
Tip1:win7 啟動 tomcat 請將系統的JRE或JDK下的\bin\把msvcr71.dll手動copy到tomcat下的\bin\
Tip2:目前整合的IDE介面大多不需要額外設定環境變數
星期一, 11月 22, 2010
WebDAV (Web Distributed Authoring and Versioning) using .Net C#
WebDAV(Web Distributed Authoring and Versioning)為一個HTTP/1.1通訊協定的延伸建議RFC-2518,讓用戶端使用者可以透過網路來進行網頁內容的編輯工作。
WebDAV透過HTTP/1.1通訊協定標準,提供簡單的檔案輸入/輸出(simple File I/O)的功能,包含:
- 建立、修改、刪除檔案及瀏覽目錄和檔案。
- 讀取檔案與目錄的屬性(properties)。
- 簡單的檔案鎖定。
WebDAV提供幾個新的HTTP指令,包含:
- GET:讀取WebDAV目錄下的檔案內容。
- PUT、POST:傳送檔案內容到伺服器WebDAV目錄下。
- PROPFIND、PROPPATCH:讀取、設定檔案屬性。
- COPY、MOVE:COPY複製目錄、或檔案,MOVE移動檔案。限於同一個WebDAV目錄操作。COPY時若無此路逕時會自動產生,COPY複製範圍也包括其子目錄。
- MKCOL:建立一個目錄。
- DELETE:刪除一個檔案或目錄。
- LOCK、UNLOCK:鎖定檔案、解除檔案鎖定。
- SEARCH:使用SQL語法搜查檔案內容,可使用全文檢索,僅適用於Exchange 2000 Server共用資料匣。
安裝Windows 2000、IE 5、或Office 2000的用戶端電腦,具有權限的使用者,就可以針對IIS的虛擬目錄來發行、鎖定、管理Web的資源,將文件發行至Web伺服器,及在Web目錄中處理檔案,包含:
- 移動、複製檔案:擁具權限的使用者可以在WebDAV目錄中移動、複製檔案。
- 修改檔案:擁具權限的使用者可以讀取、修改寫入檔案的內容。
- 鎖定檔案:多位使用者可以同時讀取同一個檔案,讀取時會將檔案鎖定,因此同時只有一人可以修改同一個檔案。
- 搜尋檔案:連線到WebDAV目錄後,就可以搜尋WebDAV目錄中的檔案與內容,譬如搜尋到所有由Jack所建立的檔案,或者搜尋所有含有IIS關鍵字的檔案。
Reference:
WebDAV .NET
WebDav and Outlook Appointments in .NET
網際網路新通訊協定---WebDAV
星期四, 11月 18, 2010
[C# WinForm] using uesr32.dll
一些dot.net 跟windows handle survey.
Reference:
Reference:
- Finding the thread (PID) that belongs to a tab in IE 8 with PowerShell
- C# 指定程序還原與置於前景視窗
- Correct way (in .NET) to switch the focus to another application. SetActiveWindow Reference in C#, VB.NET and VB6 Working with Win32 API in .NET
- FindWindow Alternative in C# .NET
- User32's SetForegroundWindow() API in C#
- C# Force Form Focus
- C# - Open "Folder Options" dialog programmatically
- C#调用Win32 的API函数--User32.dll tip:有加一些註解,有助了解func的功能
- C#中用WinAPI调用外部程序
- C# Windows API
- [C#.NET][VB.NET] 用 Win32 API 控制 外部應用程式選單
- 限制Windows应用程序多个实例的方法
星期三, 11月 17, 2010
星期二, 11月 16, 2010
SAN(Storage Area Network)
啥是SAN(Storage Area Network)? 就字面上來看,簡單的說就是由儲存設備所構成的區域網路。但是單就這麼了解的話,是有所不足的喔。
星期一, 11月 15, 2010
[WordPress] 基本語法擷錄 (轉)
(一)WordPress基本模板文件
一套完整的WordPress模板應至少具有如下文件:
style.css : CSS(樣式表)文件
index.php : 主頁模板
archive.php : Archive/Category模板
404.php : Not Found 錯誤頁模板
comments.php : 留言/回覆模板
footer.php : Footer模板
header.php : Header模板
sidebar.php : 側欄模板
page.php : 內容頁(Page)模板
single.php : 內容頁(Post)模板
searchform.php : 搜索表單模板
search.php : 搜索結果模板
當然,具體到特定的某款模板,可能不止這些文件,但一般而言,這些文件是每套模板所必備的。
一套完整的WordPress模板應至少具有如下文件:
style.css : CSS(樣式表)文件
index.php : 主頁模板
archive.php : Archive/Category模板
404.php : Not Found 錯誤頁模板
comments.php : 留言/回覆模板
footer.php : Footer模板
header.php : Header模板
sidebar.php : 側欄模板
page.php : 內容頁(Page)模板
single.php : 內容頁(Post)模板
searchform.php : 搜索表單模板
search.php : 搜索結果模板
當然,具體到特定的某款模板,可能不止這些文件,但一般而言,這些文件是每套模板所必備的。
星期日, 11月 14, 2010
[C# WinForm]Notifyicon with contextmenu and no form
實作沒有表單的contextMenu
using System;using System.Windows.Forms; using System.Threading;using System.Drawing; namespace WindowsApplication9 { static class Program { [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); NotifyIcon notifyIcon1 = new NotifyIcon(); ContextMenu contextMenu1 = new ContextMenu(); MenuItem menuItem1 = new MenuItem(); contextMenu1.MenuItems.AddRange(new MenuItem[] { menuItem1 }); menuItem1.Index = 0; menuItem1.Text = "E&xit"; menuItem1.Click += new EventHandler(menuItem1_Click); notifyIcon1.Icon = new Icon("app.ico"); notifyIcon1.Text = "Form1 (NotifyIcon example)"; notifyIcon1.ContextMenu = contextMenu1; notifyIcon1.Visible = true; Application.Run(); notifyIcon1.Visible = false; } private static void menuItem1_Click(object Sender, EventArgs e) { Application.Exit(); } } }Reference: Notifyicon with contextmenu and no form
[VS Studio] vshost.exe 是做什麼用啊
接下來的問題是,如果程式要出貨想關閉這個功能要怎麼做呢?
只要選取 Project | Properties | Debug,將 Enable the Visual Studio hosting process 選項前的鉤鉤取消即可。
Reference:
[C#]一堆 ***.vshost.exe 是做什麼用啊
裝載處理序 (vshost.exe)
只要選取 Project | Properties | Debug,將 Enable the Visual Studio hosting process 選項前的鉤鉤取消即可。
Reference:
[C#]一堆 ***.vshost.exe 是做什麼用啊
裝載處理序 (vshost.exe)
星期四, 11月 11, 2010
Alfresco
Reference:
Adding Features
Adding password reset feature to Alfresco Share login
A simple My Weather dashlet using Alfresco share remote API
Writing a Hello World Dashlet for Alfresco Share
Create a new page to AlfShare
Spring Surf Developer Tools - Reference DocumentationSpring Surf with an Alfresco backend
Create a Custom Page in Share
Extending Share 1 - Creating a Share extension project
Extending Share 2 - Adding a New Content button to Document Library
Extending Share 3 - Adding new pages to share
Alfresco wiki
Web Studio
Surf Platform - Developers Guide
Surf Platform - Freemarker Template and JavaScript API
Adding Features
Adding password reset feature to Alfresco Share login
A simple My Weather dashlet using Alfresco share remote API
Writing a Hello World Dashlet for Alfresco Share
Create a new page to AlfShare
Spring Surf Developer Tools - Reference DocumentationSpring Surf with an Alfresco backend
Create a Custom Page in Share
Extending Share 1 - Creating a Share extension project
Extending Share 2 - Adding a New Content button to Document Library
Extending Share 3 - Adding new pages to share
Alfresco wiki
Web Studio
Surf Platform - Developers Guide
Surf Platform - Freemarker Template and JavaScript API
星期一, 11月 08, 2010
星期日, 11月 07, 2010
[C# WinForm]在程式中開啟 檔案總管
/n:會針對每一個選取的項目,以單窗格 (我的電腦) 檢視方式開啟一個新視窗, 即使新視窗與已開啟的視窗重複 也一樣。 /e:會使用 Windows 檔案總管檢視。Windows 檔案總管檢視十分類似 Windows 3.x 版中的檔案管理員。請注意,預設檢視為 開啟檢視。 /root,
上層資料夾,並選取所指定的物件。
- "My Computer" highlighted in left side with all drives visible but not expanded and C: highlighted in right side: %SystemRoot%explorer.exe /e,/select,c:
- Desktop highlighted and nothing expanded: %SystemRoot%explorer.exe /e,/n,/select,/root,c:
- All drives visible and the system drive highlighted and expanded in full screen: %SystemRoot%explorer.exe /e,/select
- All drives visible and the system drive expanded in small screen: %SystemRoot%explorer.exe /e,/select,%systemroot%
- Only Windows Directory visible highlighted and expanded: %SystemRoot%explorer.exe /e,/root,%systemroot%
- All drives visible but only C: highlighted and expanded: %SystemRoot%explorer.exe /e,c:
- Nothing expanded and My Computer highlighted in right side: %SystemRoot%explorer.exe /n,/e,/select,
- Opens the Windows folder as a folder: %SystemRoot%explorer.exe %systemroot%
- Opens as "My Computer": %SystemRoot%explorer.exe %systemroot%,
- This opens the Desktop folder with "My Computer" highlighted: %SystemRoot%explorer.exe %systemroot%,/select,
- "Desktop" highlighted in the left side and no drives visible:
%systemroot%explorer.exe /e,/root,::{20D04FE0-3AEA-1069-A2D8-08002B30309D},/select - "My Computer" highlighted in left side and all drives visible but none expanded:
%systemroot%explorer.exe /e,/root,::{20D04FE0-3AEA-1069-A2D8-08002B30309D} - "Desktop" in left side highlighted and "My Computer" highlighted in right side and no drives visible:
%systemroot%explorer.exe /e,/select,::{20D04FE0-3AEA-1069-A2D8-08002B30309D}
Reference:
在程式中開啟 檔案總管 (Using C#)
如何開啟檔案總管在想要的目錄.