问题标签 [pax-web]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1077 浏览

jetty - 如何在 Pax-Web 和白板模式中使用 servlet 过滤器

使用白板注册过滤器。

你好,

我正在尝试将 Servlet 过滤器与 servlet 一起使用。我正在使用 Pax-Web 3.0、声明式服务和白板。我必须声明服务组件(一个用于 servlet,一个用于过滤器),它似乎工作正常。

查看文档,我看到以下句子

对于 URL 模式,注册的模式必须已经映射,或者作为 Resource 或 Servlet 别名 - 例如,应该已经有一个 Resource 或 aServlet 注册到路径 /foo。对于 Servlet 名称,所使用的名称应该是在注册时明确赋予 Servlet 的名称(作为 servlet-name)。

在白板设置中如何保证这一点?我不知道 servlet 何时真正注册。我想我可以将 servlet 列为过滤器的依赖项,但这使得将过滤器用于多个 servlet 变得很棘手。

有没有更好的办法?

问候,弗兰克

0 投票
1 回答
196 浏览

osgi - 运行 Pax Web Jetty 时出错

我在 Equinox 中运行 Pax-Web(org.eclipse.osgi_3.5.0 包)。

我正在运行 pax-web-jetty-bundle_3.0.2 捆绑包

启动此码头捆绑包(pax web jetty)时会出现以下错误:

我找不到哪个包提供(导出)包 org.osgi.framework.wiring。org.eclipse.osgi 不是。

谢谢。

0 投票
1 回答
458 浏览

java - Android 上 Knopflerfish 上的 Pax Web

我计划从OSGi带有 Web 服务的 Android 开始,其中我将能够在 Android 浏览器上运行 Java Server Pages (jsp) 和 Java Servlet。

我的第一步是Knopflerfish在 Android 上安装。我从 knopflerfish 遵循了本教程:http ://www.knopflerfish.org/releases/5.0.0/docs/android_dalvik_tutorial.html

Knopflerfish 做得很好,我在 Android 手机的浏览器上看到了 localhost:8080。

我的第二步是安装Pax Web在也安装在 Android 上的 Knopflerfish 上。我也从这里遵循了他们的教程:http ://www.knopflerfish.org/kf_pax_web_tutorial.html

教程说:

卸载 KF HTTP 包

第一步是停止 HTTP 根包并卸载 JSDK 和 HTTP-server 包,因为 PaxWeb 将接管此功能。通常,您很可能还想卸载 HTTP-root-bundle,但在本教程中,我们将保留它的安装状态。确保在进行下一步之前刷新包。

然后:

安装 PaxWeb

第二步是从 PaxWeb 安装并启动以下包。

  • pax-web-jsp-1.0.2.jar(安装)
  • pax-web-jetty-bundle-1.0.2.jar(安装和启动)
  • pax-web-extender-war-0.8.0.jar(安装和启动)

捆绑包Pax Web已成功安装。


问题

Pax Web无法启动捆绑包。

当我尝试启动HTTP-root-IMP它是一个 Knopflerfish 包时,它在控制台上给了我这个错误消息。


另一个是我Pax Web将从 Knopflerfish 的教程中启动捆绑包。在这里,我尝试开始pax-web-jetty-bundle-1.0.2.jar (OPS4J Pax Web - Jetty Bundle)


最后,当我尝试运行pax-web-extender-war-0.8.0.jar (OPS4J Pax Web - Extender - War)此错误消息时,也会出现:


我也尝试启动pax-web-jsp-1.0.2.jar (OPS4J Pax Web - Jsp Support)显示此错误消息:


根据我从错误消息中了解到的情况,捆绑包正在寻找这些包。有什么办法可以解决这个问题,并能够使用 OSGi 框架在 Android 上成功运行 Java Web 应用程序?

0 投票
1 回答
366 浏览

android - 适用于 Android 的 Dexify Pax Web Jetty 捆绑包

我当前的项目需要 jar 文件/捆绑包dexified(编译为 dex 文件),我遇到了 dexifying,pax-web-jetty-bundle-3.0.2.jar但是当我执行dx为 jar 文件创建 classes.dex 的命令时,该命令给了我以下错误消息:

有什么办法可以让我去化pax-web-jetty-bundle-3.0.2.jar吗?

我在这里完成了我的初步步骤:Android 上 Knopflerfish 上的 Pax Web

但我被这个警告/错误消息困住了。

