Java web applet / form逆向工程(Java web applet/form reverse engineering)

编程入门 行业动态 更新时间:2024-10-26 12:35:25
Java web applet / form逆向工程(Java web applet/form reverse engineering)

我应该根据已停产的产品创建一个新产品。 问题是已停产产品的原始程序员丢失了源代码(是的,真棒)。

该软件通过Web浏览器运行。 当我转到他们的网址时,会弹出一个标题为“Oracle Developer Forms Runtime”的窗口。 我不确定这是applet或Java插件还是其他什么,因为我只是在开发Java“命令行”应用程序。

有没有运气我可以看到在应用程序和服务器之间调用和返回的内容,以便我可以模仿类似的东西? 如果是这样,我应该研究哪些工具?

I'm supposed to create a new product based on a discontinued product. The problem is the original programmers of the discontinued product lost the source code (yeah, awesome).

The software is run through a web browser. When I go to their url, a window pops up with the title "Oracle Developer Forms Runtime". I'm not sure if this is an applet or Java plugin or whatever, because I've only been developing Java "command line" applications.

Is there any luck I can see what's being called and returned between the app and the server so I can imitate something similar? If so, what tools should I be looking into?

最满意答案

鉴于我对Oracle Forms的了解(这种方式非常有限),Peter Tillemans的答案是正确的方向。 applet只是用于在Oracle Forms中构建的屏幕的胖客户端。

如果要恢复源代码,则需要查找为应用程序构建的* .fmb文件(包含源代码的Forms Builder文件)。 这些将包含PL / SQL源代码以及屏幕布局,并且必须使用Oracle Forms Builder工具打开。 您可能还想获取要在数据库服务器上运行的任何PL / SQL源代码的副本。

如果您丢失了FMB文件,那么您可能必须找到一种方法来从已编译的FMX文件中恢复源,这些文件实际上是由Forms Server在运行时使用的。 我不知道有任何反编译器。

在我看来,反编译applet是徒劳的,因为它是Oracle Forms Java客户端的一部分(并且是Oracle Forms产品本身的一部分),意味着要部署在Web服务器上。 作为应用程序的一部分开发的屏幕实际上都没有编译成Java类; applet实际上执行从Oracle Forms Server接收UI信息并在屏幕上显示它的工作。 是重型提升发生的Forms Server; 所有业务逻辑和事务管理都发生在这个服务器上,这就是你应该追求的(它可以在FMB和FMX文件中找到)。

还可能需要考虑其他文件。

PLL文件将包含在多个表单中使用的PL / SQL源代码。 MMB文件将包含菜单模块。

Given my knowledge of Oracle Forms (which is quite limited by the way), Peter Tillemans's answer is in the right direction. The applet is merely a thick-client for the screens built in Oracle Forms.

If you want to recover the source code, you'll need to look for the *.fmb files (the Forms Builder files that contain the source code) built for the application. These would contain the PL/SQL source code as well as the screen layout, and would have to be opened using the Oracle Forms Builder tool. You might also want to acquire a copy of any PL/SQL source code that is meant to run on the database server.

If you've lost the FMB files, then you might have to figure out a way to recover the sources from the compiled FMX files, that is actually used at runtime by the Forms Server. I'm not aware of any decompilers for these.

In my opinion, decompiling the applet is an exercise in futility, for that is a part of the Oracle Forms Java client (and is part of the Oracle Forms product itself), meant to be deployed on a web server. None of the screens developed as part of the application, are actually compiled into Java classes; the applet actually performs the job of receiving UI information from the Oracle Forms Server and displaying it on the screen. It is the Forms Server where the heavy lifting occurs; all business logic and transaction management occurs in this server, and this is what you should be after (and it can be found in the FMB and FMX files).

There are other files that might also need to be accounted for.

PLL files would contain PL/SQL source code that is in use across multiple forms. MMB files would contain menu modules.

更多推荐

Java,I'm,The,电脑培训,计算机培训,IT培训"/> <meta name="description

本文发布于:2023-08-07 14:10:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1464700.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:工程   applet   Java   web   engineering

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!