タイトルだけだとなんのこっちゃって感じですが。。。
一番わかりやすいのは、Wordのインポート機能のページかと思います。ページを表示しているときに右上の「Tools」からプルダウンで出てくるやつ。
これって、左側のページメニューやスペースへのアクセス権限はすべてチェックされているけどページを表示しているわけではないんですよね。こういうのをプラグインで作りたい。XWorks/WebWorks2のActionクラスであれば簡単にできます。
単純に、
public class AttachPagecustomAction extends ViewPageAction implements PageAware
というようにViewPageActionを継承し、PageAwareをImplementしたActionクラスにすること。
ViewPageAction は、添付ファイルのアップロード画面だとAbstractViewAttachmentsActionクラスになる*1。
あとは、未実装なものを
@Override public ContentEntityObject getContentEntityObject() { return getPage(); } private AbstractPage page; /** * * @return */ @Override public AbstractPage getPage() { return page; } /** * * @param page */ @Override public void setPage(AbstractPage page) { this.page = page; } @Override public boolean isPageRequired() { return true; } @Override public boolean isLatestVersionRequired() { return true; } @Override public boolean isViewPermissionRequired() { return true; }
としてやる。基本的に全部tureで良い。
また、このページベースだと、pageId=をURLかPOSTで渡してやらないとPage Not Foundの画面が出る。便利である。
*1:・・・みたい。ページの添付ファイルアップロード画面を見たらそうなってた