[Tomcat]WebDAVでファイルをアップロードする方法(for Mac)
概要
画像ファイルを、Tomcatのサーバーに
WebDAVで通信を行なってアップロードする。
WebDAVとは?
「Distributed Authoring and Versioning protocol for the WWW」の略。
WWW でファイルの転送に使われる HTTP を拡張し、Web ブラウザから Web サーバ上のファイルやフォルダを管理できるようにした仕組みのこと。
ファイル管理する際には、FTP通信やSFTP通信などもあるが、
FTPサーバーなどを用意する必要がある。
一方、WebDAVの場合は、HTTP通信の拡張なので、
別のサーバーを用意することなく、Webサーバーと同じ8080ポートから通信が可能。
手順
①WebdavServletの使用設定
ローカルにインストールしているTomcat
本記事では、「Tomcat8」を使用しています。
・ダウンロードサイト
本記事では、「MacintoshHD/Users/(ユーザー名)」の直下に置いている。
・「web.xml」は、「conf」フォルダ内にある
下記のコードを追加する
<servlet>
<servlet-name>webdav</servlet-name>
<servlet-class>org.apache.catalina.servlets.WebdavServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>readonly</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>allowSpecialPaths</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>webdav</servlet-name>
<url-pattern>/webdav/*</url-pattern>
</servlet-mapping>
・web.xml(コード追加後)
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd">
<!-- ================== 追加 ここから ==================== -->
<servlet>
<servlet-name>webdav</servlet-name>
<servlet-class>org.apache.catalina.servlets.WebdavServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>readonly</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>allowSpecialPaths</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>webdav</servlet-name>
<url-pattern>/webdav/*</url-pattern>
</servlet-mapping>
<!-- ================== 追加 ここまで ==================== -->
<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>listings</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- ==================
省略
==================== -->
<mime-mapping>
<extension>123</extension>
<mime-type>application/vnd.lotus-1-2-3</mime-type>
</mime-mapping>
<mime-mapping>
<extension>3dml</extension>
<mime-type>text/vnd.in3d.3dml</mime-type>
</mime-mapping>
<!-- ==================
省略
==================== -->
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
②Tomcatの起動(ターミナル)
下記のメモを参考にしてもらえるといいとおもます。
もちろん、eclipseから起動でも
大丈夫です。
③Wevdav接続(Finder)
・Finderからサーバーへ接続する
・Finder上に、Wevdavが出現
・WebDavで画像ファイルをアップロード
・Finder
・サーバー上へ追加する画像ファイル <Tomcat.png>
・ドラッグ&ドロップ
・ブラウザ上
・追加前
・追加後
・<Tomcat.png>が追加されている
・<Tomcat.png>をクリックすると、表示される
まとめ
TomcatでWebDavをするには、特別ソフトをインストールすることなく、
Macにもとからある、Finderとターミナルがあればできます。
設定も、web.xmlに
WebdavServletについて追加するだけ。
ぜひ、
お試しあれ。
参考
・TomcatでWebdavを使うのはweb.xmlの設定だけで良い。
Discussion