Foundation 1.1.2

java.net
クラス JarURLConnection

java.lang.Object
  上位を拡張 java.net.URLConnection
      上位を拡張 java.net.JarURLConnection

public abstract class JarURLConnection
extends URLConnection

JAR (Java ARchive) ファイル、または JAR ファイル内にあるエントリへの URL 接続です。

JAR URL の構文は、次のとおりです。

 jar:<url>!/{entry}
 

次に例を示します。

jar:http://www.foo.com/bar/baz.jar!/COM/foo/Quux.class

JAR URL は、ある JAR ファイルを参照するか、ある JAR ファイル内のエントリを参照する場合に使用するようにしてください。上記の例は、JAR のエントリを参照する JAR URL です。次のようにエントリ名が省略された場合、その URL は JAR ファイルの全体を参照します。 jar:http://www.foo.com/bar/baz.jar!/

JAR URL を作成するのが明白な場合、JAR 特有の機能が必要なときは、汎用 URLConnection を JarURLConnection にキャストしてください。次に例を示します。

 URL url = new URL("jar:file:/home/duke/duke.jar!/");
 JarURLConnection jarConnection = (JarURLConnection)url.openConnection();
 Manifest manifest = jarConnection.getManifest();
 

Jar エントリ
jar:http://www.foo.com/bar/baz.jar!/COM/foo/Quux.class
Jar ファイル
jar:http://www.foo.com/bar/baz.jar!/
Jar ディレクトリ
jar:http://www.foo.com/bar/baz.jar!/COM/foo/

!/ は、区切り文字です。

new URL(context, spec) を使った JAR url の作成では、次の規則が適用されます。

導入されたバージョン:
1.2
関連項目:
URL, URLConnection, JarFile, JarInputStream, Manifest, ZipEntry

フィールドの概要
protected  URLConnection jarFileURLConnection
          接続が開始された場合の JAR ファイル URL への接続。
 
クラス java.net.URLConnection から継承されたフィールド
allowUserInteraction, connected, doInput, doOutput, ifModifiedSince, url, useCaches
 
コンストラクタの概要
protected JarURLConnection(URL url)
          指定した URL に新しい JarURLConnection を作成します。
 
メソッドの概要
 Attributes getAttributes()
          接続で使う URL が JAR ファイルエントリを指す場合、この接続用の Attributes オブジェクトを返します。
 Certificate[] getCertificates()
          接続で使う URL が JAR ファイルエントリを指す場合に、この接続用の Certificate オブジェクトを返します。
 String getEntryName()
          この接続のエントリ名を返します。
 JarEntry getJarEntry()
          この接続の JAR エントリオブジェクトが存在する場合にそれを返します。
abstract  JarFile getJarFile()
          この接続の JAR ファイルを返します。
 URL getJarFileURL()
          この接続で使う JAR ファイルの URL を返します。
 Attributes getMainAttributes()
          この接続で使う JAR ファイルの主要な Attributes を返します。
 Manifest getManifest()
          この接続の Manifest が存在する場合はそれを、存在しない場合は null を、それぞれ返します。
 
クラス java.net.URLConnection から継承されたメソッド
addRequestProperty, connect, getAllowUserInteraction, getContent, getContent, getContentEncoding, getContentLength, getContentType, getDate, getDefaultAllowUserInteraction, getDefaultUseCaches, getDoInput, getDoOutput, getExpiration, getFileNameMap, getHeaderField, getHeaderField, getHeaderFieldDate, getHeaderFieldInt, getHeaderFieldKey, getHeaderFields, getIfModifiedSince, getInputStream, getLastModified, getOutputStream, getPermission, getRequestProperties, getRequestProperty, getURL, getUseCaches, guessContentTypeFromName, guessContentTypeFromStream, setAllowUserInteraction, setContentHandlerFactory, setDefaultAllowUserInteraction, setDefaultUseCaches, setDoInput, setDoOutput, setFileNameMap, setIfModifiedSince, setRequestProperty, setUseCaches, toString
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

jarFileURLConnection

protected URLConnection jarFileURLConnection
接続が開始された場合の JAR ファイル URL への接続。これは connect によって設定されるべきです。

コンストラクタの詳細

JarURLConnection

