当我试图在fuse服务器中启动进程时,遇到以下错误,但是包已正确安装。
Unable to resolve 355.0: missing requirement [355.0] osgi.wiring.package; (osgi.wiring.package=org.apache.camel-servlet)我在POM.xml文件中注入了以下依赖项。
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-servlet</artifactId>
<version>2.18.0</version>
</dependency>我还在blueprind.xml文件中包含了以下内容:
<reference id="httpService" interface="org.osgi.service.http.HttpService"/>
<bean
class="org.apache.camel.component.servlet.CamelHttpTransportServlet" id="camelServlet"/>
<bean
class="org.apache.camel.component.servlet.osgi.OsgiServletRegisterer"
destroy-method="unregister" id="registerCamel" init-method="register">
<property name="alias" value="/restweb"/>
<property name="httpService" ref="httpService"/>
<property name="servlet" ref="camelServlet"/>
<property name="servletName" value="CamelServlet"/>
</bean>在camelContext中,我有以下内容:
<propertyPlaceholder id="properties" location="classpath:properties.sql"/>
<restConfiguration bindingMode="json" component="servlet"
contextPath="/restweb" host="localhost" port="9999">
<dataFormatProperty key="prettyPrint" value="true"/>
</restConfiguration>我使用的是JBosVersion10xx和运行时Jboss 6.3。它是一个rest web服务,使用蓝发路由配置。有谁能帮我解决这个问题吗?
提前谢谢。
嗨,鲁尼亚,谢谢你的回复。我尝试使用以下特性进行安装:安装camel-servlet *,并使用此命令引发以下错误,但我不知道如何解决问题并安装我想要的特性。
JBossFuse:karaf@root> features:list | grep camel-servlet
[uninstalled] [2.17.0.redhat-630187 ] camel-servlet camel-2.17.0.redhat-630187
[uninstalled] [2.17.0.redhat-630187 ] camel-servletlistener camel-2.17.0.redhat-630187
JBossFuse:karaf@root> features:install camel-servlet
Error executing command: The container is managed by fabric, please use fabric:profile-edit --feature camel-servlet/0.0.0 target-profile instead. See fabric:profile-edit --help for more information.
JBossFuse:karaf@root>发布于 2017-01-25 11:34:01
您的包需要camel-servlet工件,这在JBoss Fuse 6.3.0中是默认不可用的。
JBossFuse:karaf@root> features:list | grep camel-servlet
[uninstalled] [2.17.0.redhat-630187 ] camel-servlet camel-2.17.0.redhat-630187
[uninstalled] [2.17.0.redhat-630187 ] camel-servletlistener camel-2.17.0.redhat-630187用
features:install camel-servlet
features:install camel-servletlistener然后验证camel servlet包的availabily:
JBossFuse:karaf@root> exports | grep servlet
...
303 org.apache.camel.component.servlet; version=2.17.0.redhat-630187
303 org.apache.camel.component.servlet.osgi; version=2.17.0.redhat-630187
304 org.apache.camel.component.servletlistener; version=2.17.0.redhat-630187然后,请验证您的包是如何构建的,因为Camel servlet所需的包是org.apache.camel.component.servlet而不是org.apache.camel-servlet。
如果您使用maven-bundle-plugin包并手动声明依赖项,则POM应该如下所示:
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
...
<Import-Package>
org.apache.camel.component.servlet;version="[2.17,2)", // package name here
*
</Import-Package>
</instructions>
</configuration>
</plugin>https://stackoverflow.com/questions/41829330
复制相似问题