IntrospectionException:找不到方法:setLastModified



我们的服务器已更新到java8,下面的代码不再工作。我使用的是最新版本的jtdown,无法在java7或8中使用它。

该代码使用jtdown(java工具包)访问IBMi.上的集成文件系统

AS400 as400 = new AS400("myip","myuser","mypassword")
IFSFile file = new IFSFile(as400, params.path);     
if (file.exists()){
    Ifs ifs = new Ifs()
       ifs.CopyFile(as400,params.path,response)
       as400.disconnectAllServices();
}
else {
    redirect(action: "fileNotFound")
}   

我得到以下错误:

java.beans.InterspectionException:找不到方法:setLastModified。Stacktrace如下:java.lang.reflect.InvocationTargetException:null位于java.util.concurrent.ThreadPoolExecutiator.runWorker(ThreadPoolExecutiator.java:1142)~[na:1.8.0_77]位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)~[na:1.8.0_77]在java.lang.Thread.run(Thread.java:745)[na:1.8.0_77]原因:java.lang.Error:java.beans.InterspectionException:找不到方法:setLastModified网址:com.ibm.as400.access.IFSFileBeanInfo.(IFSFileBeanInfo.java:126)~[jt400-8.7.jar:JTOpen 8.7]在java.lang.Class.newInstance(Class.java:442)~[na:1.8.0_77]网址:com.sun.beans.finder.InstanceFinder.instante(InstanceFinder.java:96)~[na:1.8.0_77]网址:com.sun.beans.finder.InstanceFinder.find(InstanceFinder.java:66)~[na:1.8.0_77]位于java.beans.Introspector.findExplicitBeanInfo(Introspector.java:448)~[na:1.8.0_77]在java.beans.Interspector.(Introspector.java:398)~[na:1.8.0_77]位于java.beans.Introspector.getBeanInfo(Introspector.java:173)~[na:1.8.0_77]在PageController.getBoardReport(PageControllergroovy:113)~[min/:na]

有没有办法解决这个问题?

看起来Java bean基础结构在1.7中发生了变化,要求setter方法的返回类型为void(请参阅为什么PropertyDescriptor行为从Java 1.6更改为1.7。您将需要自己构建JTOpen,向IBM服务部门索取包含修复程序的jt400.jar,或者等待JTOpen的下一个版本。

相关内容

  • 没有找到相关文章

最新更新