【问题标题】:axis2 wsdl2java - on karaf axiom requirement missingaxis2 wsdl2java - 缺少关于 karaf 公理的要求
【发布时间】:2016-01-13 19:59:54
【问题描述】:

我得到了一个 wsdl 文件,我使用 axis2 wsdljava 从中生成了 java 源代码。

在构建为捆绑包并将其部署到 apache karaf 后,我收到此错误

[...] missing requirement [...] osgi.wiring.package; (osgi.wiring.package=org.apache.axiom.om)

我在我的 pom.xml 作为依赖项得到了这个

    <dependency>
        <groupId>org.apache.axis2</groupId>
        <artifactId>axis2-kernel</artifactId>
        <version>1.6.3</version>
    </dependency>
    <dependency>
        <groupId>org.apache.axis2</groupId>
        <artifactId>axis2-adb</artifactId>
        <version>1.6.3</version>
    </dependency>
    <dependency>
        <groupId>org.apache.ws.commons.axiom</groupId>
        <artifactId>axiom-api</artifactId>
        <version>1.2.15</version>
    </dependency>
    <dependency>
        <groupId>org.apache.ws.commons.axiom</groupId>
        <artifactId>axiom-impl</artifactId>
        <version>1.2.15</version>
    </dependency>

我的 MANIFEST.MF 中也有 org.apache.axiom.om,看起来像这样

Manifest-Version: 1.0
Bnd-LastModified: 1444907709881
Build-Jdk: 1.8.0_60
Built-By: muellermak
Bundle-ManifestVersion: 2
Bundle-Name: Ax WebService calls
Bundle-SymbolicName: AxWebServiceCall
Bundle-Version: 1.0.0
Created-By: Apache Maven Bundle Plugin
Export-Package: axWebServiceCall.axPaygateService;uses:="org.apache.came
 l,axWebServiceCall.axPaygateService.generated";version="1.0.0",axWebSer
 viceCall.axPaygateService.generated;uses:="org.apache.axis2.transport,o
 rg.apache.axiom.om,org.apache.axiom.soap,org.apache.axis2.context,org.a
 pache.axis2.client,org.apache.axis2.description,javax.xml.namespace,org
 .apache.axis2,org.apache.axis2.util,org.apache.axis2.client.async,javax
 .xml.stream,org.apache.axis2.databinding,org.apache.axis2.databinding.u
 tils,org.apache.axis2.databinding.utils.reader,org.apache.axis2.databin
 ding.types,org.apache.axiom.util.stax,javax.activation,org.apache.axis2
 .engine,org.apache.axis2.addressing";version="1.0.0",com.foo.myservice;
 uses:="org.apache.axis2.transport,***org.apache.axiom.om***,org.apache.axiom.
 soap,org.apache.axis2.context,org.apache.axis2.client,org.apache.axis2.
 description,javax.xml.namespace,org.apache.axis2,org.apache.axis2.util,
 org.apache.axis2.client.async,javax.xml.stream,org.apache.axis2.databin
 ding,org.apache.axis2.databinding.utils,org.apache.axis2.databinding.ut
 ils.reader,org.apache.axis2.databinding.types,org.apache.axiom.util.sta
 x,javax.activation,org.apache.axis2.engine,org.apache.axis2.addressing,
 org.apache.axis2.wsdl";version="1.0.0"
Export-Service: javax.sql.DataSource;osgi.jndi.service.name="jdbc/mysqlD
 atasource"
Import-Package: com.mysql.jdbc.jdbc2.optional,javax.activation;version="
 [1.1,2)",javax.sql,javax.xml.namespace,javax.xml.stream;version="[1.0,2
 )",***org.apache.axiom.om***,org.apache.axiom.soap,org.apache.axiom.util.stax
 ,org.apache.axis2,org.apache.axis2.addressing,org.apache.axis2.client,o
 rg.apache.axis2.client.async,org.apache.axis2.context,org.apache.axis2.
 databinding,org.apache.axis2.databinding.types,org.apache.axis2.databin
 ding.utils,org.apache.axis2.databinding.utils.reader,org.apache.axis2.d
 escription,org.apache.axis2.engine,org.apache.axis2.transport,org.apach
 e.axis2.util,org.apache.axis2.wsdl,org.apache.camel;version="[2.15,3)",
 org.apache.camel.component.sql,org.osgi.service.blueprint;version="[1.0
 .0,2.0.0)"
Tool: Bnd-1.50.0

当我尝试它而不在 karaf 上部署它时,它也可以正常工作。

谁能帮我解决这个问题?

【问题讨论】:

    标签: java maven code-generation axis2 apache-karaf


    【解决方案1】:

    Axiom JAR 是 OSGi 包。您收到的错误消息只是表明您尚未将它们部署到 Karaf。

    【讨论】:

    • 当我在 karaf 上部署 axiom-api.jar 时,我仍然遇到同样的错误。我很确定这是因为 axiom-api 缺少要求 'org.apache.james.mime4j' 这不是捆绑
    • 刚刚发现它适用于旧版本的 axiom-api。但是它缺少 org.apache.axis2 ...(我在我的 maven 依赖项中得到)
    • MIME4J 也是一个捆绑包,如果您部署 axiom-api,我怀疑您是否会遇到完全相同的错误。在这种情况下缺少什么要求?
    • 当我部署 1.2.15 版本的 axiom 时,它是 'org.apache.james.mime4j' 并且在 1.2.10 版本中没有任何遗漏(但生成的代码仍然无法工作,因为然后axis2丢失)
    • 正如我之前所说,mime4j 是一个捆绑包,因此您也需要部署它。 Axiom 1.2.15 使用 mime4j 0.7.2。其余的很难说,因为您的问题没有关于如何构建捆绑包的详细信息。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-05-05
    • 1970-01-01
    • 1970-01-01
    • 2015-08-09
    • 1970-01-01
    • 1970-01-01
    • 2017-01-05
    相关资源
    最近更新 更多