Java 远程调用集算器 - 创建索引报错
服务端集算器版本是:20230520,连接集算器最新包(esproc-bin-20230520.jar)
通过 Java 调用 call spl 脚本 xxx()
文件内容如下:
=file(“splfile.spl”)
=A2.open()
=A3.index(indexname; 字段名 name ;)
报错如下:
java.sql.SQLException
at com.esproc.jdbc.InternalStatement.executeJDBC(InternalStatement.java:301)
at com.esproc.jdbc.InternalStatement$1.run(InternalStatement.java:153)
Caused by: java.io.EOFException
at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2960)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1540)
at java.io.ObjectInputStream.readUnshared(ObjectInputStream.java:521)
at com.scudata.parallel.SocketData.read(SocketData.java:123)
at com.scudata.parallel.UnitClient.sendByNewSocket(UnitClient.java:467)
at com.scudata.parallel.UnitClient.JDBCExecute(UnitClient.java:675)
at com.esproc.jdbc.InternalStatement.executeJDBC(InternalStatement.java:277)
… 1 more
————-jdbc-close connect:1
本地创建索引没问题的,通过 ip:8281 远程调用集算器创建就出现这个错误
服务器要和 jdbc 用相同版本的 jar
是的,都是同一个 jar
esproc-20230520.jar 我替换同一个包了,但是 Java 远程调用集算器还是有这个问题
发现 20230520 集算器没有这个
jdom
包了请加 QQ: 29819725 备注 集算器, 交流。这个 EOF 错误跟调用什么内容没关系,是否建索引不重要,加 QQ 后,给你发 demo 验证一下。
加您了
已修改代码,结果集返回的值没有序列化时,返回错误信息, 不支持的结果类型,到前端;不再引起 EOF 错误。但是这类问题目前还是需要在脚本最后加一句 return,防止返回中间计算的未序列化的结果。
更新 git 源码即可解决该问题。
👌 👍