Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 嵌入jetty服务器问题_Java_Web Services_Jetty_Embedded Jetty - Fatal编程技术网

Java 嵌入jetty服务器问题

Java 嵌入jetty服务器问题,java,web-services,jetty,embedded-jetty,Java,Web Services,Jetty,Embedded Jetty,我在将jetty服务器嵌入java应用程序时遇到了一些困难。我使用spring来配置实际对象,我可以毫无问题地构建webapp-但我在启动服务器时遇到了这个问题 0 [main] INFO test.Server - Starting server in 'c:/workspace/test/war/' on port 9090 34615 [main] INFO test.Server - Using resource base: src/main/webapp 34615 [main]

我在将jetty服务器嵌入java应用程序时遇到了一些困难。我使用spring来配置实际对象,我可以毫无问题地构建webapp-但我在启动服务器时遇到了这个问题

0 [main] INFO test.Server  - Starting server in 'c:/workspace/test/war/' on port 9090
34615 [main] INFO test.Server  - Using resource base: src/main/webapp
34615 [main] INFO test.Server  - Using descriptor file: src/main/webapp/WEB-INF/web.xml
2011-09-05 12:29:36.961:INFO::Logging to STDERR via org.mortbay.log.StdErrLog
36344 [main] INFO test.Server  - Starting Server!
2011-09-05 12:29:37.023:INFO::jetty-6.1H.22
2011-09-05 12:29:37.039:WARN::Failed startup of context org.mortbay.jetty.webapp.WebAppContext@8ab708{/TestServer,file:/C:/workspace/test/war/src/main/webapp/}
java.lang.ClassNotFoundException: org.mortbay.jetty.plus.webapp.EnvConfiguration
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
    at org.mortbay.util.Loader.loadClass(Loader.java:91)
    at org.mortbay.util.Loader.loadClass(Loader.java:71)
    at org.mortbay.jetty.webapp.WebAppContext.loadConfigurations(WebAppContext.java:859)
    at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:431)
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
    at org.mortbay.jetty.Server.doStart(Server.java:224)
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
    at test.Server.main(Server.java:84)
2011-09-05 12:29:37.054:INFO::Started SocketConnector@0.0.0.0:9090
问题似乎出在我的一些path内容上……dir结构是直截了当的(maven‘推荐的’)-

工作区/测试/战争/ -src/main/java/test/Server.java -src/main/webapp/WEB-INF/WEB.xml

除此之外,它还属于我在web.xml中设置的spring内容,该内容已经过验证(通过tomcat)

main中的相关代码如下(否则就是属性垃圾):

任何帮助都是很好的…有帮助的。这是我第一次尝试创建自己的web服务器(因此也欢迎其他建议!)

尝试包括

<dependency>
    <groupId>org.eclipse.jetty</groupId>
    <artifactId>jetty-jndi</artifactId>
    <version>${jetty.version}</version>
</dependency>

org.eclipse.jetty


祝你好运

尝试将jetty-plus.jar添加到类路径中。我不知道为什么需要org.mortbay.jetty.plus.webapp.EnvConfiguration。也许我在问一个愚蠢的问题,但如果你想在Java应用程序中嵌入jetty,为什么您需要web.xml?只需使用嵌入式jetty并启动服务器在这种情况下,您需要一个来使用webapp体系结构-web app需要一些描述符。我认为jetty是一个简单的web服务器,可以处理容器映射(将GET/POST/等映射到适当的servlet)。在本例中,我有一个webapp(自包含)并使用jetty功能(我的基础是:)。这不是预期用途吗?
<dependency>
    <groupId>org.eclipse.jetty</groupId>
    <artifactId>jetty-jndi</artifactId>
    <version>${jetty.version}</version>
</dependency>