× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Rhett Hermer wrote:
Anyone has done SOAP, HTTP/XML on iSeries, eg program calling to a
webservice and processing the result data set in XML?

Where should I start?

With RPG you can do one of the following:

a) Program your own socket server
   (http://www.scottklement.com/rpg/index.html)
b) Download and use the free CGIDEV2 package from IBM
   (http://www-922.ibm.com/en? or
   http://www.easy400.net/cgidev2h/readme.htm)
c) Buy/Try a 3rd party application server
   such as:
      - BCD WebSmart (http://www.bcdsoftware.com)
      - IceBreak (http://www.icebreak.org)
      - ... there are several ...

Personally, I have been working with IceBreak for well over a year now and it is the greatest application server I've seen and tried on the iSeries. First of all it runs programs native which means that it is as fast as a 5250 screen but for web. WebSphere doesn't even come close to it in performance. Secondly you can use your existing business logic in either ILE/RPG, Cobol or C and extend it to the browser using (X)HTML, XML etc. An additional advantage is that you can use WebServices from your 5250 applications(!) - no need for a browser.

IceBreak requires i5/OS V5R1+

If you want to you can try out a very basic example by doing the following:

1) Go to http://www.icebreak.org
2) Click on "Creating programs" in the left hand navigation
3) In the text-area at the bottom of the screen paste the following source (between the -----------'s; Please note that your email might break the D*Name...-line):
-------------------------------------------------------------
<%@ language="RPGLE" %>
<%
D*Name++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++++++Comments++++++++++++
D counter         s             10  0 inz(0)

/free
    SetContentType('text/xml; charset=utf-8');

%><?xml version='1.0' ?>
<numbers>
    <% for counter = 1 to 100; %>
        <number><% = %char(counter)%></number>
    <% endfor; %>
</numbers>
<%
    *inlr = *on;
    return;
%>
-------------------------------------------------------------
4) Click the "Compile and run the sample!!" button
5) Your browser should now open a new window with the content of an XML file created from the above example... dead simple. The <% ... %> encloses the business logic and if you don't want to put the XML or HTML within the business logic it is possible to have it in an external text file that can have sections of source, so you can separate logic and presentation. There are other examples on the "Creating programs" page you might try out.

I know this was a very basic example but it should show you what is possible and if you decide to try it out I can tell you that there are even support within RPG through IceBreak functions for strings and files larger than 32K ;o) This example only generates XML back to the user agent but IceBreak also has support for parsing the content of a POST as text or as XML so you should be able to both consume and compose web services.

Best regards,
JohnF


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.