Teiid 用户定义的 Java 函数不可见

问题描述

我正在使用 teiid-wildfly 服务器。我遵循了 teiid 文档中提供的用户定义函数示例。下面是我的 vdb 文件。如果我需要导入任何其他属性来查看/访问用户定义的函数,请告诉我。元数据 URL(http://localhost:8080/odata4/UDFTest/JavaCall/$metadata) 没有列出用户定义的函数,服务器日志中也没有错误。我创建了包含 TempConv 文件实现的 jar 文件,并在模块目录下完成了设置。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<vdb name="UDFTest" version="1">
<property name ="lib" value ="org.test"></property>
<model visible="true" name="JavaCall" type="VIRTUAL">
<metadata   type="DDL">
<![CDATA[
CREATE VIRTUAL FUNCTION celsiusToFahrenheit(celsius double) RETURNS double OPTIONS (JAVA_CLASS 'org.test.TempConv',JAVA_METHOD 'celsiusToFahrenheit');
]]> </metadata>
</model>
</vdb>
     

解决方法

OData 存在公开函数的已知问题:请参阅 https://issues.redhat.com/browse/TEIID-5736

解决方法是改用过程。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...