`

velocity 1.6.4的一个bug

    博客分类:
  • java
阅读更多

     $.ajax()在Velocity中会冲突, 总之这个是velocity的一个bug,直接比如在evaluate $.trim的时候,会输出.tirm, $被无缘无故的吃掉了,直接上代码:


import java.io.StringWriter;

import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;

public class VelocityTest{
	
	public static void main(String[] args) {
		//String js = FileUtils.readFileToString(new File("D:/template.txt"),"UTF-8");
		String js = "$.trim";
		try {
		    Velocity.init();

		    VelocityContext context = new VelocityContext();

		    StringWriter w = new StringWriter();
		    Velocity .evaluate(context, w, "", js);
		    
		   
		    js = w.toString();
		    System.out.println(js);
		} catch (Exception e) {
		    e.printStackTrace();
		}
	}
	
}



    这个问题在velocity 1.7一下的版本里面会输出.trim, 但是在1.7 beta里面将这个问题修复了,所以大家在使用的时候注意一下,我已经给项目升级了velocity版本了。另外1.7也支持了一种新的语法 ##[[保留内容]]##, 所以大家把不需要替换的东西放到这个块里面就更安全了。
分享到:
评论

相关推荐

    velocity-1.6.4

    【Velocity-1.6.4】是一个经典的Java模板引擎,其设计目的是为了简化网页和邮件等动态内容的生成。在Java开发中,Velocity提供了一种将业务逻辑与表现层分离的方法,让开发者能够专注于应用程序的核心功能,而把页面...

    velocity-1.6.4.jar

    java运行依赖jar包

    velocity-1.6.3_Src_jar.zip

    比如,在Web应用中,开发者可以创建一个包含用户信息的模板,然后通过Velocity Engine填充上下文中的用户数据,生成个性化的邮件内容。 通过研究"velocity-1.6.3_Src_jar"的源代码,开发者可以深入了解其内部实现...

    velocity jar包

    Velocity是Apache软件基金会的一个开源项目,它是一款强大的模板引擎,主要用于生成动态Web内容。Velocity以其简单易用、高效稳定的特点,在Java开发中被广泛应用。它通过分离内容与表现层,帮助开发者实现更清晰的...

    velocity-1.5.jar,velocity-1.6.2-dep.jar,velocity-tools-1.3.jar

    Velocity是Apache软件基金会的一个开源项目,它是一款强大的模板引擎,主要用于生成动态Web内容。 Velocity的主要优点在于其简单易用和高度可扩展性,使得开发者能够将业务逻辑与表现层分离,提高代码的可读性和维护...

    velocity的所有jar包

    Velocity是一个开源的Java模板引擎,它允许开发者将HTML与Java代码分离,使Web开发者能够更专注于页面设计,而程序员则可以处理业务逻辑。这个压缩包包含了Velocity运行所需的四个核心JAR文件,它们分别是: 1. **...

    velocity架包合集

    用于velocity,里面一共包含了五个文件 velocity-1.6.4.jar,velocity-tools-1.3.jar,commons-beanutils-1.7.0.jar,commons-collections-3.2.1.jar,commons-lang-2.6.jar

    Spring Velocity简单的一个例子(转)

    Spring Velocity是一个将Velocity模板引擎与Spring框架集成的示例,这个例子主要展示了如何在Spring应用中使用Velocity来渲染动态内容。Velocity是一个Java模板引擎,它允许开发者将逻辑和表示分离,使得网页设计...

    velocity的jar包

    Velocity是Apache软件基金会的一个开源项目,它是一个基于Java的模板引擎,用于生成动态网站内容。Velocity被设计成一个轻量级的、快速的、非侵入式的模板语言,使得开发者能够将HTML页面的展示逻辑与业务逻辑分离,...

    velocity所需的jar包

    Velocity是一个强大的模板引擎,常用于Java应用程序中的动态内容生成,比如HTML、XML或者电子邮件。它以其简洁、可读性强的语法以及与Java对象的紧密集成而受到开发者的欢迎。在开发Velocity项目时,确保拥有正确的...

    velocity插件

    MyEclipse 10 是一个强大的 Java EE 开发平台,它集成了多种功能,包括代码编辑、调试、部署等。通过安装 Velocity 插件,开发者可以享受到以下几点便利: 1. **智能提示**:在编写 Velocity 模板时,插件会提供...

    基于Velocity的代码生成器

    `velocity-1.6.4.jar`是Velocity库的JAR文件,包含了 Velocity 的所有类和方法,如`VelocityContext`(用于存储和传递数据到模板)、`Template`(表示一个模板对象)以及`VelocityEngine`(负责解析模板和合并数据)...

    Velocity-API.chm--采用官方文档制作-超值的Velocity API参考文档。

    Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。 当Velocity应用于web开发时,界面设计人员可以和java程序开发人员...

    velocity为空判断

    Velocity是Apache软件基金会的一个开源项目,它是一个模板引擎,用于将HTML、XML或其他类型的文档与数据源结合起来,生成动态内容。在使用Velocity作为视图层处理数据时,常常需要进行空值判断,确保模板能够正确地...

    velocity相关的四个jar包

    Velocity是一个开源项目,它提供了一种简单、快速且可扩展的方式来生成动态内容。本篇将详细解释标题和描述中提到的四个关键jar包及其在Velocity中的作用。 1. **velocity-1.4.jar**:这是Velocity的核心库,包含了...

    velocity-1.5.jar.zip( 359 k)

    Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。 当Velocity应用于web开发时,界面设计人员可以和java程序开发人员...

    Velocity 和 FreeMarker区别

    - **Velocity**:是一个基于Java的模板引擎,它允许开发者使用简单的模板语言(Template Language, TL)来生成各种类型的文档。 - **FreeMarker**:同样是一种基于Java的模板引擎,它提供了一个强大的模板语言,支持...

    velocity-1.7.jar

    **velocity-tools-2.0** 是Velocity的一个扩展工具集,提供了额外的功能和便利性,例如: 1. **ViewTools**:一系列预定义的工具类,如日期/时间处理、国际化支持、URL编码等,简化了在模板中的常见任务。 2. **...

    velocity web开发

    在Web开发领域,Velocity是一个非常重要的模板引擎,它被广泛应用于生成动态网页内容。Velocity由Apache软件基金会开发并维护,是Apache Jakarta项目的一部分。其设计目标是提供一个简单易用但功能强大的工具,用于...

    velocity-1.7-sources.zip

    Velocity 是一个基于 Java 的模板引擎框架,提供的模板语言可以使用在 Java 中定义的对象和变量上。Velocity 是 Apache 基金会的项目,开发的目标是分离 MVC 模式中的持久化层和业务层。但是在实际应用过程中,...

Global site tag (gtag.js) - Google Analytics