velocity中可不可以使用Struts标签?

我有一段代码:
[code="java"]
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
html:html
#set( $velocity = "Velocity")


$velocity



/html:html
[/code]
请问大虾,velocity中如何使用Struts标签?
[b]问题补充:[/b]
就是能不能使用Struts中的文本框,类表框~~~~~啊什么的
[b]问题补充:[/b]
怎么引用Struts中的文本框标签?
[b]问题补充:[/b]
lovewhzlq:这个我也知道,但是可不可以在.vm文件中这样用:

不能这么搞,velocity引擎是没法解析struts的标签

Struts和Velocity集成相当的简单, 有Struts的基础的人, 可以说一看就明白啦.呵.
下面就简单的说下这个过程:
第一步, 在web.xml中加入Velocity servlet

velocity
org.apache.velocity.tools.view.servlet.VelocityViewServlet

    <load-on-startup>10</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>velocity</servlet-name>
    <url-pattern>*.vm</url-pattern>
</servlet-mapping>

这样, 所有的以vm结尾的文件, 都会交到Velocity Servlet处理, 上面注释掉的一部分, 是toolbox 是声明应用程序的可用工具的位置.如果要用这个工具的话, 记得把注释去掉哟.我下面就用了, 但为了记得明白, 就不去注释了.嘿

第二步, 就是把toolbox.xml放到/WEB-INF下喽.
不过说一句, 如果你想在页面中全部使用Velocity的话, 这个是得加的, 反之, 你想在页面中用Struts标签和Velocity的话, 这个工具就可以省略啦
这个toolbox.xml在 Velocity 工具下载中找到, 也可以自己写一个啦.

<?xml version="1.0"?>



link
request

org.apache.velocity.tools.struts.StrutsLinkTool

<tool>
    <key>msg</key>
    <scope>request</scope>
    <class>
        org.apache.velocity.tools.struts.MessageTool
    </class>
</tool>

<tool>
    <key>errors</key>
    <scope>request</scope>
    <class>
        org.apache.velocity.tools.struts.ErrorsTool
    </class>
</tool>

<tool>
    <key>form</key>
    <scope>request</scope>
    <class>
        org.apache.velocity.tools.struts.FormTool
    </class>
</tool>

<tool>
    <key>tiles</key>
    <scope>request</scope>
    <class>
        org.apache.velocity.tools.struts.TilesTool
    </class>
</tool>

<tool>
    <key>validator</key>
    <scope>request</scope>
    <class>
        org.apache.velocity.tools.struts.ValidatorTool
    </class>
</tool>

第三步, 修改struts-config.xml
其实也就是把View层的JSP换成VM而已.
<?xml version="1.0" encoding="ISO-8859-1" ?>

<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">




<global-forwards>
    <forward name="welcome" path="/welcome.do" />
</global-forwards>

<action-mappings>
    <action path="/welcome"
        type="org.apache.struts.actions.ForwardAction"
        parameter="/pages/search.vm" />

    <action path="/search"
        type="com.puras.test.velocity.SearchAction"
        name="searchForm"
        scope="request"
        input="/pages/search.vm">
        <forward name="success" path="/pages/results.vm" />
    </action>
</action-mappings>

第四步, 创建Velocity模版
这个Demo中只用到了两个VM文件,
分别如下, 里面用到了Velocity的工具哟
search.vm:


Search


$!errors.msgs()
action="$link.setAction('/search')">

Book Search


ISBN:



results.vm:


Results


Book Details


Search again

$user.name

    <b>Name:</b> $user.name<br />
    <b>Age:</b> $user.Age<br />
    <b>Sex:</b> $user.sex<br />
</body>

除了JavaScript之外,没有什么语言是所有架构都支持的。