tohokuaikiのチラシの裏

技術的ネタとか。

2014-07-01から1ヶ月間の記事一覧

ConfluenceのXWorkで、ダウンロードさせるActionを作る

Struts2の記事を参考に。ただ、参考にと言ってもXWorkにはない機能がStruts2にあるので要注意。 atlassian-plugin.xml resultのtypeにstreamを使用する。こんな感じ。 <result name="success" type="stream"> <param name="contentType">application/octet-stream</param> <param name="inputName">exportZipInputStream</param> <param name="bufferSize">1024</param> </result>

SaxonでDTDチェックする

本来はこういう使い方はしないんだろうけど、SaxonをDTDバリデータとして使ってみる。Saxonは8.7. // 対象となるXML String xml = "<xsl:stylesheet version=\"2.0\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\"></xsl:stylesheet>"; try { StreamSource xslSource = …

XSLTのoutput要素では変数を使えないが、result-documentでは変数を使える件

Saxon-bの9あたりで。XSLTを <xsl:output method="xml" omit-xml-declaration="yes" encoding="UTF-8" indent="yes" doctype-system="{$dtd_path}"/> って書くと、 ってまんまでちゃうのに、 <xsl:template match="/"> </xsl:template></xsl:output>

SaxonでJavaのAPIを通してパラメータを渡す方法

Javaのコード内の変数をXSLスタイルシートに渡す方法を調べた。参考ページ パラメータを使った値の受渡し Saxon 9.2 / Java / XSLT: setting transformer parameters using setParameters() - Stack Overflow Java側の設定 TransformerのsetParameterメソッ…

Confluenceプラグインのコード内でpageManagerとかbandanaManagerとかを取得する方法

各種Manager系Objectが取れないと話にならないですよねーってことで。 Servletプラグイン編 servletプラグインの場合は、コンストラクタに書く。 書いておいて当たればSpringの方で適当にInjectionしてくれる。 public class HogehogeServlet extends HttpSe…

ConfluenceのPlugin作成で一時データを取っておきたいときの方法 - ContentPropertyManagerとBandanaManager

Confluenceでデータを取っておきたい方法について。2つある。ContentPropertyManagerとBandanaManager。*1 参考ページ Persistence in Confluence - Atlassian Developers Developing a Confluence Plugin « Luminis Software Development基本的にどちらも、…

dom4jでバリデーションを効かせたくないのでいろいろやった結果

いちいちhttpでDTD取ってこられると大変なので、ローカルに置いたものでValidationしてほしいわけで。ところがDOCTYPEの書き換えをしようとする際にもこのDTDバリデーションをしてしまってては意味がないわけでして。 dom4jのDocumentみると dom4j - Frequen…