Ask the Expert

Using SOAP over SMTP to simulate RPC, part two

SMTP is a good choice when we intend to develop asynchronous Web services. However, I would like to explore the following possibility:
1)E-mail

    Requires Free Membership to View

Client: Client invokes a Web service, gets a response over SMTP in the form of e-mail. Client replies to that message using a normal e-mail client[say, Outlook Express]. That e-mail message goes to the destination, where it results in invokation of the Web service.
2)Mobile Client: Client invokes a Web service by sending SMS, gets a response over WAP in the form of SMS. Client replies to that message using SMS. That SMS goes to the destination, where it results in invokation of the Web service.

How do I go about it? Are there tools, guidelines, tutorials, code samples, case studies?
Click here to read part one of this answer.

Keep in mind that the human-oriented e-mail interaction doesn't use SOAP. You would need to write traditional e-mail applications (for example, if you were writing the applications in Java, you would use the JavaMail API). The Web service in (a) would use JavaMail to send its e-mail response message. The application in (d) would use JavaMail to retrieve the e-mail message, and then use SOAP to invoke the Web service.

2) What you're describing here is a classic SOAP gateway application, which probably runs as a portlet in the wireless Web portal server. The mobile client communicates with the SOAP gateway application using SMS/WAP. The SOAP gateway application translates the SMS/WAP requests into SOAP requests and translates the SOAP responses into SMS/WAP messages. I'd expect the SOAP gateway to communicate with the Web service using HTTP, but again, it really doesn't matter to the end user. The SOAP processing is completely hidden from the end user.

It's also possible to send SOAP messages directly from the wireless device over WAP, although in this case you wouldn't be using SMS. SMS simply displays the message text on the mobile device screen. Humans really don't want to read a SOAP XML message. They want to read short text messages. You would need to write an application to run on the mobile device (e.g., a Java MIDlet), and this application would use SOAP to invoke Web services over WAP. SOAP implementations for mobile devices include Microsoft .NET Compact Framework, PocketSOAP, and a number of J2ME-based Web service clients (Wingfoot SOAP Client, IONA XMLBus J2ME Client, and the open source kSOAP).

This was first published in July 2003

There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to: