Java 还是 ABAP Web Dynpro?(Netweaver 上的 SAP Web 开发)

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/363523/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-29 12:06:01  来源:igfitidea点击:

Java or ABAP Web Dynpro? (SAP Web Development on Netweaver)

javasapabapdynpro

提问by Chef Chris

Are there any good arguments for using Java Web Dynpro over ABAP Web Dynpro? I've heard that the Java version is more mature by about 18 months because Dynpro was made for Java, and then ABAP devs wanted it once they saw it working.

在 ABAP Web Dynpro 上使用 Java Web Dynpro 有什么好的论据吗?我听说 Java 版本更成熟了大约 18 个月,因为 Dynpro 是为 Java 设计的,然后 ABAP 开发人员看到它工作后就想要它。

I know ABAP is propriatary to SAP and the Java is much more widely used. Does this fact, plus the maturity of the Java version make it the best choice?

我知道 ABAP 是 SAP 专有的,而 Java 的使用要广泛得多。这个事实,再加上 Java 版本的成熟,是否使它成为最佳选择?

Also. should I even consider using the NWDI with Dynpro? NWDI seems like such a bad idea to me when I can use ANT for free.

还。我什至应该考虑将 NWDI 与 Dynpro 一起使用吗?当我可以免费使用 ANT 时,NWDI 对我来说似乎是一个坏主意。

回答by Igal Serban

Update( two years later):Now its official. Java Web Dynpro are put in maintenance mode. which mean that its will soon be only legacy technology. Right now( 2010) SAP is returning to abap only stack. I am not providing a link because sap links are short lived. Just search in http://sdn.sap.com.

更新(两年后):现在是官方的。Java Web Dynpro 处于维护模式。这意味着它很快将成为唯一的传统技术。现在(2010 年)SAP 正在返回到 abap only stack。我没有提供链接,因为 sap 链接是短暂的。只需在http://sdn.sap.com 中搜索即可。

Before update:There is no official sap position on this question as far as I know. So I will throw my two cents. First of all, I don't know of any good argument to use Java over ABAP in sap land.

更新前:据我所知,这个问题没有官方的sap立场。所以我会扔掉我的两分钱。首先,我不知道在 sap land 中使用 Java 而不是 ABAP 有什么好的论据。

It seems to me that new thing were developed in Java by Sap, because it was the "future". It looks like they actively hampered the development of the ABAP stack to give the Java stack a chance. But the only reason to use the SAP java application server is to access information and business logic on the ABAP application servers. There is no reason to use it by itself (as there are better j2ee alternatives). And even sap has not done any application of significance on the Java Application Server.

在我看来,新事物是由 Sap 用 Ja​​va 开发的,因为它是“未来”。看起来他们积极阻碍了 ABAP 堆栈的开发,以给 Java 堆栈一个机会。但使用 SAP java 应用服务器的唯一原因是访问 ABAP 应用服务器上的信息和业务逻辑。没有理由单独使用它(因为有更好的 j2ee 替代品)。甚至 sap 也没有在 Java Application Server 上做过任何有意义的应用。

About the maturity. The webdynpro are more mature on the java stack. But the stack itself is terribly imature.

关于成熟度。webdynpro 在 java 堆栈上更加成熟。但是堆栈本身非常不成熟。

It take more than ten minutes to start on a decent hardware. The logging is scattered all over the place. With unusable gui. And very unfriendly to text viewer. It is not using the java community resources for staff like version management and builds. And the SAP alternatives are imature.

在像样的硬件上启动需要十多分钟。伐木散落在各处。带有无法使用的 gui。并且对文本查看器非常不友好。它没有将 Java 社区资源用于诸如版本管理和构建之类的人员。而 SAP 的替代方案还不成熟。

