文档章节

Struts2---->fielderror显示处理

小强斋太
 小强斋太
发布于 2016/11/09 20:08
字数 538
阅读 0
收藏 0

一、去掉fielderror显示中前面的的方法

theme都存在jar包中template文件夹下。
1、覆盖所应用主题中的的fielderror的那个ftl文件 

新建/src/template/simple/fielderror.ftl

<#--
/*
 * $Id: fielderror.ftl 722375 2008-12-02 05:19:57Z wesw $
 *
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *  http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */
-->
<#if fieldErrors??><#t/>
<#assign eKeys = fieldErrors.keySet()><#t/>
<#assign eKeysSize = eKeys.size()><#t/>
<#assign doneStartUlTag=false><#t/>
<#assign doneEndUlTag=false><#t/>
<#assign haveMatchedErrorField=false><#t/>
<#if (fieldErrorFieldNames?size > 0) ><#t/>
	<#list fieldErrorFieldNames as fieldErrorFieldName><#t/>
		<#list eKeys as eKey><#t/>
		<#if (eKey = fieldErrorFieldName)><#t/>
			<#assign haveMatchedErrorField=true><#t/>
			<#assign eValue = fieldErrors[fieldErrorFieldName]><#t/>
			<#if (haveMatchedErrorField && (!doneStartUlTag))><#t/>
				<ul<#rt/>
<#if parameters.cssClass??>
 class="${parameters.cssClass?html}"<#rt/>
<#else>
 class="errorMessage"<#rt/>
</#if>
<#if parameters.cssStyle??>
 style="${parameters.cssStyle?html}"<#rt/>
</#if>
>
				<#assign doneStartUlTag=true><#t/>
			</#if><#t/>
			<#list eValue as eEachValue><#t/>
				<li><span>${eEachValue}</span></li>
			</#list><#t/>			
		</#if><#t/>
		</#list><#t/>
	</#list><#t/>
	<#if (haveMatchedErrorField && (!doneEndUlTag))><#t/>
		</ul>
		<#assign doneEndUlTag=true><#t/>
	</#if><#t/>
<#else><#t/>	
	<#if (eKeysSize > 0)><#t/>
		
			<#list eKeys as eKey><#t/>
				<#assign eValue = fieldErrors[eKey]><#t/>
				<#list eValue as eEachValue><#t/>
					<span>${eEachValue}</span>
				</#list><#t/>
			</#list><#t/>
		
	</#if><#t/>
</#if><#t/>
</#if><#t/>

2、css控制

<?xml version="1.0" encoding="GB18030" ?>
<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<%@ taglib uri="/struts-tags" prefix="s" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030" />
<title>theme学习</title>

<style type="text/css">
.formFieldError {
font-family: verdana, arial, helvetica, sans-serif;
font-size: 12px;
color: #FF3300;
vertical-align: bottom;
}

.formFieldError ul {
	/*list-style-type: none*/
    margin: 0px;
    padding: 3px;
    vertical-align: middle;
}

.formFieldError ul li{
	list-style-type: none
   
}
</style>

</head>
<body>
用CSS控制显示
	<ol>
		<li>
		<s:form >
		<div class="formFieldError">
		<s:fielderror />
		</div>
		<s:textfield name='aaa'></s:textfield>
		</s:form>
		</li>
	</ol>
</body>
</html>

3、定义自己的主题,并且在配置文件设置为默认

将 <constant name="struts.ui.theme" value="simple" />改为<constant name="struts.ui.theme" value="mytheme" />

自己定义的mytheme和simple一模一样,只不过是将fielderror.ftl改成第一种方法中的。

推荐:所有的主题定义为simple,把fielderror特殊处理,自己控制其他标签的展现。

 

本文转载自:http://www.cnblogs.com/xqzt/archive/2012/09/01/5637207.html

共有 人打赏支持
小强斋太
粉丝 0
博文 181
码字总数 0
作品 0
广州
私信 提问
struts2标签之

1.s:fielderror输出指定错误信息,而不是输出全部错误信息 在struts2框架中,例如在完成数据类型转 换、数据校验时如果出现错误信息,我们会利用ActionSupport类中addFieldError方法来添加错...

lzw_me
2014/05/29
0
0
struts2 中的 addActionError 、addFieldError、addAction

一、addActionError("错误内容"):Action级别的错误消息 this.addActionError("错误信息1"); this.addActionError("错误信息2"); 显示消息的标签是:<s:actionerror />显示全部的 Action级别的...

林家的人
2014/06/01
0
0
基于JBoss Seam拦截器的异常消息提示体系设计

每个技术体系框架都有自己的消息(message)机制,Struts2框架下有ActionError、ActionMessage、FieldError这三种消息方式,JSF框架也提供了消息API—FacesMessage,这些消息处理结合页面消息...

菜根乱谭
2009/10/08
0
0
struts2中的addActionError 、addFieldError、addActionMe

一 addActionError ①概念 addActionError是Action级别的错误消息 ②添加 this.addActionError("错误信息"); ③显示 <s:actionerror />显示全部的Action级别的错误消息,可以加CSS 二 addFie...

小和尚敲代码
2016/02/03
37
0
struts2表单验证的fielderror不显示的问题

当使用struts2的验证框架进行表单验证时,当input页面是一个chain到action时,页面无法显示fieldError信息。 请问有谁遇到过这个问题的吗?有没有解决方法? 谢谢!...

hoeffort
2014/04/05
97
2

没有更多内容

加载失败,请刷新页面

加载更多

浅析微信支付:开通免充值产品功能及如何进行接口升级指引

本文是【浅析微信支付】系列文章的第十五篇,主要讲解如何开通免充值产品功能流程和其中的注意事项,对于接口升级会重要讲解,避免爬坑。 浅析微信支付系列已经更新十五篇了哟~,没有看过的...

YClimb
37分钟前
1
0
看看ArrayDeque源码

之前看了其他实现Deque接口的类,这里再看看ArrayDeque吧,下图可以看到这个类设计的结构层次,其实Deque接口是继承了Queue接口的。用可调整大小的数组实现Deque接口。没有容量限制,他们根据...

woshixin
38分钟前
1
0
如何存储登录cookie,发送一个post类型的api请求?

其实发送post请求和get请求一样,主要就是不知道如何存储登录cookie进行发送请求,请教xx得到如下解决办法 点击右下方的cookies,填写cookies信息,如图 1填写登录的cookie名,2填写cookie的...

七曦777
38分钟前
1
0
利用cefSharp实现网页自动注册登录的需要注册的一些事项

最近朋友有个需要自动注册登录点击的事,我帮着写了写,好久没写过这东西了,在写的过程中总结了需要注意的一些事项。 一、换IP之后要测试一下速度,我目前用的最简单的测试方法就是20-30秒加...

我退而结网
46分钟前
2
0
Go语言中使用 BoltDB数据库

boltdb 是使用Go语言编写的开源的键值对数据库,Github的地址如下: https://github.com/boltdb/bolt boltdb 存储数据时 key 和 value 都要求是字节数据,此处需要使用到 序列化和反序列化。...

Oo若离oO
47分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部