Skip to Content
Author's profile photo Former Member

ABAP & Java : Marriage made in heaven !

         h5.        The Problem:         If you are through with Manage the data in different formats!! (Industry Scenario–> Manage the data in different formats! !  Part-1), you must be wondering how we were able to FTP files to our supplier. It sounds pretty simple but when comes to real time industrial scenario it is not, read on to find out what we had to do to implement this simple looking scenario. Our R3 Enterprise (WAS 6.20) was inside the firewall making it difficult to FTP directly and as usual basis didn’t agree to open inbound FTP connection with the suppliers citing security reasons.   Now we were expected to use a DMZ(demilitarized zone) server as the interface between supplier and our Web Application server. While all our solution was on ABAP, when we looked around we figured using Java based solution on DMZ can reduce the cost, effort and time for developing the solution. During the process we learnt how well ABAP and Java work together.        h5.         The Solution:          We looked around for a quick solution, we have a J2EE server (We were using Paramati but you can use anyone like Tomcat or even SAP J2EE) running on DMZ. Our major problem was our lack of java knowledge so we looked around a little bit more and found an open source solution FtpBean (http://www.geocities.com/SiliconValley/Code/9129/javabean/ftpbean/). (Thanks to Sanjeev (http://forums.sdn.sap.com/profile.jspa?userID=32405&start=0) for his valuable guidance and support). Now the problem was simplified to just writing a servlet that can use this to GET and PUT the files to our supplier’s FTP server. So eventually we ended up with following Architecture –           image

Assigned Tags

      5 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Thomas Jung
      Thomas Jung
      The HTTP_POST and HTTP_GET function modules actually use RFC calls to External Kernel Executables (SAPHTTP.EXE on Windows). 

      There is nothing wrong with this, but if you are on 620 and higher you might want to consider using CL_HTTP_CLIENT instead.  This approach uses the ICM and provides better monitoring and tracing capabilities. 

      I have never seen documenation to this effect, but my guess would be that the ICM (given its overall importance) is probably more robust than SAPHTTP.EXE as well. 

      Author's profile photo Former Member
      Former Member
      Blog Post Author
      True !

      However for a low volume application like ours it might not be a much difference.

      Author's profile photo Thomas Jung
      Thomas Jung
      You have to wonder though if at some point SAP won't obsolete older functions like HTTP_POST in favor of the new functionality that is a complete duplicate.  The have already done the same thing with many of the WS_* function modules (like WS_DOWNLOAD).
      Author's profile photo Former Member
      Former Member
      Hi All

      Being a basis consultant who agrees with not opening the ports in the firewall, i'm wondering why SCP.SFTP is not used more.

      There are java, windows commandline and unix commandline implementations that could be used.

      It would be even nicer if it could be implemented by SAP in java/abap of course.

      I would like to hear some views from more people on this.

      Kind regards,
      Alexander Webster

      Author's profile photo jim thomas
      jim thomas

      Hello Ankur,

      Nice posting. I am trying to create a web service in R/3 4.7 was 6.20. I have expose function module as web service. Any tips you can provide. My email jth1015@gmail.com

      Thanks,

      James