web-applications – 获取maven-jetty-plugin以部署war并同时提供外部静态内容

web-applications – 获取maven-jetty-plugin以部署war并同时提供外部静态内容,第1张

概述我正在使用maven-jetty-plugin为Web应用程序编写集成测试.我在预集成测试阶段使用部署战争目标. Web应用程序依赖于我想通过从同一个jetty实例提供静态内容来模拟的另一个Web应用程序. 这是我的码头配置的相关部分: <execution> <id>start-jetty</id> <phase>pre-integration-test</phase> 我正在使用maven-jetty-plugin为Web应用程序编写集成测试.我在预集成测试阶段使用部署战争目标. Web应用程序依赖于我想通过从同一个jetty实例提供静态内容来模拟的另一个Web应用程序.

这是我的码头配置的相关部分:

<execution>    <ID>start-jetty</ID>    <phase>pre-integration-test</phase>    <goals>        <goal>deploy-war</goal>    </goals>    <configuration>        <connectors>            <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">                <port>${jetty.port}</port>            </connector>        </connectors>        <daemon>true</daemon>        <webApp>${build.directory}/motown2-war.war</webApp>        <webAppConfig>            <extraClasspath>${basedir}/target/classes/;${basedir}/target/test-classes</extraClasspath>            <contextpath>/${context.path}</contextpath>        </webAppConfig>        <contextHandlers>                       <contextHandler implementation="org.mortbay.jetty.webapp.WebAppContext">                <contextpath>/other</contextpath>                <resourceBase>/opt/data</resourceBase>            </contextHandler>        </contextHandlers>    </configuration></execution>

我基于这个配置
http://blog.markfeeney.com/2009/12/scala-lift-jetty-6-static-content-and.html,
但是上下文处理程序的配置似乎被忽略了.我不能
在日志文件中找到这个跟踪,jetty返回404而不是静态
内容,网络应用程序本身正在运行.

我错过了什么?

解决方法 我想到了:

resourceHandlers配置仅适用于jetty:run目标,所以我现在
在我的测试项目中使用空webapp,它将webapp覆盖到
测试:

<execution>    <ID>start-jetty</ID>    <phase>pre-integration-test</phase>    <goals>        <goal>run</goal>    </goals>    <configuration>        <connectors>            <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">                <port>${jetty.port}</port>            </connector>        </connectors>        <daemon>true</daemon>        <webApp>${build.directory}/motown2-war.war</webApp>        <webAppConfig>            <extraClasspath>${basedir}/target/classes/;${basedir}/target/test-classes</extraClasspath>            <contextpath>/${context.path}</contextpath>            <baseResource implementation="org.mortbay.resource.ResourceCollection">                <resourcesAsCSV>../motown2-war/src/main/webapp,src/main/webapp</resourcesAsCSV>            </baseResource>        </webAppConfig>        <contextHandlers>                       <contextHandler implementation="org.mortbay.jetty.webapp.WebAppContext">                <contextpath>/other</contextpath>                <resourceBase>/opt/data</resourceBase>            </contextHandler>        </contextHandlers>    </configuration></execution>
总结

以上是内存溢出为你收集整理的web-applications – 获取maven-jetty-plugin以部署war并同时提供外部静态内容全部内容,希望文章能够帮你解决web-applications – 获取maven-jetty-plugin以部署war并同时提供外部静态内容所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1058956.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存