WebRelease 2.70 リリースのお知らせ

WebRelease 2.70 をリリースいたしました。2.70 は大幅な機能強化を行なった新バージョンです。

このバージョンは、ページのリビジョン比較やテンプレートの性能分析機能など、便利な新機能が盛り込まれています。バージョン 2.70 の概要は下記のとおりです。

ページのリビジョン比較

リビジョン比較例

二つのリビジョンの違いを左右に並べた状態で比較表示

あるページの、二つのリビジョン間の差分をビジュアルに表示する機能が追加されました。

リビジョン間比較画面はページのプレビューアイコンを Shift+Click または Control+Click することで表示することができます。プレビューアイコンが表示されている場所であれば、ほとんどすべての箇所でリビジョン比較画面を利用することができるようになっています。承認画面でもリビジョン比較が可能です。

比較表示は下記の 6 種類の方法で行えます。用途に応じたわかりやすい比較表示を選択できます。

  • 入力要素レベルの違いの比較。入力要素の追加、削除、また、要素に入力されている値の違いを、要素単位で比較した結果を、ビジュアルに表示します。
  • そのページのコンテンツから生成される html について、二つのリビジョンの違いをインラインで比較表示します。旧リビジョンと比較して、新リビジョンで追加された部分は緑色、削除された部分は赤色で表示されます。
  • そのページのコンテンツから生成される html について、二つのリビジョンの違いを左右に並べた状態で比較表示します。旧リビジョンと比較して、新リビジョンで追加された部分は緑色、削除された部分は赤色で表示されます。
  • 比較画面には、比較対象となっているページをプレビューする画面が表示されます。比較画面中では、旧リビジョンから削除された部分は赤色、新リビジョンに追加された部分は緑色で表示されます。
  • 比較画面には、比較対象となっている二つのリビジョンの、旧リビジョン側をプレビューする画面が表示されます。比較画面中では、旧リビジョンにあり、新リビジョンでは削除されている部分が赤色で表示されます。削除されている部分を確認する場合に便利です。
  • 比較画面には、比較対象となっている二つのリビジョンの、新リビジョン側をプレビューする画面が表示されます。比較画面中では、旧リビジョンになく、新リビジョンで追加されている部分が緑色で表示されます。加筆されている部分を確認する場合に便利です。

ページ検索

ページ検索画面

ページ一覧画面から、条件にマッチするページを検索できるようになりました。ページのコンテンツ中に含まれる文字列を検索することができるだけでなく、ページのタイトル、ファイル名、リソースのファイル名などでも検索を行えます。

検索結果は一覧表示されます。一覧からは、ヒットしたページのページ編集画面に直接入ることができるので、コンテンツの修正・訂正作業が効率的に進められます。

検索範囲は、検索を実行しているフォルダ以下になります。トップフォルダで検索すれば全ページが検索対象になります。

外部リンクチェック

コンテンツ中に含まれる外部のオブジェクトを参照する URL (以下、外部リンク)を抽出し、定期的にリンクチェックを行う機能が追加されました。

この機能では、公開サーバにアップロードされるすべてのコンテンツに対して、コンテンツのアップロードのタイミングでその中に含まれている URL を抽出し、その URL が WebRelease で管理しているオブジェクトを指していない場合に、それを外部リンクと認識します。

外部リンクについては、設定された条件に従って定期的に HTTP(S) による GET を繰り返し、URL 先にオブジェクトが存在するかどうかをチェックし続けます。リンク切れが検出された場合(指定された期間以上に渡ってそのオブジェクトへのアクセスが失敗に終わった場合)には、指定されているメールアドレスにメールでの通知を発送します。

この機能を利用することで、公開されているコンテンツ中にある URL について、常時リンク切れのチェックを行うことができます。

公開前のコンテンツについては、コンテンツ作成段階で、ページごとに外部リンクの抽出とリンク切れのチェックを手動で行うことができます。

ページだけでなく、リソースとして登録されている css 内の URL も外部リンクチェックの対象となります。

テンプレート検索

 テンプレート検索画面

テンプレート一覧画面から、条件にマッチするテンプレートやコンポーネントを検索できるようになりました。テンプレートやコンポーネントの展開やメソッド中に含まれる語、メソッド名、要素名、テンプレート名、コンポーネント名、リソース名、リソースファイル名などで検索を行うことができます。

検索結果は一覧表示されます。一覧からは、ヒットしたテンプレートの編集画面に直接入ることができるので、テンプレートやコンポーネントの修正・訂正作業が効率的に進められます。また、メソッドの呼び出し元の洗い出しなども効率的に行えます。

テンプレート・プロファイル

FTP (公開コンテンツ生成処理)にかかる時間を分析する「テンプレート・プロファイル」機能が実装されています。

