向JBoss中集成Spring一直都是比较令人头疼的事情。针对所有Spring与JBoss集成时的各种问题,JBoss社区推出了一站式解决方案: JBoss Snowdrop[1]。
这个项目共分为三个组件:
分别是:
* Snowdrop Deployers
用于向JBoss中部署用Spring撰写的独立库文件。
* Snowdrop VFS
用于在JBoss中支持Spring标记及类扫描。
* Snowdrop Weaving
用于在JBoss中支持Spring的AspectJ和JPA等特性。
由于Spring 2.5.x的一些设计问题,使其类扫描和标记功能并不支持JBoss AS的虚拟文件系统(VFS)。如果我们的项目中包含这样的Spring组件:
<import resource=”classpath*:METAINF/*.xml”/>
或者是使用了Spring标记,并制定标记扫描:
<context:component-scan base-package=”....”/>
那么当把这样的项目部署至JBoss时,就会遇到下面的错误:
java.util.zip.ZipException: error in opening zip file at java.util.zip.ZipFile.open(Native Method)
通过使用Snowdrop VFS,我们可以解决这个问题:首先是在项目中添加所需要的snowdrop组件,针对上面的问题,需要添加的为snowdrop-vfs:
<dependency>
<groupId>org.jboss.snowdrop</groupId>
<artifactId>snowdrop-vfs</artifactId>
<version>1.0.1.GA</version>
</dependency>
需要特别注意的是,如果是在JBoss 5.x中部署Spring项目,那么就需要使用snowdrop 1.x版本,高版本的snowdrop与JBoss 5.x并不兼容。上面的例子中使用的版本是1.0.1.GA。
接下来,把项目中的web.xml的配置进行一下修改,从原来的:
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc-servlet.xml</param-value>
</init-param>
</servlet>
变更为:
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc-servlet.xml</param-value>
</init-param>
<init-param>
<param-name>contextClass</param-name>
<param-value>org.jboss.spring.vfs.context.VFSXmlWebApplicationContext</param-value>
</init-param>
</servlet>
这样,就可以将用Spring项目集成部署至JBoss了。有关Snowdrop的更多使用方法,请参考Snowdrop项目文档[2] ,如果在使用方面遇到了问题,可以在Snowdrop的论坛[3]上提问获得解答。
[1] http://www.jboss.org/snowdrop
[2] http://www.jboss.org/snowdrop/documentation.html
[3] http://www.jboss.org/index.html?module=bb&op=viewforum&f=223
- 大小: 30.6 KB
分享到:
相关推荐
这两个jar包的使用,使得开发者在将Spring应用部署到JBoss服务器时,可以享受到更加平滑的集成体验,减少了配置和调试的时间。在实际应用中,通常需要将这些jar包添加到项目的类路径中,或者在JBoss的lib目录下,以...
Snowdrop 包是一个专门为 JBoss 设计的 Spring 部署工具,可以解决 Spring 项目在 JBoss 中的 Bean 扫描问题。我们可以从 JBoss 官方网站下载 Snowdrop 包,然后将其添加到项目中。 部署配置 在部署项目时,我们...
jboss-3.2.1.jar jbossall-client.jar jbosscx-client.jar jboss-jmx.jar jboss-jmx-rmi-connector-client-3.0.4.jar jboss-system-3.2.1.jar
snowdrop 用于java项目从tomcat迁移到jboss出现的问题
这些是一些WIP构建堆栈,用于使用Red Hat支持的映像(如UBI,OpenJDK)构建Spring Boot应用程序。 先决条件 要使用buildpack,您需要安装客户端pack 。 有关如何请参见此处的说明 并启动 安装 要创建Snowdrop ...
解决tomcat换jboss 7 项目正常启动但无法正常运行
snowdrop-vfs-1.1.0.GA.jar包
JBoss管理与开发核心技术..part1.rar
Snowdrop工具维护报价.xlsm
#snowdrop.vim snowdrop.vim是libclang包装器。 ##要求支持Vim +python 或 libclang动态链接二进制文件。 Windows:libclang.dll 的Mac:libclang.dylib 其他:libclang.so ##支持的转到定义/声明。 :...
SnowDrop 圣诞节雪花飘落效果.zip
以下是实施增强器所需的一般步骤: 需要一个新的Maven模块,该模块将驻留在新的github存储库中应该重新考虑Spring Boot BOM,因为可能缺少一些启动器或依赖项该代码需要开发,包括一个网页创建单元和集成测试需要...
请改用模块用法根据要检测的Spring项目类型,添加以下依赖项之一Spring MVC项目< dependency> < groupId>me.snowdrop</ groupId> < artifactId>opentracing-tracer-jaeger-spring-web-starter</ artifactId> ...
《Ox-Flowers17数据集:探索机器学习与强化学习在图像识别中的应用》 在信息技术领域,机器学习和强化学习是当前最炙手可热的研究方向,它们为解决复杂问题提供了强大的工具。而Ox-Flowers17数据集就是这样一个专门...
故事以冬季为背景,讲述了一朵花在寒冷的季节里渴望夏季的到来,最终在坚韧与期待中绽放的故事。 故事中的主角“雪滴花”生长在严冬之下,被冰冷的雪覆盖。当雨水穿透雪层接触到花的球茎时,它开始感受到外面世界的...
需要测试的springboot项目,过程中遇到了idea打jar包,应为MANIFEST.MF 文件夹和 MANIFEST.MF 文件不在项目根目录下,导致多次 在本地 java -jar 运行jar包失败,当然放到docker 里作为容器启动也是失败的,后来在 ...
这个文本是关于《雪花》(The Snowdrop)的故事,出自汉斯·克里斯蒂安·安徒生的一部作品。这篇故事是小学英语阅读素材,讲述了雪花从冬季到夏季生长的过程,寓含了生命的坚韧与成长的主题。 1. **故事背景**:故事...
daisy、番红花-crocus、风信子-bluebell、虎皮百合-tigerlily、款冬-coltsfoot、驴蹄草-cowslip、毛茛-buttercup、蒲公英-dandelion、三色紫罗兰-pansy、水仙花-daffodil、向日葵-sunflower、雪花莲-snowdrop、野...