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

maven的jetty插件提示No Transaction manager found导致启动慢的解决方法

 
阅读更多

 

参考 http://jira.codehaus.org/browse/JETTY-1503

写道
Don't forget you can use the following to specify which jars to scan in your webapp:

org.eclipse.jetty.server.webapp.WebInfIncludeJarPattern
eg
./.*foo-api-[^/]\.jar$|./.*bar-[^/]\.jar$|./.*wibble[^/]\.jar$

 

在使用maven开发web项目极大地方便了jar包的依赖,在测试时也可以集成Servlet容器,从启动速度和量级上看,Jetty无疑是不二选择, 然而从8.x开始,如果你的web项目中不包含数据库访问(或者说没有事务管理器)的话,在其启动时会提示找不到事务管理器,输出信息如下:

 

oejpw.PlusConfiguration:No Transaction manager found - if your webapp requires one, please configure one.

 

 

而且启动过程会暂停十几秒,在反复调试代码时很浪费时间,经过多天在网上搜索资料,终于找到了解决办法。

 

首先是pom.xml中关于插件的配置:

 

<plugin>
  <groupId>org.mortbay.jetty</groupId>
  <artifactId>jetty-maven-plugin</artifactId>
  <version>8.1.16.v20140903</version>
    <configuration>
    <jettyXml>conf/jetty.xml,conf/jetty-ssl.xml</jettyXml>
    <contextXml>conf/jetty-contexts.xml</contextXml>
    <scanIntervalSeconds>10</scanIntervalSeconds>
     <webApp>
      <contextPath>/</contextPath>
    </webApp>
  </configuration>
</plugin>

 

重要的是加上

<contextXml>

配置,我们要对jetty的服务器属性进行配置。本例中把配置文件放到了/src/main/resources中(如果你不希望打包时带上这个文件,可 以放到/src/test/resources中,改下配置即可),文件名为:jetty-context.xml。接下来是配置文件:

 

<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">

<!-- =============================================================== -->
<!-- Add a ContextProvider to the deployment manager                 -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- This scans the webapps directory for war files and directories  -->
<!-- to deploy.                                                      -->
<!-- This configuration must be used with jetty-deploy.xml, which    -->
<!-- creates the deployment manager instance                         -->
<!-- =============================================================== -->
<Configure id="Server" class="org.eclipse.jetty.webapp.WebAppContext">
	<Call name="setAttribute">
		<Arg>org.eclipse.jetty.server.webapp.WebInfIncludeJarPattern</Arg>
		<Arg>.*/.*jsp-api-[^/]\.jar$|./.*jsp-[^/]\.jar$|./.*taglibs[^/]*\.jar$
		</Arg>
	</Call>
</Configure>  

 

 

http://laravel.iteye.com/

 

0
0
分享到:
评论
1 楼 xiaosong0112 2015-12-30  
您好,请问为什么要这样设置呢,原理是什么?在网上很多转帖都没有说。

相关推荐

    maven-jetty-plugin

    4. **与Maven生命周期集成**:Maven Jetty Plugin提供了多个目标(goals),例如`jetty:run`用于启动服务器,`jetty:stop`用于停止服务器,这些目标可以与Maven的生命周期阶段结合,方便地在构建过程中调用。...

    maven项目下用 jetty 启动热部署

    3. **运行Jetty插件**:在命令行中,我们可以使用Maven命令来启动Jetty服务器。在项目根目录下,执行以下命令: ``` mvn jetty:run ``` 这将启动Jetty服务器并加载项目。如果配置正确,现在你每次修改源代码后,...

    maven集成jetty所需jar包maven-jetty-plugin,多版本

    - 使用旧版本的`maven-jetty-plugin`可能会导致某些新特性无法使用或与其他库冲突,因此保持插件更新是很重要的。 6. 结论: `maven-jetty-plugin`简化了Java Web应用的开发和测试过程,通过Maven的命令行即可...

    Maven Jetty 插件的问题(css/js等目录死锁)的解决

    ### Maven Jetty 插件的问题(css/js等目录死锁)的解决 #### 背景介绍 在软件开发过程中,Jetty作为一个轻量级的Web服务器,常常被用于Java Web项目的开发与测试环境中。然而,在使用Maven Jetty插件进行项目构建...

    maven jetty

    对于Jetty集成,我们通常会用到Maven Jetty插件,它允许我们在开发过程中直接通过Maven命令启动Jetty服务器,而无需部署到正式的Servlet容器中。 ** Maven Jetty插件的配置 ** 在Maven的pom.xml文件中,我们需要...

    jetty 6 maven官方插件

    jetty 6 maven官方插件 ,在maven官网下载的

    Maven与Jetty

    Maven是一个项目管理工具,它帮助开发者构建、管理和部署Java项目,而Jetty则是一个轻量级的嵌入式Servlet容器,常用于快速启动Web应用程序。这篇内容将深入探讨如何将两者结合,以便在开发过程中实现高效且便捷的...

    maven+jetty

    在IT行业中,Maven和Jetty是两个非常重要的工具,它们在Java开发中扮演着关键的角色。本篇文章将深入探讨如何在IntelliJ IDEA(IDEA)中整合Maven和Jetty,创建一个简单的实例,以便快速开发和测试Java Web应用。 ...

    Maven + Jetty Plugin

    通过在Maven的`pom.xml`文件中添加Jetty插件,开发者可以在开发过程中快速启动和调试Web应用,无需每次都打包和部署到完整的应用服务器。 首先,我们需要了解Maven的插件系统。Maven插件是Maven生命周期的一部分,...

    maven-jetty-jspc-plugin-6.1.25-sources.jar

    maven-jetty-jspc-plugin-6.1.25-sources.jar

    maven +jetty 配置web工程

    要配置`Maven + Jetty`,我们需要在`pom.xml`文件中添加Jetty Maven插件。以下是一个示例配置: ```xml ... ... &lt;groupId&gt;org.mortbay.jetty &lt;artifactId&gt;maven-jetty-plugin &lt;version&gt;6.1.26...

    Eclipse+maven+jetty开发环境搭建

    - **创建Maven项目**: 使用Eclipse的新建项目向导,选择“Maven Project”,根据提示创建一个标准的Maven Web应用项目。 - **添加Jetty插件**: 在`pom.xml`文件中,添加Jetty插件依赖,例如: ```xml ...

    jetty+maven webapp,http,https实现的简单demo

    通过Maven的jetty插件,可以很容易地运行你的Web应用。在命令行中执行以下命令: ``` mvn jetty:run ``` 现在,你可以通过HTTP(http://localhost:8080/hello)和HTTPS(https://localhost:8443/hello)访问你的应用...

    apache-maven的插件包:apache-maven-3.3.9-bin.zip

    Maven 的插件系统是其核心功能之一,允许开发者通过安装和配置各种插件来扩展Maven的功能。 标题中的"apache-maven-3.3.9-bin.zip"是一个包含Apache Maven 3.3.9版本的二进制发行包。这个版本发布于2015年,是Maven...

    jetty插件包

    Jetty插件是一种用于集成Jetty服务器到其他开发环境或构建流程中的工具。Jetty是一款轻量级、高性能的Java Web服务器和HTTP协议栈,它广泛应用于各种项目,包括Servlet容器、WebSocket支持以及用于测试和部署Web应用...

    jetty 插件

    5. **构建工具集成**:与Maven、Gradle等构建工具无缝集成,可以在构建过程中自动启动Jetty进行测试和部署。 6. **资源管理**:Jetty插件可以管理Web应用所需的静态资源,如HTML、CSS、JavaScript文件,以及图片和...

Global site tag (gtag.js) - Google Analytics