Encoding 小门——”;“加倍”;UTF-8编码
我有一个Wicket 1.4应用程序。我的.html文件是UTF-8格式的 但是当呈现时,页面被双重编码,就像UTF-8内容被视为cp1250并转换为UTF8一样 Maven的pom.xml:Encoding 小门——”;“加倍”;UTF-8编码,encoding,build,wicket,Encoding,Build,Wicket,我有一个Wicket 1.4应用程序。我的.html文件是UTF-8格式的 但是当呈现时,页面被双重编码,就像UTF-8内容被视为cp1250并转换为UTF8一样 Maven的pom.xml: <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> ... <plugin> <inherite
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
...
<plugin>
<inherited>true</inherited>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
<optimize>true</optimize>
<debug>true</debug>
<encoding>utf-8</encoding>
</configuration>
</plugin>
UTF-8
...
符合事实的
org.apache.maven.plugins
maven编译器插件
1.6
1.6
符合事实的
符合事实的
utf-8
你知道我该查什么吗
更新:我找到了答案,请参见下文。但是,我可以设置读取资源时应该使用的默认编码吗?应用程序中的设置优先于环境变量
谢谢,
OndraWicket关注XML序言。因此,缺少的是
<?xml version="1.0" encoding="UTF-8"?>
Wicket注意XML序言。因此,缺少的是
<?xml version="1.0" encoding="UTF-8"?>
在面板的.html文件中。org.apache.wicket.settings.settings有一个
setDefaultMarkupEncoding()
方法,该方法应该可以执行您想要的操作。org.apache.wicket.settings.settings
有一个setDefaultMarkupEncoding()
方法,这应该是你想要的。我很惊讶这不是默认值,至少在从jar文件内部读取时是这样。在Wicket 6+:getMarkupSettings().setDefaultMarkupEncoding(“UTF-8”);我很惊讶这不是默认值,至少在从jar文件内部读取时是这样。在Wicket 6+:getMarkupSettings().setDefaultMarkupEncoding(“UTF-8”);我认为这更便于移植,特别是考虑到页面/组件可以嵌入(视为库)到另一个应用程序中,并且父应用程序可能有不同的设置。虽然UTF-8
无疑是一种最佳实践,但在某些情况下,强制应用程序不使用任何其他编码是不实际的。我认为这更便于移植,特别是考虑到页面/组件可以嵌入(视为库)到另一个应用程序中,并且父应用程序可能具有不同的设置。虽然UTF-8
无疑是一种最佳实践,但在某些情况下,强制应用程序不使用任何其他编码是不切实际的。