は、DSSのdateTimeマッピングでは問題にしているようで、クエリのサンプルですが、私は確かにJira ticket @wso2を開きました。私の呼び出しが正しい値を返すようにするために、私は結果を得れば、私はXSLを適用し、次の(警告痛いソリューション:))
は、クエリは、MS
<query id="getDataQuery" useConfig="CassandraDB">
<expression>SELECT unixTimestampOf(minTimeuuid(ts)) as dt,value FROM keyspace.ts_tp WHERE source = :source and name = :name and bucket = :bucket and ts >= :tsFrom and ts <= :tsTo</expression>
<result element="result" rowName="data">
<element column="dt" name="ts" xsdType="int"/>
<element column="value" name="value" xsdType="decimal"/>
</result>
<param name="source" paramType="SCALAR" sqlType="STRING"/>
<param name="name" paramType="SCALAR" sqlType="STRING"/>
<param name="bucket" paramType="SCALAR" sqlType="INTEGER"/>
<param name="tsFrom" paramType="SCALAR" sqlType="TIMESTAMP"/>
<param name="tsTo" paramType="SCALAR" sqlType="TIMESTAMP"/>
</query>
になりましたUNIXタイムスタンプを返しますを作りました変換は、それは、異なるタイムゾーンでテストする必要があります日付
<xsl:stylesheet exclude-result-prefixes="xsl soapenv" version="2.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output encoding="utf-8" indent="yes" method="xml" omit-xml-declaration="yes"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="dt">
<xsl:element name="ts">
<xsl:value-of select='xs:dateTime("1970-01-01T00:00:00") + . * xs:dayTimeDuration("PT0.001S")'/>
</xsl:element>
</xsl:template>
</xsl:stylesheet>
、日の光の節約を計算するが、公式の修正を待って、作業ハックのようです。
UNIXのタイムスタンプを処理してから、SELECT unixTimestampOf(minTimeuuid(ts))をts、value FROM keyspace.ts_tp WHERE name =:nameに変更することで、ESBの変換を実行することができます'しかし、私はこの問題に対してもっと簡単な解決策はないと想像することはできません – Nicolas