[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
WG: HTTP / EMAIL / FTP / WAP tunneling proposal
Hi,
in the last weeks I heard very often about SOAP. SOAP is the shortcut for
Simple Object Access Protocol. SOAP is making existing application
accessible to a broader range of users. It seems to concern the same
problematic as Marcel described in his Mail.
SOAP adds a set of HTTP headers and a rich XML payload to enable complex
application-to-application communication over Internet. SOAP defines the
mechanism to pass commands and parameters between HTTP clients and servers.
The requests and response ar formatted in XML.
Here some web-resources about SOAP:
http://www.develop.com/soap
http://www.microsoft.com/mind/0100/soap/soap.asp
http://msdn.microsoft.com/xml/general/soapspec-v1.asp?
http://msdn.microsoft.com/xml/general/soap_webserv.asp
My knowledge about SOAP is very small but I think it could be a possible way
to solve the proposal. I also heard about Corba vendors (for example IONA)
which are committed to support SOAP in future versions of their ORBs.
thats it
Peter
> -----Ursprüngliche Nachricht-----
> Von: Max Ruff [SMTP:jmruff at bluewin.ch]
> Gesendet am: Samstag, 11. März 2000 21:33
> An: xmlblaster-devel at server.xmlBlaster.org
> Cc: xmlblaster at server.xmlBlaster.org
> Betreff: HTTP / EMAIL / FTP / WAP tunneling proposal
>
> Proposal for messaging over connectionless protocols.
>
> (email, http(s), ftp, wap etc.)
>
> For messaging in the internet somtimes CORBA may be
> too rigid (firewalls and other reasons).
>
> It should be possible, for example to tunnel firewalls
> with http, send messages with emails or using ftp.
>
> So this proposal specifies a xmlBlaster message format
> to be used with those protocols.
>
> Here is an example, how it could be typed into an email
> body and send to xmlBlaster. I will discuss this with
> xml directly, since DTD (xmlBlaster.dtd) is not expressive enough
> and XML Shemas (xmlBlaster.xsd) are not yet supported.
>
>
> <?xml version="1.0"?>
> <xmlBlaster method="publish" sessionId="12aa3z45X"
> xmlns="http://www.xmlBlaster.org">
>
> <key oid="myMessageId" contentType="text/plain">
> <!-- Some user specified meta information for this content
> which is queryabe with XPATH -->
> </key>
>
> <content link="" xmlns="">
> <!<CDATA[ Hello world ]]>
> </content>
>
> <qos>
> <!-- Some quality of service tags, to control xmlBlaster -->
> <isDurable />
> </qos>
> </xmlBlaster>
>
>
>
> Here a discussion about this approach
>
> 1. The 'xmlBlaster' root element encapsulates the xmlBlaster message.
>
> The attribute 'method' tells xmlBlaster which method to invoke:
> one of the CORBA IDL specified methods like 'publish' 'subscribe' etc.
>
> The attribute 'sessionId' is the identifier of the sender,
> it was retrieved by a login with a password message (see below)
> Another variant could always send the 'loginName' and 'passwd'
> attibutes
> with each message.
>
> The 'xmlns' specifies the xmlBlaster.org namespace as default, so we
> don't need to prefix each tag explicitly.
>
> 2. The 'key' element you know already from the xmlBlaster CORBA
> invocations.
> It may contain some arbitrary user defined meta data about the
> content (not shown here).
>
> Here it specifies the unique message identifier with the 'oid'
> attribute.
>
> The 'contentMime' attribute sets the MIME format of the message
> content.
>
> 3. The 'content' element supplies the message content in the MIME
> format as specified in the attribute 'contentMime' of the key tag.
> Here it is plain text "text/plain", which is protected by a CDATA
> section.
> Not that the token "]]>" in the plain text would make the message
> unparseable.
>
> The xmlns="" attribute resets the namespace to nothing,
> it may be replaced by a message specific namespace if there is one.
>
> The link="" attribute allows to specify a location where the content
> is delivered. For example a binary content could be in the attachment
> of an email. The empty string tells us that the content is directly
> embeded.
>
> Note that for example a 'subscribe' method invocation does not need
> to specifiy the content.
>
> 4. The 'qos' element you know already from the xmlBlaster CORBA
> invocations.
> It allows a fine grained control of the xmlBlaster MOM behaviour.
>
>
> Open questions with this apporach:
>
> a. How can we specifiy to send BLOB (binary data) contents with
> http (how to set the link attribute)?
> Use some sort of multipart request?
>
> b. Is it possible to express this approach exactly with the coming
> XML Schema language?
>
> c. How to do a login?
> What about this approach (only interesting tags shown):
>
> <xmlBlaster method="login" loginName="ben" passwd="sunshine"
> callbackProtocol="EMAIL" callback="ruff at swand.lake.de">
> <qos>
> </qos>
> </xmlBlaster>
>
> This message could respond with the 'sessionId' for a synchronous http
> invocation (allowing to recognize the client again on following
> invocations), but it would not be very smart to use with asynchronous
> emails.
> With emails sending loginName and passwd with each invocation
> may be more convenient.
>
> The 'callback' attribute allows to specify where xmlBlaster shall
> send its asynchronous callback messages (updates).
> It may be an email address, an URL to a HttpServlet, a CORBA IOR
> or whatever protocol xmlBlaster will support in future.
>
> Note that the sender and the callback protocol may be different.
>
>
> Please comment on this, since there are many out there who know
> more about the different technologies.
>
> More informations on RPC and XML you find on our homepage under
> 'Internet Resources'.
>
> If i find time at the end of the week,
> i will implement a little demo with http,
> allowing xmlBlaster messages to be tunneled through firewalls.
>
> I believe SUN's XmlRpcServlet may be a nice foundation to
> implement it very quickly, see
> http://developer.sun.java.com/developer/products/xml/examples/rpc
>
>
> cu,
>
> Marcel
> ruff at swand.lake.de