首页 文章

如何通过jnlp向许多webapps提供jetty?

提问于
浏览
3

我有一个webapp(http://sourceforge.net/projects/sf-mvn-plugins/files/m2-repo/net/sf/maven/plugins/example-captaincasa-jnlp/0.1-SNAPSHOT/example-captaincasa-jnlp-0.1-SNAPSHOT.war/download),它在servlet容器中使用jsf . 这适用于我本地电脑上的jetty-maven-plugin run-war目标 . 在未来,我想更多的这种weapps .

现在我正在寻找一种通过jnlp与jetty一起提供这个webapps的方法 . 最终用户应该没有安装,但是webapps需要servlet容器,而我的hoster不支持servlet容器或应用程序服务器等 .

我不喜欢嵌入式解决方案,因为在这种情况下,每个webapp必须与一个单独的jetty交付,并且运行时使用单独的码头 - >太大 - >到许多下载大小等等 .

架构应该类似于:architecture http://tmichel.users.sourceforge.net/files/Architecture.png

示例:Bundle1可以包含jetty并部署webapp1,Bundle2可以包含jetty并部署webapp1和webapp2(与最终用户的需求相关,我想提供我的webapps的许多变体)

但是我的问题是什么? 1)需要哪些码头?我想将这些上传到我的主页进行托管 . 2)我应该使用哪个 jar 作为主要 jar 通过jnlp启动他? 3)我应该使用哪个主类通过jnlp启动jetty? 4)我可以使用配置码头来说这是webapp1的战争,这是webapp2的战争....或者这是用于热部署的weapps的目录......?

对我来说重要的问题是1)如果这是回答所以我可以运行jetty本地(没有maven插件)和通过手动也许我可以解决其余2-4 .

谢谢你的想法

托马斯

2 回答

  • 1

    为什么不部署一个普通的Java应用程序(带有 main() 等),通过其Server类以编程方式调用Jetty?该类通过代码配置适当的上下文,servlet类等 .

    我成功之前就已经做到了 . 唯一令人头疼的是运行一个Jetty,并根据要求下载多个应用程序(如果我正确阅读了您的问题) . 你可以使用一些类加载魔法,并从远程URL按需加载类/应用程序?

  • 1

    我今天找到了另一种方式 . 这也很有趣 . 这是概念:

    • 使用java webstart安装osgi容器

    • 使用捆绑包x或osgi服务下载应用程序的所有捆绑包

    • 使用码头捆绑提供码头支持

    然后安装应用程序

    我从这篇文章中得到了这个想法:http://www.toedter.com/blog/?p=45

相关问题