0

Apache CXF を使用して Web サービスを開発し、それを Apache Tomcat にデプロイして正常に動作しています。

ここで、JBoss Fuse ESB (jboss-fuse-6.0.0) にデプロイする必要がありました。deploy フォルダーにコピーしてデプロイしようとしましたが、WSDL 定義を取得できず、?wsdl次のエラーが見つかりましたfuse.log:

16:28:49,889 | エラー | 実行者: 1 | コンテキストローダー | 174 - org.springframework.web - 3.1.3.RELEASE | コンテキストの初期化に失敗しました
org.springframework.beans.factory.BeanDefinitionStoreException: ServletContext リソース [/WEB-INF/cxf-beans.xml] から XML ドキュメントを解析中に予期しない例外が発生しました。ネストされた例外は org.springframework.beans.FatalBeanException です: 名前空間 [http://cxf.apache.org/jaxws] のクラス [org.apache.cxf.jaxws.spring.NamespaceHandler] は [org.springframework.beans を実装していません] .factory.xml.NamespaceHandler] インターフェイス
    org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:412)[105:org.springframework.beans:3.1.3.RELEASE]で
    org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)[105:org.springframework.beans:3.1.3.RELEASE]で
    org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)[105:org.springframework.beans:3.1.3.RELEASE]で
    org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174)[105:org.springframework.beans:3.1.3.RELEASE]で

以下を見つけてcxf-bean.xmlください:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:jaxws="http://cxf.apache.org/jaxws"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd 
        http://cxf.apache.org/jaxws http://cxf.apache.org/schema/jaxws.xsd
    ">

    <import resource="classpath:META-INF/cxf/cxf.xml" />

    <jaxws:endpoint id="hellows" implementor="com.irk.test.ws.HelloWsImpl" address="/hellows"/>

</beans>

Fuse ESB にデプロイする方法と、必要な構成変更の種類を理解するのを手伝ってください。

4

0 に答える 0