| MINERVAのサーブレットサポートは、Javaサーブレット標準に従っています。
servletパッケージの中で定義された
サーブレット述語のリストをご覧下さい。
これらの述語の意味は、対応するJavaのそれに一対一対応しています。
サーブレットの使用の例については、サーブレット
をご覧下さい。
multipart/form-dataのサーブレットの使用の例については、お持ちのMINERVAのservlet/WEB-INF/minerva/test.minをご覧下さい。
multipartデータのアップロードのために、MINERVAは簡便でコンパクトな
述語群を提供しています。
multipart_has_more_elements/1
multipart_next_element/2
multipart_get_content/2
multipart_get_content/3
multipart_get_stream/2
multipart_copyfile/2
multipart_create/2
multipart_create(+HttpServletRequest, -MultiPartFilter)
この述語は、multipart/form-dataリクエストに対して、
その時点から個々のユーザデータを引き出すために使用することが
できるようなmultipartフィルターを返します。
multipart_create(+HttpServletRequest, +Encoding, -MultiPartFilter)
この述語は、multipart/form-dataリクエストに対して、
その時点から個々のユーザデータを引き出すために使用することが
できるようなmultipartフィルターを返します。
multipart_has_more_elements(+MultiPartFilter)
この述語は、まだ処理されていないmultipart/form-data
部分があれば真を返します。それ以外では、失敗します。
multipart_next_element(+MultiPartFilter, -HeaderList)
この述語は、フィルターを次の部分へ切り換え、HeaderList
にこの部分のHttpParametersを返します。HeaderListは、
[http(HttpHeaderName,HttpHeaderValue,[OptionName=OptionValue,...]),...]
のような項のリストです。
HeaderNameとOptionsNameの中の全ての大文字は、小文字に変換されます。
例えば、以下のようになります。
[http('content-disposition','form-data',
[name = 'File', filename = 'test.html']),
http('content-type', 'text/html', [])]
multipart_get_content(+MultiPartFilter, -Content)
この述語は、form-dataの中身をアトムとして返します。
(文字は、ISO-8859-1のものであると仮定されます。)
multipart_get_content(+MultiPartFilter, +Encoding, -Content)
この述語は、form-dataの中身をアトムとして返します。
Encodingは、文字エンコーディングを決めるアトムです。
multipart_get_stream(+MultiPartFilter, -InputStream)
この述語は、次の部分のデータの為に、InputStream
を返します。通常InputStreamは、open/4でMinervaStream
に変換されます。例えば以下のようにです。
open(InputStream,read,Stream,[stream,binary]) .
multipart_copyfile(+MultiPartFilter, +Filename)
この述語はform-data部分の中身をFilenameのファイル名を持つ
ファイルにコピーします。
サーブレット述語のリスト
multipart_has_more_elements/1,
multipart_next_element/2,
multipart_get_content/2,
multipart_get_content/3,
multipart_get_stream/2,
multipart_copyfile/2,
multipart_create/2,
servlet_get_init_parameter/3,
servlet_get_init_parameter_names/2,
servlet_log/2,
servlet_get_real_path/3,
servlet_restart/1,
servlet_get_mime_type/3,
request_get_parameter/3,
request_get_parameter_names/2,
request_get_parameter_values/3,
request_get_character_encoding/2,
request_get_content_length/2,
request_get_content_type/2,
request_get_remote_addr/2,
request_get_remote_host/2,
request_get_scheme/2,
request_get_server_name/2,
request_get_server_port/2,
request_is_secure/1,
request_get_auth_type/2,
request_get_context_path/2,
request_get_cookies/2,
request_get_date_header/3,
request_get_header/3,
request_get_header_names/2,
request_get_headers/3,
request_get_int_header/3,
request_get_method/2,
request_get_path_info/2,
request_get_path_translated/2,
request_get_query_string/2,
request_get_remote_user/2,
request_get_requested_session_id/2,
request_get_request_uri/2,
request_get_request_url/2,
request_get_servlet_path/2,
request_get_session/2,
request_is_requested_session_id_from_cookie/1,
request_is_requested_session_id_from_url/1,
request_is_requested_session_id_valid/1,
request_is_user_in_role/2,
response_get_writer/2,
response_get_output_stream/2,
response_add_cookie/2,
response_add_date_header/3,
response_add_header/3,
response_add_int_header/3,
response_contains_header/2,
response_encode_redirect_url/3,
response_encode_url/3,
response_send_error/2,
response_send_redirect/2,
response_set_date_header/3,
response_set_header/3,
response_set_int_header/3,
response_set_status/2,
response_set_content_type/2,
session_get_attribute/3,
session_get_attribute_names/2,
session_get_creation_time/2,
session_get_id/2,
session_get_last_accessed_time/2,
session_get_max_inactive_interval/2,
session_invalidate/1,
session_is_new/1,
session_remove_attribute/2,
session_set_attribute/3,
session_set_max_inactive_interval/2,
cookie_create/3,
cookie_get_comment/2,
cookie_get_domain/2,
cookie_get_max_age/2,
cookie_get_name/2,
cookie_get_path/2,
cookie_get_secure/2,
cookie_get_value/2,
cookie_get_version/2,
cookie_set_comment/2,
cookie_set_domain/2,
cookie_set_max_age/2,
cookie_set_path/2,
cookie_set_secure/2,
cookie_set_value/2,
cookie_set_version/2
|