当前位置: 首页 > 知识库问答 >
问题:

如何将Jetty作为一个支持JSP的OSGI包启动?

闾丘永春
2023-03-14

我正在使用Felix Framework将Jetty 9.2作为osgi包运行,在命令提示符下,Apache Felix的启动方式如下

java -Djetty.home=C:/osgiJars/jetty-osgi-boot-9.2.0.M0/jettyhome -jar bin/felix.jar

我的jetty home是这样的

启动felix框架后,在命令提示符中,我可以看到以活动状态加载的绑定列表。

g! 2014-06-27 11:56:03.129:INFO:/WebApp:qtp31392457-30: No JSP support.  Check that JSP jars are in
lib/jsp and that the JSP option has been specified to start.jar
java -Djetty.home=C:/osgiJars/jetty-osgi-boot-9.2.0.M0/jettyhome -Djetty.options=Server,jsp -jar bin/felix.jar

但仍然得到相同的错误。有谁好心的建议我如何配置我的JSP在这种情况下..?

共有1个答案

百里涛
2023-03-14

虽然有两个OSGi HttpService支持框架和更多的框架,但我从未尝试独立运行jetty。这是OPS4j Pax Web和Felix HttpService。它提供了所有您需要的开箱即用,并经过测试。它还使用Jetty作为底层服务器。也有大量的样本可供使用。
根据OSGi的精神,Pax Web是模块化的,所以如果您只需要一个HttpService,您将只使用所需的包Pax-Web-API、Pax-Web-SPI、Pax-Web-Runtime和Pax-Web-Jetty-Bundle(已经包含了Jetty包),或者如果更喜欢Pax-Web-Jetty+Jetty包。如果您想使用JSP,请添加它的支持包(即Pax-Web-JSP),也可能添加白板支持并设置好的包(Pax-Web-Extender-Whiteboard)。如果需要,您还可以使用wars/wab(Pax-Web-Extender-War)。

 类似资料:
  • 我正在尝试将embedded Jetty从旧版本()升级到最新版本()。我使用的是JSP,当前的maven依赖关系如下所示: 但是,我在maven Central中找不到这个依赖项的新版本。 在Jetty 9.3的之后,似乎没有发布新的jetty-jsp构件。所有其他与Jetty相关的工件的新版本都是可用的。 对于最新Jetty版本的JSP支持,我应该使用什么替代方案?

  • 我是OSGI的新手,也是Apache Felix的新手。 在“Apache Felix Web Console Bundles”中,我可以通过start、stop、update、install和remove按钮来控制一个bundle。我已经制作了一个能够自动控制OSGI的包。这个捆绑包可以启动、停止、安装、更新和删除其他捆绑包。所以我不再需要“Apache Felix Web Console Bu

  • 我正在升级我的jetty 9.2服务器,运行一些webapp,使用tanukisoftware包装器在我的服务器上运行。然而,向apache-jsp的切换似乎引入了各种依赖问题。我甚至不能再呈现JSP页面了!

  • 要给工程获取支持,需要创建并交流一个能够证明这个组织整体的真正价值的愿景。试着让其他人分享他们对你的创造的愿景的观点。这给他们一个理由去支持你并给予你他们的智慧。独立地为你的工程补充关键的支持者。不论在什么可能的地方,展示,但不告诉。如果可能的话,构建一个原型或者一个模型来证明你的主意。一个原型总是有力的,但在软件中,它比任何书面的描述都要高级得多。

  • 我试图通过Ajax调用将jsp页面包含在另一个页面中。问题是,如果要包含的页面在html元素之间有一些空格,它将使插入失败。 例如,下面是我的演示index.jsp: 下面是要包含的 hello.jsp 页面(元素标记之间没有空格,否则包含将失败): 而这个 servlet 只有一个什么都不做(目前)doGet 方法。 对你们所有人来说都是一样的吗?我的代码有问题吗?是否有其他工作方式来完成相同的

  • 我正在创建一个运行在Eclipse之外的无头OSGI服务器。我使用Jetty作为我的Servlet容器,使用Equinox作为我的OSGI容器。我正在使用包将Jetty添加到OSGi中。如果我从提示符手动启动jetty和org.eclipse.equinox.http.registry,那么它就可以正常运行。但是,我希望这是在无人值守的情况下运行的,所以我需要在OSGi启动时自动(或者至少是编程方