在karaf / servicemix中部署一个简单的.war文件时,出现以下错误。 请让我知道我是否缺少任何东西。

错误:

java.lang.ClassNotFoundException: app.web.servlet.ConnectServlet not found by JDBCWebDemo [207]
    at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:787)[org.apache.felix.framework-3.0.9.jar:]
    at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:71)[org.apache.felix.framework-3.0.9.jar:]
    at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1768)[org.apache.felix.framework-3.0.9.jar:]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_26]
    at org.apache.felix.framework.ModuleImpl.getClassByDelegation(ModuleImpl.java:645)[org.apache.felix.framework-3.0.9.jar:]
    at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1619)[org.apache.felix.framework-3.0.9.jar:]
    at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:900)[org.apache.felix.framework-3.0.9.jar:]
    at org.ops4j.pax.swissbox.core.BundleClassLoader.findClass(BundleClassLoader.java:176)[122:org.ops4j.pax.web.pax-web-extender-war:1.0.7]
    at org.ops4j.pax.swissbox.core.BundleClassLoader.loadClass(BundleClassLoader.java:194)[122:org.ops4j.pax.web.pax-web-extender-war:1.0.7]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_26]
    at org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisitorHS.newInstance(RegisterWebAppVisitorHS.java:221)[122:org.ops4j.pax.web.pax-web-extender-war:1.0.7]

代码如下:

的Manifest.MF:

Manifest-Version: 2 
Bundle-SymbolicName: JDBCWebDemo 
Bundle-Version: 2.3 
Bundle-ClassPath: WEB-INF/classes 
Import-Package: javax.servlet,javax.servlet.http 

web.xml中:

<web-app ...>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
  </welcome-file-list>
  <servlet>
    <description></description>
    <display-name>ConnectServlet</display-name>
    <servlet-name>ConnectServlet</servlet-name>
    <servlet-class>app.web.servlet.ConnectServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>ConnectServlet</servlet-name>
    <url-pattern>/ConnectServlet</url-pattern>
  </servlet-mapping>
</web-app>

===============>>#1 票数:1 已采纳

您的OSGi软件包很可能需要导出具有servlet代码的软件包,例如,在您需要的MANIFEST.MF文件中

Export-Package: app.web.servlet

===============>>#2 票数:0

如果不在战争范围之内,则需要导入正确的软件包。

Import-Package: app.web.servlet

或者如果它在lib文件夹中的一个lib中,则需要确保所有这些jar都包含在classpath中:

Bundle-ClassPath: WEB-INF/classes, WEB-INF/lib/jar1.jar, .... 

  ask by raka translate from so

未解决问题?本站智能推荐:

2回复

ServiceMix / Karaf中的NoClassDefFoundError

我创建了一个带有多个捆绑包的Karaf存档。 在ServiceMix中部署此存档时,我可以确认是否正确安装了每个捆绑软件(它们的状态为Active )。 但是,在使用它时,会抛出NoClassDefFoundError : 我不明白...因为在Karaf控制台中执行以下命令: bun
1回复

jar包及其ServiceMix-karaf中的类路径

我正在开发2个jar文件(jar1和jar2-2个jar的pom.xml中的包装类型为jar),并将它们安装到serviceMix中。 Jar1将使用jar2中的一些packake。 在manifest.mf文件中,我使用jar1和jar2的导入和导出。 安装到serviceMix 4
1回复

卸载功能karaf / servicemix

我正在做一些测试,安装和卸载功能及其行为。 我从干净的servicemix 7.0.0.M1安装开始,默认情况下它具有cxf 3.1.4和camel 2.16.2。 如果我键入bundle:requirements 44(在我的情况下为camel-cxf),则与cxf相关的所有内容都
4回复

Apache Karaf vs. Servicemix

是否有人使用Karaf而不是Servicemix? 如果是这样,你是怎么做出这个决定的? 我知道Servicemix在Karaf附近添加了一层功能,只是好奇Karaf是否自己使用以及为什么......
1回复

ActiveMQ排队的消息java servicemix karaf命令

我与ActiveMQ ServiceMix一起工作,我想在java中排队消息计数/出列消息计数等。 我想要ActiveMQ控制台中显示的值 我想获取“已入队消息”列:) 我的程序开始与消费者和听众的会话。 一切正常。 但是为了监视,我编写了一个karaf命令来调用我的订阅
1回复

Servicemix v5.3.2上的Servlet

从SM v5.1.4迁移到v5.3.2时遇到问题。 以下代码可在v5.1.4上完美运行。 该Servlet在HttpRegistry中使用键“ CamelServlet ”注册,并且具有单个提供程序CamelHttpTransportServlet和单个使用者Consumer [servle
1回复

将Logback与在ServiceMix下运行的Karaf 3.0.5一起使用

我正在尝试在ServiceMix下运行的Karaf 3.0.5中使用logback。 正如这个问题中所述,这是我到目前为止所做的。 这是我到目前为止所做的: 通过uninstall <pax-logging-bundle-id>删除了pax-logging-serv
1回复

始终在ServiceMix 6.0.X / Karaf 3.0.X中从远程仓库更新捆绑软件或禁用本地仓库

我在测试环境中从远程仓库更新捆绑软件时遇到问题。 环境包括带有ServiceMix(或同为Karaf)的多个服务器和带有JFrog Artifactory的服务器。 在karaf 3.0.X之前,我们使用SNAPSHOT版本动态更新可用OSGi容器上的捆绑软件,但是现在karaf搜索捆绑
1回复

在servicemix中安装功能

我正在运行Apache servicemix 4.5.2。 我想安装一个功能,即一个jar文件。 我想要的功能是jtidy 。 pom依赖是: 而存储库是 http://repo1.maven.org/maven2/jtidy/jtidy/4aug2000r7-dev/j
1回复

Apache ServiceMix! 5.0.0:Apache Karaf 2.3.4:“ camel:route-list”命令问题

我有以下情况: 我几天前已经从Apache ServiceMix迁移了! 从4.5.3到5.0.0版本,至少在我看来,我遇到了一个小问题。 我的主要Spring配置文件如下所示: 使用较旧版本的ServiceMix时! (4.5.3),我在Karaf控制台中输入came