我应该根据停产的产品来创建新产品.问题是停产产品的原始程序员丢失了源代码(是的,太棒了).
该软件通过网络浏览器运行.当我转到他们的URL时,会弹出一个窗口,标题为“ Oracle Developer Forms Runtime”.我不确定这是applet还是Java插件或其他什么,因为我只是在开发Java“命令行”应用程序.
我能看到应用程序和服务器之间正在调用和返回的内容,以便模仿吗?如果是这样,我应该寻找什么工具?
解决方法:
鉴于我对Oracle Forms的了解(这在一定程度上受到限制),Peter Tillemans的答案是正确的.该applet仅仅是Oracle Forms内置屏幕的胖客户端.
如果要恢复源代码,则需要查找为应用程序构建的* .fmb文件(包含源代码的Forms Builder文件).它们将包含PL / SQL源代码以及屏幕布局,并且必须使用Oracle Forms Builder工具打开.您可能还需要获取要在数据库服务器上运行的任何PL / SQL源代码的副本.
如果丢失了FMB文件,则可能必须找出一种方法来从已编译的FMX文件中恢复源,Forms Server在运行时实际上使用了该方法.我不知道有任何反编译器.
我认为,反编译小程序是徒劳的,因为它是Oracle Forms Java客户端的一部分(并且是Oracle Forms产品本身的一部分),旨在部署在Web服务器上.实际上,没有将作为应用程序一部分开发的屏幕实际编译为Java类.该applet实际上执行从Oracle Forms Server接收UI信息并将其显示在屏幕上的工作.繁重的工作是在Forms Server上进行的;所有业务逻辑和事务管理都在此服务器中进行,这就是您应该遵循的(可以在FMB和FMX文件中找到).
还有其他文件可能也需要考虑.
> PLL文件将包含在多种形式中使用的PL / SQL源代码.
> MMB文件将包含菜单模块.
标签:web-applications,java,reverse-engineering
来源: https://codeday.me/bug/20191208/2090435.html