biz-StreamマニュアルWebサービスサーバ ガイド第11章 サンプルプログラム(Java)11.13 リポジトリのディレクトリを削除するサンプル(JAX-WS)

11.13 リポジトリのディレクトリを削除するサンプル(JAX-WS)

概要

リポジトリのディレクトリを削除するサンプルプログラムです


スタブクラスの準備

事前に『11.1 Java で開発するための環境構築』の手順を実行します。


ソースサンプル

<biz-Stream_home>/sample/soap_client/java/jax-ws/WSS_JAXWS_Sample12.java サンプル12


    import java.net.Authenticator;
    import java.net.PasswordAuthentication;
    import java.net.URL;
    import java.util.Map;

    import javax.xml.ws.BindingProvider;
    import javax.xml.ws.WebServiceFeature;
    import javax.xml.ws.soap.MTOMFeature;

    import org.apache.ws.axis2.Cms;
    import org.apache.ws.axis2.CmsPortType;

    import com.brainsellers.schemas.webservices.cms._2006_10.DeleteRequest;
    import com.brainsellers.schemas.webservices.common._2006_10.Success;



    public class WSS_JAXWS_Sample12 {

        // Webサービスサーバのホスト名
        private static final String WSS_HOST_NAME = "wsssrv";

        // Webサービスのエンドポイントプリフィックス
        private static final String WSS_SERVICE_LOCATION = "http://" + WSS_HOST_NAME + ":8080/axis2/services";

        // BASIC認証のユーザ名
        private static final String USER_NAME = "bizuser1";

        // BASIC認証のパスワード
        private static final String PASSWORD = "bizuser1";

        // 監査ロギング用のユーザ定義
        private static final String USER_DEF = "AAA";

        // 削除するフォルダパス
        private static final String TARGET_FOLDER_PATH = "/Sample11_JAXWS";


        /**
         *
         * @param args
         */
        public static void main(String[] args) {
            new WSS_JAXWS_Sample12();
        }

        /**
         * メイン
         */
        public WSS_JAXWS_Sample12() {
            try{
                // 認証の設定
                setAuth();

                // リポジトリ内のディレクトリを削除
                removeDir();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

        /**
         * 認証の設定
         */
        private void setAuth() {
            Authenticator.setDefault(new Authenticator() {
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication(USER_NAME, PASSWORD.toCharArray());
                }
            });
        }

        /**
         * リポジトリのディレクトリを削除
         *
         * @resturn Success
         */
        public Success removeDir() throws Exception {
            // クライアント生成
            Cms service = new Cms(new URL(WSS_SERVICE_LOCATION + "/cms?wsdl"));

            // MTOMを有効化
            WebServiceFeature feature = new MTOMFeature(true);
            CmsPortType type = service.getCmsSOAP11Port(feature);
            BindingProvider bp = (BindingProvider) type;
            Map<String, Object> reqContext = bp.getRequestContext();
            reqContext.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY,
                    WSS_SERVICE_LOCATION + "/cms?UserDef=" + USER_DEF);

            // リクエストメッセージの作成
            DeleteRequest request = new DeleteRequest();
            request.setValue(TARGET_FOLDER_PATH);

            // リクエストを送信
            return type.delete(request);
        }
    }