protected JarURLConnection(URL url)
                    throws MalformedURLException
指定した URL に新しい JarURLConnection を作成します。

パラメータ:
url - URL
例外:
MalformedURLException - 指定文字列に有効なプロトコルが見つからない場合、または文字列を解析できない場合
メソッドの詳細

getJarFileURL

public URL getJarFileURL()
この接続で使う JAR ファイルの URL を返します。

戻り値:
この接続で使う JAR ファイルの URL

getEntryName

public String getEntryName()
この接続のエントリ名を返します。この接続に対応する JAR ファイル URL が、JAR ファイルエントリではなく JAR ファイルを指している場合、このメソッドは null を返します。

戻り値:
この接続で使うエントリ名 (エントリがある場合)

getJarFile

public abstract JarFile getJarFile()
                            throws IOException
この接続の JAR ファイルを返します。返されたオブジェクトは変更不可能であり、呼び出し側が変更を試みた場合は UnsupportedOperationException がスローされます。

戻り値:
この接続の JAR ファイル。この接続が JAR ファイルのエントリへの接続である場合には、JAR ファイルオブジェクトが返される
例外:
IOException - この接続の JAR ファイルへの接続試行中に IOException が発生した場合
関連項目:
URLConnection.connect()

getManifest

public Manifest getManifest()
                     throws IOException
この接続の Manifest が存在する場合はそれを、存在しない場合は null を、それぞれ返します。返されたオブジェクトは変更不可能であり、呼び出し側が変更を試みた場合は UnsupportedOperationException がスローされます。

戻り値:
この接続の JAR ファイルオブジェクトに対応するマニフェストオブジェクト
例外:
IOException - この接続の JAR ファイルの取得時に IOException がスローされた場合
関連項目:
getJarFile()

getJarEntry

public JarEntry getJarEntry()
                     throws IOException
この接続の JAR エントリオブジェクトが存在する場合にそれを返します。この接続に対応する JAR ファイル URL が、JAR ファイルエントリではなく JAR ファイルを指している場合、このメソッドは null を返します。返されたオブジェクトは変更不可能であり、呼び出し側が変更を試みた場合は UnsupportedOperationException がスローされます。

戻り値:
この接続の JAR エントリオブジェクト。この接続の JAR URL が JAR ファイルを指している場合は null
例外:
IOException - この接続の JAR ファイルの取得時に IOException がスローされた場合
関連項目:
getJarFile(), getJarEntry()

getAttributes

public Attributes getAttributes()
                         throws IOException
接続で使う URL が JAR ファイルエントリを指す場合、この接続用の Attributes オブジェクトを返します。そうでない場合は null を返します。

戻り値:
この接続の URL が JAR ファイルエントリを指している場合はこの接続の Attributes オブジェクト、そうでない場合は null
例外:
IOException - JAR エントリの取得時に IOException がスローされた場合
関連項目:
getJarEntry()

getMainAttributes

public Attributes getMainAttributes()
                             throws IOException
この接続で使う JAR ファイルの主要な Attributes を返します。

戻り値:
この接続で使う JAR ファイルの主要な Attributes
例外:
IOException - マニフェストの取得時に IOException がスローされた場合
関連項目:
getJarFile(), getManifest()

getCertificates

public Certificate[] getCertificates()
                              throws IOException
接続で使う URL が JAR ファイルエントリを指す場合に、この接続用の Certificate オブジェクトを返します。そうでない場合は null を返します。このメソッドは、入力ストリームをその最後まで読み込むことで、接続が完全に検証された場合にだけ呼び出すことができます。接続で使う URL が JAR ファイルエントリを指す場合はこの接続用の Certificate オブジェクト、そうでない場合は、このメソッドは null を返します。

***注: 設計上、J2ME CDC に証明書のサポートはありません。CDC 自体または CDC 上に構築された J2ME プロファイルが java.security.Signature クラス (およびそのすべての依存関係) を追加しない場合は、常に null 値を返す必要があります。

戻り値:
接続で使う URL が JAR ファイルエントリを指す場合はこの接続用の Certificate オブジェクト、そうでない場合は null
例外:
IOException - JAR エントリの取得時に IOException がスローされた場合
関連項目:
getJarEntry()

Foundation 1.1.2

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。