WebDAVクライアントライブラリの使用方法について

2,053 views
Skip to first unread message

yoshim

unread,
Jan 24, 2011, 12:39:06 AM1/24/11
to 日本Androidの会
webDAVサーバーからファイル一覧の取得とファイルのDLを行うクライアントを作成しようとしています。
Jackrabbitのwebdavを組み込んでみましたが、ビルドで下記のディスカッションと同様のエラーがでてしまったため、
ディスカッションの流れに従ってWebDAVクライアントライブラリをビルドしてみました。
<https://groups.google.com/group/android-group-japan/browse_frm/thread/
6f3fa1c46f226478/b07c25420d8144f4?
hl=ja&lnk=gst&q=webdav#b07c25420d8144f4>

ですが、一部のクラスで継承クラスのオーバーライドに関するエラーが出てしまいます。
例:org.apache.jackrabbit.webdav.WebdavRequestImpl
- 型 WebdavRequestImpl は継承された抽象メソッドServletRequest.getLocalAddr() を実装する
必要があります。

またorg.apache.jackrabbit.webdav.client.method内のクラスは全て
型 hogehoge の階層は不整合です
というエラーになります。

servlet-api.jarのバージョンに問題があるのかと思い、apacheのサイト(http://tomcat.apache.org/
index.html)よりtomcat7.0~5.5まで
取得して、一通り試してみましたがエラー対象の抽象メソッドにいくらかの違いがありますが必ず同様の現象となりました。
外部のソースなので、ソースに手を加えないやり方で
これらの現象を回避する方法をご存知の方はおられませんでしょうか?

ちなみにこちらの開発環境は、
jdkのバージョン:1.6.0_22
jackrabbitのソース:2.2.1-src
Eclipse Platform Version: 3.6.1
です。

木戸恵

unread,
Jan 24, 2011, 2:16:29 AM1/24/11
to android-g...@googlegroups.com
yoshim様

私もwebDAVクライアントを作ろうとしてJackrabbitを外部Jarとして使用しようとしたのですが、どうにもならなくて独自で実装を行うようにしました。

-------------------------
import org.apache.http.HttpRequestのHttpRequest
import org.apache.http.client.methods.HttpUriRequest
import org.apache.http.impl.client.DefaultHttpClient

HttpRequest req = new BasicHttpRequest("PROPFIND", urlの文字列);

HttpUriRequest reqMethod = new RequestWrapper(req);
reqMethod.setHeader("Depth", "1");

DefaultHttpClient client = new DefaultHttpClient();

HttpResponse response = connection.execute(reqMethod);
--------------------------
大雑把に書くとこのような処理でwebDAVのファイル一覧xml(と言っていいのでしょうか?)を取得できました。
ヘッダーに情報を追加する場合はHttpUriRequestを生成して、そのインスタンスに追加しないとうまくいきませんでした。

Javaにも慣れていませんので、もっとスマートな書き方があるかもしれませんが、参考にしていただけますと幸いです。

以上、宜しくお願い致します。


2011年1月24日14:39 yoshim <yoshim....@gmail.com>:

--
このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
このグループから退会するには、android-group-j...@googlegroups.com にメールを送信してください。
詳細については、http://groups.google.com/group/android-group-japan?hl=ja からこのグループにアクセスしてください。




--
------------------------------------------------
木戸 恵
E-Mail:megmeg...@gmail.com

------------------------------------------------

yoshim

unread,
Jan 24, 2011, 4:09:29 AM1/24/11
to 日本Androidの会
木戸様

早速のご教授ありがとうございます。
Android SDKのみでいけたんですね。
試してみます。
ありがとうございました。

On 1月24日, 午後4:16, 木戸恵 <megmegfiv...@gmail.com> wrote:
> yoshim様
>
> 私もwebDAVクライアントを作ろうとしてJackrabbitを外部Jarとして使用しようとしたのですが、どうにもならなくて独自で実装を行うようにしま-した。
>
> -------------------------
> import org.apache.http.HttpRequestのHttpRequest
> import org.apache.http.client.methods.HttpUriRequest
> import org.apache.http.impl.client.DefaultHttpClient
>
> HttpRequest req = new BasicHttpRequest("PROPFIND", urlの文字列);
>
> HttpUriRequest reqMethod = new RequestWrapper(req);
> reqMethod.setHeader("Depth", "1");
>
> DefaultHttpClient client = new DefaultHttpClient();
>
> HttpResponse response = connection.execute(reqMethod);
> --------------------------
> 大雑把に書くとこのような処理でwebDAVのファイル一覧xml(と言っていいのでしょうか?)を取得できました。
> ヘッダーに情報を追加する場合はHttpUriRequestを生成して、そのインスタンスに追加しないとうまくいきませんでした。
>
> Javaにも慣れていませんので、もっとスマートな書き方があるかもしれませんが、参考にしていただけますと幸いです。
>
> 以上、宜しくお願い致します。
>
> 2011年1月24日14:39 yoshim <yoshim.soli...@gmail.com>:
>
>
>
>
>
> > webDAVサーバーからファイル一覧の取得とファイルのDLを行うクライアントを作成しようとしています。
> > Jackrabbitのwebdavを組み込んでみましたが、ビルドで下記のディスカッションと同様のエラーがでてしまったため、
> > ディスカッションの流れに従ってWebDAVクライアントライブラリをビルドしてみました。
> > <https://groups.google.com/group/android-group-japan/browse_frm/thread/
> > 6f3fa1c46f226478/b07c25420d8144f4<https://groups.google.com/group/android-group-japan/browse_frm/thread...>
> > ?
> > hl=ja&lnk=gst&q=webdav#b07c25420d8144f4>
>
> > ですが、一部のクラスで継承クラスのオーバーライドに関するエラーが出てしまいます。
> > 例:org.apache.jackrabbit.webdav.WebdavRequestImpl
> > - 型 WebdavRequestImpl は継承された抽象メソッドServletRequest.getLocalAddr() を実装する
> > 必要があります。
>
> > またorg.apache.jackrabbit.webdav.client.method内のクラスは全て
> > 型 hogehoge の階層は不整合です
> > というエラーになります。
>
> > servlet-api.jarのバージョンに問題があるのかと思い、apacheのサイト(http://tomcat.apache.org/
> > index.html <http://tomcat.apache.org/%0Aindex.html>)よりtomcat7.0~5.5まで
> > 取得して、一通り試してみましたがエラー対象の抽象メソッドにいくらかの違いがありますが必ず同様の現象となりました。
> > 外部のソースなので、ソースに手を加えないやり方で
> > これらの現象を回避する方法をご存知の方はおられませんでしょうか?
>
> > ちなみにこちらの開発環境は、
> > jdkのバージョン:1.6.0_22
> > jackrabbitのソース:2.2.1-src
> > Eclipse Platform Version: 3.6.1
> > です。
>
> > --
> > このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
> > このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
> > このグループから退会するには、android-group-j...@googlegroups.com<android-gro-up-japan%2Bunsu...@googlegroups.com>にメールを送信してください。
> > 詳細については、http://groups.google.com/group/android-group-japan?hl=jaからこのグループにアクセスしてください。
>
> --
> ------------------------------------------------
> 木戸 恵
> E-Mail:megmegfiv...@gmail.com <E-Mail%3Amegmegfiv...@gmail.com>
>
> ------------------------------------------------- 引用テキストを表示しない -
>
> - 引用テキストを表示 -
Reply all
Reply to author
Forward
0 new messages