近来学习appfuse2一直受着displaytag中文乱码的困挠,如果是刚刚下载下来的源代码编译后没有乱码,但是如果做了相应的displaytag中文修改、或者增加了新pojo之后,重新启动就会产生乱码。
百度、google了几天,发现都是appfuse1的解决办法,appfuse2的几乎没有,有的只是从生成的war档文件中修改,但是如果重新修改添加displaytag之后就又有问题了,没有冲根本上解决……
这个过程中,发现ApplicationResources_zh.properties却无论如何都没有乱码。后来仔细检查pom.xml配置文件,发现ApplicationResources_zh.properties和displaytag_zh.properties对配置还真不一样,原文件对ApplicationResources.properties的相关配置文件是:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>native2ascii-maven-plugin</artifactId>
<version>1.0-alpha-1</version>
<configuration>
<dest>target/classes</dest>
<src>src/main/resources</src>
</configuration>
<executions>
<execution>
<id>native2ascii-utf8</id>
<goals>
<goal>native2ascii</goal>
</goals>
<configuration>
<encoding>UTF8</encoding>
<includes>
ApplicationResources_ko.properties,
ApplicationResources_no.properties,
ApplicationResources_tr.properties,
ApplicationResources_zh*.properties
</includes>
</configuration>
</execution>
<execution>
<id>native2ascii-8859_1</id>
<goals>
<goal>native2ascii</goal>
</goals>
<configuration>
<encoding>8859_1</encoding>
<includes>
ApplicationResources_de.properties,
ApplicationResources_fr.properties,
ApplicationResources_nl.properties,
ApplicationResources_pt*.properties
ApplicationResources_zh*.properties
</includes>
</configuration>
</execution>
</executions>
</plugin>
以及——
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>ApplicationResources_de.properties</exclude>
<exclude>ApplicationResources_fr.properties</exclude>
<exclude>ApplicationResources_ko.properties</exclude>
<exclude>ApplicationResources_nl.properties</exclude>
<exclude>ApplicationResources_no.properties</exclude>
<exclude>ApplicationResources_pt*.properties</exclude>
<exclude>ApplicationResources_tr.properties</exclude>
<exclude>ApplicationResources_zh*.properties</exclude>
<exclude>applicationContext-resources.xml</exclude>
<exclude>struts.xml</exclude>
</excludes>
<filtering>true</filtering>
</resource>
发现一直都没有对关于ApplicationResources以外的*.properties文件进行配置处理,于是照以上看来native2ascii只有对ApplicationResources进行了国际化编码了而已,其他的都没有进行。于是做了一下修改——
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>native2ascii-maven-plugin</artifactId>
<version>1.0-alpha-1</version>
<configuration>
<dest>target/classes</dest>
<src>src/main/resources</src>
</configuration>
<executions>
<execution>
<id>native2ascii-utf8</id>
<goals>
<goal>native2ascii</goal>
</goals>
<configuration>
<encoding>UTF-8</encoding>
<includes>
ApplicationResources_ko.properties,
ApplicationResources_no.properties,
ApplicationResources_tr.properties,
*_zh*.properties
</includes>
</configuration>
</execution>
<execution>
<id>native2ascii-8859_1</id>
<goals>
<goal>native2ascii</goal>
</goals>
<configuration>
<encoding>8859_1</encoding>
<includes>
ApplicationResources_de.properties,
ApplicationResources_fr.properties,
ApplicationResources_nl.properties,
ApplicationResources_pt*.properties
</includes>
</configuration>
</execution>
</executions>
</plugin>
以及——
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>ApplicationResources_de.properties</exclude>
<exclude>ApplicationResources_fr.properties</exclude>
<exclude>ApplicationResources_ko.properties</exclude>
<exclude>ApplicationResources_nl.properties</exclude>
<exclude>ApplicationResources_no.properties</exclude>
<exclude>ApplicationResources_pt*.properties</exclude>
<exclude>ApplicationResources_tr.properties</exclude>
<exclude>*_zh*.properties</exclude>
<exclude>applicationContext-resources.xml</exclude>
<exclude>struts.xml</exclude>
</excludes>
<filtering>true</filtering>
</resource>
注意以上做了红字部分的修改
最后重启项目,登录测试,发现一切Ok,后来不管在displaytag对显示属性中作任何修改,乱码都不会出现,看来是彻底解决了。
分享到:
相关推荐
总之,理解和掌握AppFuse中的乱码解决策略以及菜单设置方法,对于高效地使用这个框架进行Web应用开发至关重要。通过正确配置编码和定制菜单,你可以确保应用的易用性和兼容性,同时提供个性化的用户界面。
由于描述中提到“没有jar包”,这可能意味着下载的实例源码不包含运行所需的所有依赖库,因此需要开发者自行解决这个问题。 首先,为了运行这个AppFuse 2.0实例,你需要确保你的开发环境中安装了Java Development ...
在Appfuse2中,Struts提供了基础的控制器和视图模板。 2. **Hibernate**:这是一款对象关系映射(ORM)工具,使得开发人员可以使用Java对象来操作数据库,而无需编写SQL语句。Appfuse2利用Hibernate进行数据持久化...
### AppFuse2 学习知识点总结 #### 一、AppFuse 概述 - **定义与价值**:AppFuse 是一款开源项目...以上是关于 AppFuse2 学习过程中涉及的关键知识点和步骤,希望能帮助初学者更好地理解和掌握 AppFuse2 的使用方法。
在提供的文档中,"Appfuse+2.doc"可能详细介绍了AppFuse的升级和改进,特别是版本2引入的新特性。"display.doc"可能涵盖DisplayTag的使用指南,包括如何在JSP页面上集成DisplayTag标签,以及如何配置和定制其行为。...
【描述】虽然描述为空,但我们可以推测这个教程可能涵盖了如何在MyEclipse中导入并配置AppFuse2项目,以及如何将配置好的应用部署到Tomcat6上运行。通过链接(已省略)访问的博客文章,读者可能会了解到详细的步骤,...
如果尝试使用Ant来构建Appfuse 2.0,可能会遇到问题,因为官方已不再推荐使用Ant。 #### 四、安装Maven 接下来详细介绍如何在Windows 2000/XP环境下安装Maven 2.0.6: 1. **下载Maven**:访问官网 ...
2. 生成项目后,使用`mvn appfuse:full-source`命令初始化项目。这个命令会处理ant存在的问题,特别是Windows环境下遇到的问题,确保$USER_HOME/.m2/repository目录存在并包含正确的settings.xml文件。 3. 接下来,...
AppFuse分为1.x和2.0两个主要版本,其中2.0版是重构建的,采用了Maven 2作为构建工具,而1.x版本则使用Ant。 Maven 2的引入带来了许多优势,包括自动下载依赖项、简化维护(因为所有组件可以一次编译)以及方便最终...
AppFuse旨在帮助开发者简化项目启动过程中的复杂配置工作,提供了一套标准的目录结构、构建文件以及项目类,使得开发者能够专注于业务逻辑的实现而非基础架构的搭建。它支持多种流行的开源工具和技术框架,如Ant、...
解决问题的方法通常涉及调试JavaScript代码、检查服务器日志,或者查阅FCKeditor和APPFuse的官方文档。 7. **最佳实践**:集成FCKeditor时的最佳实践可能包括使用Maven的依赖管理、保持代码整洁、编写单元测试来...
在本文中,我们将深入了解如何安装并部署 AppFuse 项目。 **1. 预备知识** 在开始之前,确保你已经具备以下基础: - 熟悉 Java 开发环境,例如 JDK 已经正确安装。 - 理解 Maven 构建工具的基本概念和使用方法。 - ...
在硬盘上创建一个项目根目录,例如 `E:\appfuse2-ly`。 **2. 使用 Maven 创建 Appfuse 项目** 在命令行中切换到项目根目录,然后输入以下命令: ```bash mvn archetype:create -DarchetypeGroupId=org....
使用appfuse2建立项目原型骨架的步骤 appfuse2 项目原型 骨架
appfuse2.0.2 Struts2 hibernate Spring 构建的基于SQLServer2005 的ssh2项目的过程全记录 网上很多帖子介绍appfuse2构建过程的,但是基于SQLServer2005的没有,顶多一笔带过,另外对于期间出现的各种问题也没有个说明,...
这个版本的Velocity依赖包可能包含了所有必要的依赖,使得在AppFuse项目中直接使用Velocity模板变得简单。 7. **mysql-connector-java-5.0.5.jar**:这是MySQL的JDBC驱动程序,用于连接到MySQL数据库。这个版本的...