技术要点
本节代码具体介绍一些非表单标签的使用方式。
非表单标签使用。
非表单标签功能演示。
演示代码
使用 actionError 和 actionMessage 标签的 JSP 文件:
- <!-----------------文件名:ErrorAndMessage.jsp------------->
- <%@taglib prefix="s" uri="/struts-tags"%>
- ………
- <h3 align="left">
- actionerror标签使用范例
- </h3>
- <p>
- <s:actionerror />
- </p>
- <h3 align="left">
- actionmessage标签使用范例
- </h3>
- <p>
- <s:actionmessage />
- </p>
- ………
<!-----------------文件名:ErrorAndMessage.jsp------------->
<%@taglib prefix="s" uri="/struts-tags"%>
………
<h3 align="left">
actionerror标签使用范例
</h3>
<p>
<s:actionerror />
</p>
<h3 align="left">
actionmessage标签使用范例
</h3>
<p>
<s:actionmessage />
</p>
………
使用 actionError 和 actionMessage 标签的 Action 文件:
- <!--------------文件名:ErrorAndMessageAction.java-------------->
- public class ErrorAndMessageAction extends ActionSupport{
- public String execute() throws Exception{
- //调用Struts2API,设置error和Message信息
- addActionError("Action的错误信息");
- addActionMessage("Action的消息信息");
- return SUCCESS;
- }
- }
<!--------------文件名:ErrorAndMessageAction.java-------------->
public class ErrorAndMessageAction extends ActionSupport{
public String execute() throws Exception{
//调用Struts2API,设置error和Message信息
addActionError("Action的错误信息");
addActionMessage("Action的消息信息");
return SUCCESS;
}
}
使用 tree 和 treenode 标签的 JSP 文件:
- <!---------文件名:tree.jsp-------->
- <%@taglib prefix="s" uri="/struts-tags"%>
- ………
- <head>
- <title>登录页面</title>
- <s:head theme="ajax"/>
- </head>
- <body>
- <h3 align="left">
- tree和treenode标签使用范例
- </h3>
- <p>
- <s:tree id="root" label="HTML" theme="ajax">
- <s:treenode label="<b>html1</b>" id="html1" theme="ajax">
- <s:treenode label="subhtml1"
- id="subhtml1" theme="ajax"></s:treenode>
- <s:treenode label="subhtml2"
- id="subhtml2" theme="ajax"></s:treenode>
- </s:treenode>
- <s:treenode label="<b>html2</b>" id="html2" theme="ajax"/>
- </s:tree>
- </p>
- </body>
<!---------文件名:tree.jsp-------->
<%@taglib prefix="s" uri="/struts-tags"%>
………
<head>
<title>登录页面</title>
<s:head theme="ajax"/>
</head>
<body>
<h3 align="left">
tree和treenode标签使用范例
</h3>
<p>
<s:tree id="root" label="HTML" theme="ajax">
<s:treenode label="<b>html1</b>" id="html1" theme="ajax">
<s:treenode label="subhtml1"
id="subhtml1" theme="ajax"></s:treenode>
<s:treenode label="subhtml2"
id="subhtml2" theme="ajax"></s:treenode>
</s:treenode>
<s:treenode label="<b>html2</b>" id="html2" theme="ajax"/>
</s:tree>
</p>
</body>
使用 actionError 和 actionMessage 标签的效果图 5.29 。
图 5.29 actionError 和 actionMessage 标签使用范例图
使用 tree 和 treenode 标签的效果图 5.30 。
图 5.30 tree 和 treenode 标签标签使用范例图
代码解释
( 1 )在本示例中可知 actionerror 标签是输出 Struts2 的 API 方法 getActionError() 中的信息。而 actionmessage 标签则是输出 Struts2 的 API 方法 getActionMessage() 中的信息。这两个方法返回的信息都是一个字符串类型的变量。
由图 5.29 也可知道,这两个标签显示在页面上的内容就是在 Action 代码中封装进去的字符串内容。
( 2 ) treenode 和 tree 标签不但需要联合使用而且都是需要指定 ajax 主题才能实现树形结构功能。具体使用方式如 JSP 代码中所示。
( 3 ) component 标签功能主要是让开发者自定义自己的 Struts2 标签。在下一小节结合将着重说明。这里暂时先不给出示例。