0 投票
1 回答
831 浏览

jetty - Karaf 和 Pax Web 码头特定的 SslConnectionFactory

我正在尝试在 Karaf 中设置一个特定的码头 SSL 上下文工厂(实际上是 Fabric8 (www.fabric8.io))。

我直接在 jetty.xml 文件中执行此操作: <New id="sslContextFactory" class="fr.maatg.pandora.sl.jetty.GridSslContextFactory"> ... </New>

当我启动容器时,Pax Web 会生成一个异常(完整异常https://gist.github.com/jrevillard/adb8e0bc0b1e9b568a67):

Caused by: java.lang.ClassNotFoundException: fr.maatg.pandora.sl.jetty.GridSslContextFactory not found by org.ops4j.pax.web.pax-web-jetty [100] at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1532) at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75) at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955) at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_51] at org.eclipse.jetty.util.Loader.loadClass(Loader.java:100) at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.nodeClass(XmlConfiguration.java:366) at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.newObj(XmlConfiguration.java:767) at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:404) at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:334) at org.eclipse.jetty.xml.XmlConfiguration.configure(XmlConfiguration.java:281) ... 16 more

有人可以告诉我如何使用我的特定工厂吗?

杰罗姆

0 投票
1 回答
431 浏览

primefaces - Apache Felix + Pax Web + Primefaces: ClassNotFoundException FacesServlet

I am trying to deploy a simple primefaces (4.0) testapplicationon on the felix framework (4.2.1) with pax web (3.0.5). But I always get an ClassNotFoundException FacesServlet (and ConfigureListener). Although I have the right jar files in WEB-INF/lib and wrote them in Bundle-ClassPath too. So, please help me.

Manifest:

web.xml:

Error Output:

0 投票
1 回答
1618 浏览

jetty - 如何使用码头在 karaf 的不同端口启动 OSGi 包

我有多个OSGi 包,并希望从不同的端口公开这些包。基本上 bundles 有REST API,我想在不同的端口上运行 API。

我的 REST API 包 jar 具有 jaxrs:server 配置。

我可以使用下面提供的配置启动多个连接器。

0 投票
1 回答
1378 浏览

java - 在 OSGi 中为 servlet 配置身份验证

我有 Karaf 3.0.2 作为我的容器,它使用 pax web(我认为它再次使用码头)。我有几个 servlet,我在某个别名下注册为 OSGi 服务。

默认情况下,配置 etc/jetty.xml 以便我可以使用 JAASLoginService,这也是我希望使用的。

问题是,我想同时使用基本身份验证和表单身份验证:

  • 与 /ui/* 匹配的所有内容都应使用表单身份验证
  • 与 /rest/* 匹配的所有内容都应使用基本身份验证

我尝试了很多,但我什至没有找到可以开始的点。我认为可以配置每个 servlet,但我想在全局范围内进行。

有任何想法吗?

0 投票
2 回答
1050 浏览

java - 带有 Pax Web War Extender 的 Apache Felix 错误启动包

我正在使用 Osgi 和 Apache Felix 进行开发,但我遇到了这个问题。当我在我的 Apache Felix 上安装并开始我的 Jersey 项目的战争时,我得到了这个:

我安装了这些捆绑包:

我的激活器是标准的:

}

我的 MANIFEST.MF 看起来像:

例如,当我发出请求时http://localhost:8080/authentication/rest/2.0.0/authentication/auth,我得到 404,似乎甚至没有部署战争。关于这可能是什么的任何想法?

0 投票
1 回答
995 浏览

jetty - Pax-Web Jetty-Bundle 发布 Jersey App

我正在尝试在 Apache Felix 上部署 Jersey 应用程序。我安装了这些捆绑包:

最后一个,Auth Test 是我要发布的 Jersey 应用程序。我可以安装捆绑包并启动它。当我启动它时,我得到这些日志:

我想整个问题都在 web.xml 后面,它看起来像这样:

我的激活器类是标准模型:

我的主要 REST 服务如下所示:

当我向我发出 POST 请求时,http://localhost:8080/authentication/rest/2.0.0/service/authentication/auth我得到 404。我什至不知道我的整个服务是否发布在码头上。我怎样才能做到这一点?当我提出请求时,Jetty 在大量日志的中间显示:

任何有助于完成这项工作的帮助都会很棒。在此先感谢并对这个冗长的问题感到抱歉,但我必须确保提供了所有信息。