`
rsljdkt
  • 浏览: 454377 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Struts2和Groovy集成的一些问题与解决方案

阅读更多

乱码解决方案

  • 问题描述:

使用Tomcat7.05+Eclipse3.6,集成Struts2和Groovy,Groovy类作为Struts的Action,JSP页面采用UTF-8编码,但页面输出中偶尔会出现中文乱码,注意,并不是总是,有时重新部署一下或者修改一下groovy文件甚至多刷新几次页面,乱码就会消失,但不是总能成功。

  • 解决方案:

下载Groovy源码,修改groovy.uti.GroovyScriptEngine类(src\main\groovy\util.GroovyScriptEngine.java),将本人使用的Groovy版本是groovy-1.7.6。将第459行代码注掉:

//clazz = groovyLoader.parseClass(DefaultGroovyMethods.getText(conn.getInputStream(), encoding), path);

 

在其下面添加如下代码:

clazz = groovyLoader.parseClass(DefaultGroovyMethods.getText(conn.getInputStream()), conn.getURL().getPath());

 

重新编译Groovy项目:(本人使用Maven)
打开Cmd窗口,Cd 到groovy-1.7.6目录下,输入一下:

mvn package

 原理很简单,就是把encoding参数去掉,因为getText方法默认使用系统本地编码。

参考:http://philix.iteye.com/blog/704046

<s:debug>标签和Groovy Action不兼容

  • 问题描述:

在JSP页面中使用<s:deblug>标签调试时,会出现Groovy写的Action类没有metaClass属性的异常:

ognl.NoSuchPropertyException: org.rsljdkt.struts2.struts2groovy.action.BookAction.metaClass

  • 解决方案:

出现的具体原因我也未深究,直接在Groovy Action类中添加一个getMetaClass()方法:

def groovy.lang.MetaClass getMetaClass(){
		 this.metaClass
	}

 

0
0
分享到:
评论

相关推荐

    spring3.1+hibernate4.1+struts2整合jar包

    这个整合的jar包为开发者提供了一站式解决方案,免去了单独下载和配置每个框架的麻烦。但是,随着技术的发展,Spring Boot和Spring Data JPA等新工具的出现,使得这样的传统整合方式逐渐减少,但理解这种整合方式...

    Struts2+Hibernate+Spring+自选语言

    这个整合为开发者提供了强大的MVC(Model-View-Controller)架构支持,以及持久层和业务逻辑层的解决方案。 **Struts2** 是一个基于MVC设计模式的Web应用框架,它主要负责处理用户请求,通过Action来执行业务逻辑,...

    struts-scripting-1.0.1

    此外,社区支持和更新可能会变得有限,因此在新项目中,建议考虑采用更现代的解决方案。 总之,Struts Scripting 1.0.1是一个早期的尝试,它在当时为Struts框架带来了脚本语言的灵活性,但随着技术的演进,现在已经...

    SSH(Struts2,Spring,Hibernate)框架gradle项目源码

    SSH框架是Java开发中常用的三大框架,分别是Struts2、Spring和Hibernate,它们协同工作,构建出高效、灵活的企业级应用程序。在这个名为"mySSH"的Gradle项目源码中,我们可以深入理解这三个框架的集成与应用。 ...

    spring3.0API.chm、hibernate3.6API、struts2API

    Spring框架是一个全面的后端开发解决方案,它提供了依赖注入(DI)和面向切面编程(AOP)的核心特性。Spring3.0版本引入了许多增强功能,包括对Java EE 6的支持、Groovy脚本支持、改进的AOP以及用于数据访问的更强大的...

    groovyexample

    Struts2 与 Groovy 结合,可以利用 Groovy 的灵活性来编写更加简洁、易读的控制器代码,同时保持与 Java 代码的无缝集成。 Spring 框架则是一个全面的后端开发解决方案,涵盖了依赖注入(DI)、面向切面编程(AOP)...

    struts2.3.4+spring3.1+hibernate4.0整合

    Spring框架则是一个全面的后端解决方案,它涵盖了依赖注入(DI)、面向切面编程(AOP)、数据访问、事务管理等多个方面。Spring3.1版本引入了Spring Expression Language (SpEL)、@Profile注解以及对Groovy的支持,...

    j2ee解决方案各种框架解决方案

    以上就是J2EE解决方案中涉及的一些关键框架和概念。在实际项目中,开发者通常会根据需求选择合适的组合,以构建高效、可维护的企业级应用。理解并熟练运用这些框架,是成为一名优秀的J2EE开发者的重要步骤。

    最新JasperReport3.7 iReport的java Web报表整合Struts2完整教程

    ### 最新JasperReport 3.7 iReport的Java Web报表整合Struts2完整教程 #### 一、iReport操作 ...此外,还讨论了常见的异常及其解决方法,帮助开发者在实际开发过程中排除障碍,顺利完成报表功能的集成。

    Java技术分析报告

    Java技术分析报告主要探讨了Java技术的未来发展趋势和...开发者需要关注新技术和框架的发展,以便选择最适合项目需求的解决方案。同时,掌握这些框架的基本原理和最佳实践,将有助于提升个人在Java开发领域的专业素养。

    IDEA + Gradle + SSM demo

    该项目的核心是SSM框架,这是一种广泛使用的Java企业级开发解决方案,由Spring框架提供依赖注入和事务管理,Struts2负责控制层逻辑,而MyBatis则专注于数据访问层。通过这个演示,开发者可以了解到如何将这些技术...

    java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource解决方案

    加载这些库到工程的方式因开发环境而异,以下是一些常见方法: - **IDE集成**:如果你使用Eclipse、IntelliJ IDEA等集成开发环境,可以通过"构建路径"或"Maven/Gradle依赖"设置将这些JAR文件添加到项目的类路径中。...

    idea文档.zip

    6. **问题排查与解决方案**:列出常见问题及其解决办法,帮助用户解决在使用过程中遇到的困扰。 对于想要学习或深入了解IntelliJ IDEA的用户,这份文档将是非常有价值的参考资料,它可以帮助用户快速上手并充分利用...

    jasperreports所有的jar包

    综合以上,这些jar包展示了JasperReports如何与其他Java库和框架协作,提供全面的报表解决方案。开发者可以利用这些库来设计复杂的报表模板,处理各种数据源,并将报表集成到SSH等企业级应用中。同时,通过Groovy和...

    java开源包7

    JSTUN 是另外一个用来解决穿越 NAT 进行通讯的 Java 解决方案,是 STUN 协议的 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一...

    Java开源Wiki系统分类列表.docx

    11. **UseModj**:集成Struts框架和Velocity模板,提供了多语言支持和RSS功能,以及文件和图片的上传与管理。 12. **Platypus Wiki**:这是一个语义化的Wiki系统,使用W3C标准元数据进行页面组织和管理,支持RDF、...

    基于Java语言的快速开发框架.zip

    2. **Spring框架**:Spring是最流行的Java开发框架之一,它提供了全面的企业级应用开发解决方案,包括依赖注入、面向切面编程、事务管理、数据访问和Web开发等。Spring Boot则进一步简化了Spring的应用启动和配置,...

    2012年SOA最佳技巧集 TOP 10.pdf

    在2012年,有许多新的Java Web应用工具被引入,如Spring MVC、Struts 2等,这些工具与传统的Java Web开发工具相比,提供了更多的功能性和灵活性。通过对这些新旧工具进行比较,开发者可以更好地理解它们各自的优点和...

    NotFoundException: org.apache.commons.dbcp.BasicDataSource异常的解决方法

    2. **解决方案**: - **手动添加JAR**:首先,你需要下载Apache Commons DBCP的JAR文件,可以从官方网站或者通过Maven仓库获取。然后将其添加到你的项目目录的`lib`文件夹,并确保在运行时系统能够找到这个JAR文件...

Global site tag (gtag.js) - Google Analytics