MASM0001:找不到默认配置文件jaxws-tubes-default.xml

时间:2015-01-20 14:02:22

标签: java glassfish jax-ws

我在我的域的GlassFish 4.1服务器日志中反复看到此错误:

MASM0001: Default configuration file [jaxws-tubes-default.xml] was not found

这是jaxws-tubes-default.xml是什么?我需要将它放在哪里才能清除此SEVERE日志条目?它会定期重复约20-25次。

2 个答案:

答案 0 :(得分:3)

这不会发生在默认安装中,我猜你正在做一些特定于JAX-WS / Metro的事情?然后,此错误可能是缺少metro.xml的结果。

文件jaxws-tubes-default.xml似乎保留了JAX-WS tubes的默认配置。

我不知道这是从哪里来的,但您可以尝试通过将jaxws-tubes-default.xml放在应用程序的META-INF目录中并使用以下内容来修复它:

<metro xmlns='http://java.sun.com/xml/ns/metro/config' version="1.0">
    <tubelines default="#default-metro-tubeline">
        <tubeline name="default-metro-tubeline">
            <client-side>
                <!--<tube-factory className="com.sun.xml.ws.assembler.jaxws.TerminalTubeFactory" />-->
                <tube-factory className="com.sun.xml.ws.assembler.jaxws.HandlerTubeFactory" />
                <tube-factory className="com.sun.xml.ws.assembler.jaxws.ValidationTubeFactory" />
                <!--<tube-factory className="com.sun.xml.ws.assembler.jaxws.MonitoringTubeFactory" />-->
                <tube-factory className="com.sun.xml.ws.assembler.jaxws.MustUnderstandTubeFactory" />
                <tube-factory className="com.sun.xml.ws.assembler.jaxws.AddressingTubeFactory" />
                <tube-factory className="com.sun.xml.ws.dump.MessageDumpingTubeFactory" />
                <tube-factory className="com.sun.xml.ws.assembler.jaxws.BasicTransportTubeFactory" />
            </client-side>
            <endpoint-side>
                <tube-factory className="com.sun.xml.ws.dump.MessageDumpingTubeFactory" />
                <tube-factory className="com.sun.xml.ws.assembler.jaxws.AddressingTubeFactory" />
                <tube-factory className="com.sun.xml.ws.assembler.jaxws.MustUnderstandTubeFactory" />
                <tube-factory className="com.sun.xml.ws.assembler.jaxws.MonitoringTubeFactory" />
                <tube-factory className="com.sun.xml.ws.assembler.jaxws.HandlerTubeFactory" />
                <tube-factory className="com.sun.xml.ws.assembler.jaxws.ValidationTubeFactory" />
                <tube-factory className="com.sun.xml.ws.assembler.jaxws.TerminalTubeFactory" />
            </endpoint-side>
        </tubeline>
    </tubelines>
</metro>

(取自Java.net Metro Repository

Metro文档中的

This page包含一个类似的示例。

答案 1 :(得分:0)

启动已部署的Web服务时,Web-Logic服务器存在相同的问题。 .contains()www.databaseusers.com/article/6408029中提供的解决方案有助于解决该问题。

我不得不将www.ibm.com/support/knowledgecenter中提到的WEB-INF / classes / META-INF中的“ metro-default.xml”文件添加到WAR文件中。

如果在上述位置还没有“ META-INF”文件夹,则需要使用“ metro-default.xml”创建一个。

“ metro-default.xml”的内容可以在www.databaseusers.com/article/6408029处找到。

希望这会有所帮助。