×
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.
Hello Eftimios,
1) You left out the IBM Integrated Web Services (IWS) tools. This is
included with IBM i at v5r4 or higher (PTFs are required) They have both
client (consume) and server (provide) tools. IMHO, the provide tool is
very good -- but the consume tool is overly complicated to use.
http://www-03.ibm.com/systems/i/software/iws/index.html
2) You also left out PHP which can consume web services with ease. It
can also provide them (but with less ease, IMHO)
3) Regarding HTTPAPI "leaving you stranded".. There's no problem with
using HTTP to consume a web service and using a separate tool (like IWS)
to provide them. Indeed it works out VERY well because IWS's client is
hard to use...
I'm surely not saying that HTTPAPI is perfect. HTTPAPI does not provide
_any_ SOAP tooling. So you have to handle that part yourself (or with a
separate tool like SoapUI or WSDL2RPG). In my opinion, with these tools
it's very easy to consume web services in RPG.
But the fact is... HTTPAPI's job is to handle HTTP communications. If
I were to try to use HTTPAPI on the provider side, I'd end up writing
something that works exactly the same as Apache. And what would be the
advantage in that? Apache is included with the OS, is free, and is much
more mainstream. It seems silly for me to reinvent the wheel.
You seem to just want it because you'd have a consumer/provider that's
branded under the same name as each other.
Consuming and providing web services are two different things, and they
require you to learn two different things. Giving them both the same
name doesn't change that.
4) I'm not sure how CGIDEV2 is related. (I suppose you could use it to
provide web services... but it's not useful for consuming them.)
5) I don't think learning APIs will help you. Really, you don't want to
start in square one and build everything from the ground up. If you're
a do-it-yourselfer, at least use HTTPAPI and Apache to help with the
communications portion of things. If you prefer to get a tool that
handles all of the plumbing for you, try IWS, WebSphere or PHP. Don't
go all the way to the API level until you've gotten really good and
really knowledgeable with web services and have decided that you'd like
to improve upon the other offerings out there by writing your own.
Writing your own from the ground up when you're not familiar with how
web services work -- you're likely to make a lot of mistakes and do a
lot of things wrong... and you'll end up with a ton of work...
eftimios pantzopoulos wrote:
We've encountered a need to consume a web service, and I've been immersing myself in the net trying to work out what the best long term solution is.
I'm aware of 4 ways of approaching this. There may be more and I may have these groupings wrong. Forgive me.
1. Use the WDSC wizard.
I'm aware that the wizard creates the plumbing to connect an RPG program or service program procedure to a web service interface, but I'm always wary of wizards because they're always designed to show how easy a complex task is. They don't necessarily lead to a production and maintenance level degree of sophistication. I would be pleased if someone could re-assure me in this regard. That putting in the time to learn how to do this with WDSCi will result in a production environment solution, and not just a successful demo of how the wizard really works!
2. Buy a third-party interface such as RPG-XML. There are probably others. My employer is loathe to spend money on big ticket items. I'm also intrigued by Aaron Bartell's training course and will probably still buy it even though it's structured around the RPG-XML suite.
3. Use a free interface such as Scott Klement's HTTP API Open Source routines, or CGIDEV2. I've seen lots of references to CGIDEV2 for implementing web services, but have only used it for XML generation.
Scott Klement's open source offering only allows a web service to be consumed I believe.
This would do at a pinch, but I'm worried that putting in the time to use his development tools than leaves me stranded when it comes to providing a web service from our application
4. Spend lots of time learning how to use the iSeries APIs and asking lots of questions in this forum.
Has anyone else gone through this exercise, or has comment on the above?
As an Amazon Associate we earn from qualifying purchases.