静的コンテンツ生成型の CMS である WebRelease では、コンテンツ生成にかかる時間を短くしたいというニーズが常に存在します。WebRelease を長期に渡り使い続けていると、ページ数を増やしたり、テンプレートの機能を強化するなどするごとに、少しずつコンテンツ生成時間が長くなってしまい、処理時間を短縮するためにテンプレートの記述を改善する必要が生じる場合があります。従来は、プロファイラがなかったため、手探りでのチューニングにならざるを得ませんでしたが、2.70 からはプロファイラが導入されたので、効率よくチューニングを行うことができるようになりました。

この機能は、FTP 実行中に、テンプレートの展開、メソッド、システム関数、などがそれぞれ何回呼び出されたか、また、それらの内部で処理にかかった時間を詳細に記録します。記録した結果は、消費時間の長いメソッド順にランキング形式で表示されますので、それを手がかりにして効率的にテンプレートのチューニングをおこなうことができます。

計測結果はダウンロードも可能です。

リソース管理機能の強化

サイトリソース管理画面

サイトリソース、テンプレートリソース、ページリソースの管理機能が大幅に強化されました。

  • 任意の形式のファイルを、任意のディレクトリ構造で管理できるようになっています。javascript や css などの複数のファイルの組み合わせで構成されるライブラリなどを、そのままリソースとして登録できるようになっています。
  • テキスト系のリソース (css や js など) の場合、リソースの本体をサーバ上で直接編集することができます。
  • zip 形式のファイルをアップロードし、サーバ上で解凍することができます。
  • サーバ上のディレクトリを zip 形式に変換することができます。また、それをダウンロードすることができます。
  • サイトリソースのディレクトリ階層の中に、ライター権限だけで読み書きできるディレクトリを作成することができます。

拡張タグ・関数・オブジェクトの追加

下記の拡張タグが追加されました。

wr-conditional, wr-cond, wr-switch, wr-case, wr-default

下記の関数が追加されました。

hasElement(), hasMethod(), fullURL(), quote(), jstr(), parseHtml(), previewClock(), rtlCount(), rtlRatio(), codePointAt(), unescapeEntities()

下記のオブジェクトが追加されました。

HTMLComment, HTMLDataNode, HTMLDocument, HTMLElement, HTMLElements, HTMLTextNode

追加されたオブジェクト群は html を parseHtml() 関数でパースした結果を扱うためのものです。2.70 には html パーサとして Jsoup が組込まれています。

Markdown の組み込み

Markdown プロセッサが組み込まれました。これにより「複数行テキスト」形式の要素の入力エリアで、必要に応じて markdown 記法を使用することができるようになっています。

組み込まれている markdown プロセッサは txtmark です。

YUICompressor の組み込み

YUICompressor が組み込まれました。これにより、作成した css や javascript などを、配信前に自動で圧縮処理することができるようになりました。

圧縮可能な対象は下記のとおりです。

  • テンプレートで作成した .css または .js というサフィックスを持つページ
  • サイトリソース、テンプレートリソース、ページリソースとして登録されている .css または .js というサフィックスを持つファイル

圧縮してから配信するかどうかはファイルごとに指定可能です。

ユーザの一括登録・削除・ユーザ情報のダウンロード

csv ファイルを使ってユーザを一括登録できるようになりました。ユーザIDや氏名、所属部署などの属性情報を、一定の形式の csv ファイルに準備することで、ユーザを一括登録することができます。

また、同様に csv ファイルを使ってユーザの属性を一括変更したり、一括削除したりすることもできます。この場合、csv ファイルの各行の左端の先頭カラムに実行すべき操作を指示するコマンドコードを指定します。ひとつの csv ファイル中にいろいろな処理を混在させることができます。

ユーザ登録情報は csv 形式でダウンロードすることができます。

パスワード管理の強化

ユーザが使用するパスワード中に含まれていなければならない、記号、英字大文字、英字小文字、数字、の最低数を指定できるようになりました。これにより、ユーザにより安全性の高いパスワードを設定するように要求することができるようになりました。

新たに設定した基準を満たさないパスワードを使用しているユーザには、次回ログイン時に基準を満たすパスワードへのパスワード変更を自動で求めます。

Developer Edition を識別する表示を追加

Developer Edition のマーカー

Developer Edition の場合に操作画面の最上部にオレンジ色のバーが表示されるようになりました。これにより本番環境とテスト環境の識別がしやすくなりました。

プレビュー機能の強化

テンプレートやコンポーネントの展開内や、メソッド内、ページ編集画面から入力する html 内などに、公開サーバ上での URL を直接記述した場合でも、それをきれいにプレビューできるようになりました。

2.70 では、プレビュー用のコンテンツを生成する時に、その中に含まれるすべての URL について、それが、そのサイトで管理しているオブジェクト(ページやリソース)の公開サーバ上での URL と一致している場合に、それを、対応するプレビュー用の URL に書き換えます。これにより、コンテンツ中に公開サーバ上の URL が直接記述されていても、きれいにプレビューできます。

