11.12 リポジトリのディレクトリを削除するサンプル(JAX-WS)
概要
リポジトリのディレクトリを削除するサンプルプログラムです。
サンプル構成
| 項目 | ファイルパス |
|---|---|
| ソースサンプル |
<bswss-client_home>/sample/java/jax-ws/WSS_JAXWS_Sample12.java
|
ソースサンプル
import java.net.Authenticator;
import java.net.PasswordAuthentication;
import java.net.URL;
import java.util.Map;
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;
import jakarta.xml.ws.BindingProvider;
import jakarta.xml.ws.WebServiceFeature;
import jakarta.xml.ws.soap.MTOMFeature;
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);
}
}