About the availability of java programmers. That's true, of course, but: Since most of the logic is in the abap stack ( in most scenarios ) there is a need to know both java and abap for any, more than trivial, application. And here you are dealing with a scarce resource. What happens is that you teach abap to java developer or vice versa. This is not bad but it is done from the wrong reasons. And you will have inexperience developers on the project ( inexperienced in one language stack).

关于 Java 程序员的可用性。当然,这是真的,但是:由于大部分逻辑都在 abap 堆栈中(在大多数情况下),因此对于任何不重要的应用程序,都需要同时了解 java 和 abap。在这里,您正在处理稀缺资源。发生的情况是您将 abap 教给 Java 开发人员,反之亦然。这还不错,但这是出于错误的原因。并且您将拥有项目中缺乏经验的开发人员(缺乏一种语言堆栈的经验)。

Final word. If you care about usability of your site. Consider BSP or JSP. The webdynpro revive all the ugliness and un-usability that is in the Sapgui.

最后一句话。如果您关心网站的可用性。考虑 BSP 或 JSP。webdynpro 恢复了 Sapgui 中的所有丑陋和不可用性。

回答by wise

I remember the instructor at my ABAP webdynpro class said that the ALV library was unavailable in the Java stack, so if you want the features it offers, like automatic excel exports and summation, you'd have to implement them yourself.

我记得我的 ABAP webdynpro 课程的讲师说 ALV 库在 Java 堆栈中不可用,因此如果您想要它提供的功能,例如自动 excel 导出和求和,您必须自己实现它们。

回答by wise

Ask yourself why you'd consider WebDynpro to begin with. Consider writing your own MVC (in ABAP or Java) an save yourself a good deal of headache of learning to paint yourself into an unusable WebDynpro corner.

问问自己为什么要考虑 WebDynpro。考虑编写您自己的 MVC(在 ABAP 或 Java 中),这样您就可以避免学习将自己描绘成一个无法使用的 WebDynpro 角落的头痛。

回答by wise

Like ITS, IAC, DCOM, Business Connector, BSP, PCUI, the WDJ will fade and go away. WDA is here which doesn't need RFC or NWDI. For full blown web application, CRM/R3 Ecommerce application which uses full MVC2 J2EE technology which can also be used for custom application using JCO.

像 ITS、IAC、DCOM、Business Connector、BSP、PCUI 一样,WDJ 会逐渐消失。WDA 在这里不需要 RFC 或 NWDI。对于成熟的 Web 应用程序,CRM/R3 电子商务应用程序使用完整的 MVC2 J2EE 技术,也可用于使用 JCO 的自定义应用程序。

Little correction to my statement about the WDJ. It does take training to learn WDJ so if java shop is using SAP with time/expense for training then WDJ is a good choice. Otherwise you can design full J2EE/MVC2 application using Struts and JCO for Web enabled SAP application. For ABAP shop, I would suggest WDA since learning curve is small, doesn't need NWDI and JCO. So SAP is versitile Application Company with ability to use .Net technology as well.

对我关于 WDJ 的陈述稍作修正。学习 WDJ 确实需要培训,所以如果 Java 商店正在使用 SAP 进行培训,那么 WDJ 是一个不错的选择。否则,您可以使用 Struts 和 JCO 为支持 Web 的 SAP 应用程序设计完整的 J2EE/MVC2 应用程序。对于 ABAP 商店,我建议 WDA,因为学习曲线很小,不需要 NWDI 和 JCO。所以 SAP 是一家多功能的应用公司,也有能力使用 .Net 技术。

回答by WDJ a risk

Maybe we should mention, anything you do with WD Java requires RFC enabled FM.

也许我们应该提一下,您使用 WD Java 执行的任何操作都需要启用 RFC 的 FM。

Whereas with ABAP WD, you can access any FM, tables, ABAP Objects, etc.

而使用 ABAP WD,您可以访问任何 FM、表格、ABAP 对象等。

And there's fight between SAP and Oracle who now owns the java.

现在拥有 Java 的 SAP 和 Oracle 之间也存在争执。