プレビュー時の URL の書き換えは、リソースとして登録されている css や html に対しても行なわれます。例えば、サイトリソースに登録されている css 内にある、相対パスで指定されている画像の URL もプレビュー用の URL への書き換えが行なわれます。

この改良により、WebRelease 外で作成した html や画像をそのまま取込んだ場合にも、それらをきれいにプレビューできるようになりました。

なお、この書き換え処理は行なわないように設定することも可能となっています。

ページリソース

2.70 では、ページにもリソースを登録できるようになりました。ページのコンテンツとして直接 html を記述する場合に、その html から参照する画像や添付ファイル、スクリプト、スタイルシートなどをページリソースとして登録しておくことができます。ページごとにファイルマネージャーが使えるのに似ています。

強化されたプレビュー機能とページリソースを組み合わせて利用すれば、外部作成コンテンツの取り込みを比較的容易に行なうことができます。

その他の修正

比較的小さな改良ですが、下記の改良が加えられています。

  • テンプレートやコンポーネントに定義したメソッドに対して private の指定ができるようになりました。Private 指定されているメソッドは、そのテンプレートまたはコンポーネント外からは呼び出すことができないため、そのメソッドの呼び出し元を限定することができます。これによりメソッドのメンテナンス性が向上します。
  • リンク要素のリンク先にページデータ型のテンプレートから作成されたページを指定できないように制限することができるようになりました。
  • 複数のテンプレートやコンポーネントに対して、一括して WTL バージョンを設定変更できるようになりました。
  • コンテンツ生成エラーが発生した場合のエラーメッセージが強化されました。従来の情報に加え、発生個所への到達経路(スタックトレース)が表示されるようになりました。
  • サイトへのスタッフ登録の U/I が改良されています。登録されている全ユーザの一覧からユーザを複数選択し、一括してスタッフ登録できるようになっています。また、同時にスタッフの権限設定も行なえるようになりました。登録済みのスタッフに対し、権限やページフォルダへのアクセス制限を、一括して設定変更できるようになりました。
  • ページフォルダの作成時に、複数のフォルダを一括して作成できるようになりました。また、フォルダの公開サーバ上でのディレクトリ名も、フォルダ作成時に同時指定できるようになりました。
  • ページの公開開始指定時刻、公開終了指定時刻を、必須入力項目に指定できるようになりました。
  • ページの過去リビジョンを、複数指定して一括して削除することができるようになりました。
  • その時点でログインしているユーザの一覧を表示できるようになりました。作業中のサイトがあれば、その情報も表示されます。
  • システムのログイン履歴に、ログインしたユーザの IP アドレスと User-Agent が記録されるようになりました。

対応プラットフォームの変更

WebRelease 2.70 のサポートプラットフォームは下記のとおりです。

  • Red Hat Enterprise Linux v.7 Server (x86_64)
  • Red Hat Enterprise Linux v.6 Server (x86・x86_64)
  • Red Hat Enterprise Linux v.5.5 以降 (x86・x86_64)
  • CentOS 7 (x86_64)
  • CentOS 6 (x86・x86_64)
  • CentOS 5.5 以降 (x86・x86_64)
  • OS X v10.10 (Yosemite)
  • OS X v10.10 (Yosemite) + OS X Server
  • OS X v10.9 (Mavericks)
  • OS X v10.9 (Mavericks) + OS X Server
  • OS X v10.8.3 (Mountain Lion) 以降
  • OS X v10.8.3 (Mountain Lion) 以降 + OS X Mountain Lion Server

本バージョンより Solaris 系はサポート対象プラットフォームではなくなりました。
なお、対応プラットフォームは随時変更される場合があります。

その他

WebRelease 2.70 には、上記以外にも多数の小機能の追加、発見された不具合の修正などが施されています。

従来製品との互換性

WebRelease 2.70 は WebRelease 2.6系 に対して十分な互換性を維持しています。2.6系 以前のバージョンをお使いのお客様は、安全に 2.70 へのアップグレードが可能です。

アップグレード作業中の不慮の事故や予期せぬ事態に対応するために、アップグレード作業開始前にストレージのバックアップを取得しておくことをお勧めします。

バージョン 2.70 は従来製品 (2.1x 2.2x 2.3x 2.4x 2.5x 2.6x)と十分な互換性を維持していますが、ユーザインタフェースを含め、比較的大きな変更が加えられているバージョンでもあります。WebRelease の場合、アップグレードライセンスに規定されている範囲内であれば、一定の期間に限り、現在ご利用のバージョンと、新しいバージョンとを、異なるサーバ上で並行してご利用いただくことができます。事前にバージョン 2.70 の機能を確認しておきたいとお考えでしたら、検証環境をご用意いただき、現在ご利用のバージョンと並行して、新バージョンを試用することをご検討ください。

このバージョンで修正された不具合

このバージョンでの不具合の修正はありません。