Denodo customWrapper Datetime 字段在环境中不起作用



Denodo 自定义包装器 我正在使用下面的代码,在timestamp_field中,timestamptz_field列为空白。

@Override
public CustomWrapperSchemaParameter[] getSchemaParameters(
Map<String, String> inputValues) {
return new CustomWrapperSchemaParameter[] {
new CustomWrapperSchemaParameter("date_field", java.sql.Types.DATE)
, new CustomWrapperSchemaParameter("timestamp_field", java.sql.Types.TIMESTAMP)
, new CustomWrapperSchemaParameter("timestamptz_field", java.sql.Types.TIMESTAMP_WITH_TIMEZONE)
, new CustomWrapperSchemaParameter("time_field", java.sql.Types.TIME)
};
}
@Override
public void run(CustomWrapperConditionHolder condition,List<CustomWrapperFieldExpression> projectedFields,CustomWrapperResult result, Map<String,String> inputValues)
throws CustomWrapperException {
String strDatewithTime="2019-08-29 20:46:46.166666700";
// TODO Auto-generated method stub
int index = strDatewithTime.indexOf(".");
if(index>0)
{
strDatewithTime= strDatewithTime.substring(0, index);
}
DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
result.addRow(new Object[]{
LocalDate.parse("2017-10-11"),
LocalDateTime.parse(strDatewithTime,FORMATTER),
OffsetDateTime.parse("2015-03-08T01:59:59+01:00"),
LocalTime.parse("21:15:45")},
projectedFields);
}
  1. 要使其正常工作,我需要更改任何设置吗?
  2. 这都是硬编码,我认为没有任何代码问题。此代码在下面的链接中提到 https://community.denodo.com/docs/html/browse/7.0/vdp/developer/developing_extensions/developing_custom_wrappers/dealing_with_datetime_and_interval_types

我已经找到了问题并解决了。本地 VDP 客户端需要一些修补程序。服务器 vdp 已安装了一些其他修补程序。代码是正确的。 安装这些补丁后,数据将正常运行。我通过查看 vdp 管理员每个选项来弄清楚。感谢大家的支持。

最新更新