Struts2 自定義標籤

2021-08-30 03:52:00 字數 1836 閱讀 4283

在用struts2寫自定義標籤時遇到了一些問題,說了乙個多小時解決了,嗯就在這裡做個備忘吧!

(第一次寫,,呵呵,有點怕出錯,如果說的不好大家不要笑..呵呵)

說明一下我的環境:eclipse+tomcat

自定義標籤編寫分為以下幾步:

1.編寫uibean:

@strutstag(description = "my email", name = "email", tldtagclass = "org.oa.web.tags.mymailtag")

public class mymail extends uibean

@strutstagattribute(description = "set e-mail address ", type = "string")

public void setaddress(string address)

@override

protected string getdefaulttemplate()

@override

protected void evaluateextraparams() }}

2.編寫tag類:

abstractuitag這個類要用到jsp-api,我大部分的時間都是浪費在這裡,

這地方主要問題在於分清開發環境與執行環境.

我的包都是放在web-inf/lib下地.所以這裡是執行環境,同時也是開發環境.

這裡不要放入jsp-api.jar.tomcat下面lib資料夾中有.這樣jsp-api.jar只需要在開發時

引用這個包,而不要把jsp-api.jar放入web-inf/lib下.

public class mymailtag extends abstractuitag

@override

protected void populateparams()

public void setaddress(string address)

}

3.tld檔案(只是重要部分.)

這個檔案我是放在這個目錄中的 web-inf/tld/user-tags.tld

1.10

u/user-tags

email

org.oa.web.tags.mymailtag

jspaddress

true

4.建立mymail.ftl檔案.

檔案放置在下面這個目錄中

webroot/template/xhtml

webroot是我專案的根目錄,

template不變,

xhtml是當前你使的哪種theme,如果是******你就建******資料夾.跟據自身情況定.

my e-mail:$

5配置web.xml檔案

/web-inf/tld/user-tags.tld

/user-tags

6.action類

public class myemailaction

public string getaddress()

public void setaddress(string address)

}

7.建立jsp檔案

struts2.xml就不寫了.

struts2自定義標籤

在用struts2寫自定義標籤時遇到了一些問題,說了乙個多小時解決了,嗯就在這裡做個備忘吧 第一次寫,呵呵,有點怕出錯,如果說的不好大家不要笑.呵呵 說明一下我的環境 eclipse tomcat 自定義標籤編寫分為以下幾步 1.編寫uibean strutstag description my e...

Struts2自定義標籤重寫

struts2自定義標籤類重寫主要就是重寫dostarttag 和doendtag 方法。tagsupport的學習 1 tagsupport與bodytagsupport的區別 tagsupport與bodytagsupport的區別主要是標籤處理類是否需要與標籤體互動,如果不需要互動的就用tag...

Struts2自定義型別轉換

在web應用中,頁面提交請求的引數都是字串型別的。但是在學習中,我們都是直接在action中按照需要來定義屬性的型別,比如private int age,也沒有出錯,還能正確執行,這是怎麼回事呢?這是由struts2的型別轉換框架默默的幫助我們完成的功能,只要使用者輸入的資料能合理的轉換為需要的屬性...