欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

struts2中simple主题下标签默认样式的移除方法

程序员文章站 2024-02-26 16:40:22
前言 当在我们注册用户时,如果给前台的提示是用户名重复并且用户名太长时,就会要往action里面添加多个errors,这时到前台怎么把它依次拿出来 下面话不多说了,来一...

前言

当在我们注册用户时,如果给前台的提示是用户名重复并且用户名太长时,就会要往action里面添加多个errors,这时到前台怎么把它依次拿出来

下面话不多说了,来一起看看详细的介绍吧

方法如下

①找到配置文件

struts2-core-2.3.35.jar/template/simple/fielderror.ftl(不同版本的文件路径大同小异)

②创建新的文件包并拷贝文件

在项目根目录下创建template.simple并将fielderror.ftl拷贝过来

此时根目录下的fielderror.ftl文件优先权大于默认的fielderror.ftl文件

③修改拷贝过来的fielderror.ftl文件

修改前文件如下

<#--
/*
 * $id$
 *
 * 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.id?has_content>
        id="${parameters.id?html}"<#rt/>
      </#if>
      <#if parameters.cssclass?has_content>
        class="${parameters.cssclass?html}"<#rt/>
       <#else>
        class="errormessage"<#rt/>
      </#if>
      <#if parameters.cssstyle?has_content>
        style="${parameters.cssstyle?html}"<#rt/>
      </#if>
       >
      <#assign donestartultag=true><#t/>
     </#if><#t/>
     <#list evalue as eeachvalue><#t/>
      <li><span><#if parameters.escape>${eeachvalue!?html}<#else>${eeachvalue!}</#if></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/>
  <ul<#rt/>
   <#if parameters.cssclass?has_content>
     class="${parameters.cssclass?html}"<#rt/>
    <#else>
     class="errormessage"<#rt/>
   </#if>
   <#if parameters.cssstyle?has_content>
     style="${parameters.cssstyle?html}"<#rt/>
   </#if>
    >
   <#list ekeys as ekey><#t/>
    <#assign evalue = fielderrors[ekey]><#t/>
    <#list evalue as eeachvalue><#t/>
     <li><span><#if parameters.escape>${eeachvalue!?html}<#else>${eeachvalue!}</#if></span></li>
    </#list><#t/>
   </#list><#t/>
  </ul>
  </#if><#t/>
 </#if><#t/>
</#if><#t/>

将<ul></ul>、<li></li>、<span></span>删除

修改后文件如下

<#--
/*
 * $id$
 *
 * 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/>
     
      <#assign donestartultag=true><#t/>
     </#if><#t/>
     <#list evalue as eeachvalue><#t/>
      <#if parameters.escape>${eeachvalue!?html}<#else>${eeachvalue!}</#if>
     </#list><#t/>
    </#if><#t/>
   </#list><#t/>
  </#list><#t/>
  <#if (havematchederrorfield && (!doneendultag))><#t/>
  
   <#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/>
     <#if parameters.escape>${eeachvalue!?html}<#else>${eeachvalue!}</#if>
    </#list><#t/>
   </#list><#t/>
  
  </#if><#t/>
 </#if><#t/>
</#if><#t/>

重启tomcat

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。