我目前遇到工作中的问题我一直在抨击我的公平对待,并希望这里有人能够提供一些帮助。我想指出这是我的第一个问题,所以我很抱歉,如果可以更好地格式化,请随时告诉我是否应该添加任何内容。使用Jetty作为Java EE应用程序服务器
我们的应用程序在过去的几个月里一直很喜欢TomEE服务器,但是最近我们公司的一些高层告诉我们必须使用Jetty。不幸的是,试图劝阻他们不会是一种选择,除非我们能够证明使用Jetty对我们来说实际上是不可能的。
我已经尝试建立一个Jetty服务器,但我一直专注于使用maven-jetty插件。我们在过去的Tomae-Maven插件方面取得了巨大的成功,所以我希望这一切都会有效。
不幸的是,我们没有使用这种方法。我知道Jetty不是JavaEE服务器,所以我们尝试添加依赖关系。看看我们的做法:
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>9.3.9.v20160517</version>
<dependencies>
<dependency>
<groupId>org.apache.openejb</groupId>
<artifactId>javaee-api</artifactId>
<version>6.0-6</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.3.2.Final</version>
</dependency>
<dependency>
<groupId>org.jboss.weld.se</groupId>
<artifactId>weld-se-core</artifactId>
<version>1.1.33.Final</version>
</dependency>
<dependency>
<groupId>org.apache.openejb</groupId>
<artifactId>openejb-core</artifactId>
<version>4.7.4</version>
</dependency>
</dependencies>
</plugin>
不幸的是,每一次尝试在同一网址与我们的应用程序,我们使用TomEE给了我们404请注意,我们的Java代码没有因为试图迁移任何改变到码头。
我做了很多谷歌搜索,并拿出很少。 This发现了SE问题,但是它在Jetty 6的时代被写回。我们使用的是Jetty 9,所以Servlet版本不再是问题。
那么,有没有人认为这可以做到?
更多详细信息: 我们正在使用JavaEE 6, 我们专注于获取CDI和Bean验证,其他EE功能并不重要。
这是完全可行的,可能不是太困难,但是您可能需要从一个骨架项目开始。简单地添加Maven依赖关系可能是不够的。 只是习惯于先启动jetty并首先暴露一个servlet。然后添加焊接和您需要的任何其他功能。例如,按照焊接文档中的说明进行操作:http://www.eclipse.org/jetty/documentation/9.3.x/framework-weld.html –
另外,它可能刚刚起作用。 jetty在与tomcat不同的默认端口上启动。 –
我也会首先将你的应用程序放在jetty-distribution中,根据需要启用cdi模块,等等。然后,一旦你有这个工作步骤回到Maven插件用于开发目的。您不应该将任何Maven插件用于“生产”部署场景。 –