实际上,我为一个java应用程序编写了一个插件,它有两种版本1.)作为可执行文件和2.)可以作为applet从网页启动。
在某些时候,我需要一个自定义表单,显示来自oracle数据库的各种数据。我构建了该表单以及执行jdbc查询所需的类。
现在,当涉及到可执行文件时,表单会正确弹出预期的结果,但是当我尝试从applet调用它时,它会启动并且所有字段都为空,并且没有任何错误。
我唯一能想到的是,由于网络的异步性,在查询返回结果之前会弹出表单。
如果确实如此,是否有解决方法?
答案 0 :(得分:2)
我相信你只是捕获异常,因此看不到它们。或者只是不知道在哪里搜索它们。你打开applet控制台了吗?我相信你会发现一些例外。
Applet与应用程序没有什么不同。 Applet只有安全限制。除了下载的服务器之外,它无法与服务器进行TCP连接。重要的是:安全检查非常愚蠢。它基于字符串比较。它只是比较applet base的主机名和要连接的主机的主机名。例如,如果您的主机名是myhost.mycompany.com并且其IP是200.201.202.203,则必须在两个位置都使用DNS名称或IP地址,即使DNS名称的ping返回您的IP地址。检查一下,我希望一切顺利。
顺便说一句,您是否知道您使用的是“旧”,“过时”的设计?这是90年代设计的开始。人们在12年前切换到N层架构,因此,为了改进您的解决方案,您应该在服务器端实现数据库访问,并通过某种协议与服务器通信,例如:其余的API。