1

JAX-WS Webサービスを作成し、それをweblogic10.3.3にデプロイしました。正常に展開され、すべてが正常に機能しています。

ここで、WSDLを非表示にしてWebサービスにアクセスします。weblogic管理コンソールからWSDLを非表示にしようとしています。この場所に移動

Deployed application -> Webservice -> Configuration tab

このタブで、パラメーター「WSDLPublishFile」に「false」を入力します。

これを保存すると、Plan.xmlが作成されました。この問題は、Weblogicで変更をアクティブ化しようとすると発生します。以下は私が得た例外です:

変更のアクティブ化中にエラーが発生しました。詳細については、ログを参照してください。

WebServiceモジュール「TB_DBLEGI_SIMULATOR-trunk.war」のデプロイの準備フェーズ中にエラーが発生しました。Webサービスモジュール「TB_DBLEGI_SIMULATOR-trunk.war」のデプロイ中にエラーが発生しました。wsdl java.io.IOExceptionの公開に失敗しました:WsdlファイルはMETA-INF/wsdlまたはWEB-INF/wsdlに配置する必要があります

WsdlファイルはMETA-INF/wsdlまたはWEB-INF/wsdlに配置する必要があります

私の戦争では、WSDLはWEB-INF/wsdlフォルダー内に配置されます。また、いろいろな場所に置いてみましたが、運が悪かったです。

4

1 に答える 1

4

Filter特定のリソースへのアクセスをブロックするために、いつでも書き込みと登録を行うことができます。例えば:

public class BlockFilter implements Filter {

    @Override
    public void init(FilterConfig config) throws ServletException {}

    @Override
    public void destroy() {}

    public void doFilter(ServletRequest request, ServletResponse response,
                        FilterChain chain) throws IOException, ServletException {
        return;
    }
}

そして、フィルターをweb.xml:に登録します。

<filter>
    <filter-name>blockFilter</filter-name>
    <filter-class>namespace.BlockFilter</filter-class>    
</filter>

<filter-mapping>
    <filter-name>blockFilter</filter-name>
    <url-pattern>*?wsdl</url-pattern>
</filter-mapping>
于 2012-05-28T13:43:03.700 に答える