<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>wsdl &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://wordpress.com/tag/wsdl/</link>
	<description>Feed of posts on WordPress.com tagged "wsdl"</description>
	<pubDate>Sat, 06 Sep 2008 05:45:14 +0000</pubDate>

	<generator>http://wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Technical Enquiry for UDDI Web Services for BSE/NSE]]></title>
<link>http://armageddonsaviour.wordpress.com/?p=87</link>
<pubDate>Wed, 03 Sep 2008 13:29:21 +0000</pubDate>
<dc:creator>armageddonsaviour</dc:creator>
<guid>http://armageddonsaviour.wordpress.com/?p=87</guid>
<description><![CDATA[How about moving into the future?



IBM UDDI Business Registry was awarded &#8220;Best Mass Market ]]></description>
<content:encoded><![CDATA[<blockquote><p><span style="font-weight:bold;color:#ff0000;">How about moving into the future?</span></p>
<div id="yiv611820434">
<div style="font-family:times new roman,new york,times,serif;font-size:12pt;">
<div>
<span style="font-weight:bold;color:#0000ff;">IBM UDDI Business Registry was awarded "Best Mass Market Web Service" </span> <span style="font-weight:bold;color:#0000ff;">in the 2002 Web Services Journal Readers' Choice Awards.</span><br />
Automate those mechanical things<br />
Machines are there to do these not the humans.</p>
<p><span style="color:#bf00bf;">Where can we find Web Services UDDI entries for BSE/NSE Stock Quotes?</span><br />
Cmon <span style="color:#898a49;">Dont tell me that, technology infrastructure planning policy forming management staff </span> <span style="color:#898a49;">have not yet published these important UDDI entries.</span></p>
<p><span style="color:#007f40;">Every procedure should be standardized</span> <span style="color:#007f40;">Accessible thourgh XML driven message calls.</span> <span style="color:#007f40;">Through cross platform compatible clients with maximum interoperability.</span></p>
<p><span style="color:#bf00bf;">If needed make banks integrate these solutions in their technical way of operations.</span> <span style="color:#bf00bf;">May involve minor Transaction processing system overhaul.</span> <span style="color:#bf00bf;">But the future generation now needs it.</span> <span style="color:#bf00bf;">The time has come.</span></p>
<p><span style="color:#bc6f95;">Java based Application based on web services oriented architecture</span> <span style="color:#bc6f95;">need the above information.</span><br />
<span style="color:#ff7f00;">Cmon we are moving into 21st century</span> <span style="color:#ff7f00;">Such small things BSE/NSE doesnt have still or what?</span></p>
<p><span style="color:#bf5f00;">Or are these excuses?</span> <span style="color:#bf5f00;">Or are these not the prime priorities?</span><br />
<strong><br />
What do you all say?<br />
Is some Solution Architect Listening?</strong><br />
<span style="font-style:italic;font-weight:bold;color:#c080ff;">What are your  opinions and concrete steps of action plans?</span><span style="font-style:italic;"></span><span><span><a rel="nofollow" href="http://in.geocities.com/siddharth_bhatta" target="_blank"><span style="font-size:130%;"><span style="font-weight:bold;font-style:italic;color:#9573f0;"><br />
</span></span></a></span></span></div>
</div>
</div>
</blockquote>
]]></content:encoded>
</item>
<item>
<title><![CDATA[]]></title>
<link>http://librigmbh.wordpress.com/?p=255</link>
<pubDate>Wed, 03 Sep 2008 10:38:53 +0000</pubDate>
<dc:creator>librigmbh</dc:creator>
<guid>http://librigmbh.wordpress.com/?p=255</guid>
<description><![CDATA[ 
Libri-Catalogue Data: content for your web shop


Libri‘s offers its catalogue via web services ]]></description>
<content:encoded><![CDATA[<p><!--[if !mso]&#62; &#60;!  v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} p\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} v\:textbox {display:none;} --> <!--[endif]--></p>
<div class="O"><strong>Libri-Catalogue Data: content for your web shop</strong></p>
<p><strong></strong><!--[if !mso]&#62; &#60;!  v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} p\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} v\:textbox {display:none;} --></p>
<ul>
<li>Libri‘s offers its catalogue via web services in standardised WSDL format</li>
<li>Your customer‘s search will be routed from your online shop to the content hosted by Libri and, the response will be sent via your ONIX- parser</li>
<li>The main advantages of these web services are:
<ul>
<li> Up-to-date information (prices and stock are updated every 60 minutes)</li>
<li>Comprehensive catalogue without major investments in hardware etc.</li>
<li>Major flexibility and minimum costs</li>
<li>The display in your catalogue is arbitrary (xst)</li>
</ul>
</li>
</ul>
<p>&#62;&#62; For more detailed information (technical specs, test data and our hosting agreement) please contact us at: <a href="mailto:edi-vertrieb@libri.de?subject=ONIX-Dokumentation;%20Beschreibung%20Katalog-Daten" target="_parent">mailto:edi-</a><a href="mailto:edi-vertrieb@libri.de?subject=ONIX-Dokumentation;%20Beschreibung%20Katalog-Daten" target="_parent">vertrieb@libri.de</a></div>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Where's that nest of WSDLs?]]></title>
<link>http://ourcraft.wordpress.com/?p=581</link>
<pubDate>Fri, 22 Aug 2008 14:15:29 +0000</pubDate>
<dc:creator>danielmeyer</dc:creator>
<guid>http://ourcraft.wordpress.com/?p=581</guid>
<description><![CDATA[I wanted to access a WSDL or two on a .war project deployed on a local JBoss instance, as a quick te]]></description>
<content:encoded><![CDATA[<p>I wanted to access a WSDL or two on a .war project deployed on a local JBoss instance, as a quick test to see if I had broken the project with a recent change to one of its dependencies.  But I didn't know how to find any of the WSDLs, and looking through the project (as well as the project it is depedent upon) didn't seem to turn up any answers for me.</p>
<p>The URL for the nest-o-WSDLs turns out to be in the form:</p>
<p style="padding-left:30px;"><code>http://localhost:8080/<em>artifactId</em>-<em>version</em>/</code></p>
<p>So for a project whose artifactId is <code>foo-baz-snark</code> and whose version is <code>0.9.6-SNAPSHOT</code>, the URL of the page-o-WSDLs would be:</p>
<p style="padding-left:30px;"><code>http://localhost:8080/foo-baz-snark-0.9.6-SNAPSHOT/</code></p>
<p>I still haven't found where in the project this location is configured... perhaps it's the default location (convention over configuration, you know!)</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[SOAP, web services, WSDL, etc.]]></title>
<link>http://adelg.wordpress.com/?p=22</link>
<pubDate>Wed, 13 Aug 2008 13:31:38 +0000</pubDate>
<dc:creator>adelg</dc:creator>
<guid>http://adelg.wordpress.com/?p=22</guid>
<description><![CDATA[WSDL

service &#8212;-*-&gt; binding [[note: a name and URI is added for each binding]]
binding ]]></description>
<content:encoded><![CDATA[<p>WSDL</p>
<ul>
<li>service ----*-&#62; binding [[note: a name and URI is added for each binding]]</li>
<li>binding ----*-&#62; interface:</li>
<li>interface ----*-&#62; operation:</li>
<li>operation  ----*-&#62; in-params -----&#62; (param name &#38; its type)<br />
----*-&#62; out-params -----&#62;  (param name &#38; its type)</li>
<li>collection of types (e.g. using XSD)</li>
</ul>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Internship Software Development - 5mm - Berlin]]></title>
<link>http://startupjob.wordpress.com/?p=590</link>
<pubDate>Fri, 08 Aug 2008 13:48:39 +0000</pubDate>
<dc:creator>startupjob</dc:creator>
<guid>http://startupjob.wordpress.com/?p=590</guid>
<description><![CDATA[Die 5mm GmbH wurde im Herbst 2006 gegründet und ist seit dem vor allem im Web-Service Geschäft tä]]></description>
<content:encoded><![CDATA[<p>Die 5mm GmbH wurde im Herbst 2006 gegründet und ist seit dem vor allem im Web-Service Geschäft tätig. Aktuell haben wir 5 Vollzeit-Mitarbeiter und arbeiten darüber hinaus mit einen Netzwerk aus freien Mitarbeitern zusammen.</p>
<p>Nach einem Umzug in das Herz Berlins, findet man unsere Büroräume nun in Mitte wieder. Die größeren Räumlichkeiten bieten unserem wachsenden Team genügend Freiraum für Kreativität und für eine angenehme Arbeitsatmosphäre.</p>
<div><!--more--><strong>Willst du in einem der spannendsten Umfelder im Internetbereich arbeiten?    </strong> </p>
<p>Bei 5MM arbeiten heißt sich täglich weiterentwickeln, komplexe und abwechslungsreiche Aufgaben zu lösen und Bereitschaft zur Übernahme von Verantwortung zu zeigen.</p>
<p>Unsere Recruiting-Strategie ist einfach erklärt: Wir suchen smarte Leute, die sich voller Leidenschaft für ihre Ideen und Visionen einsetzen. Bei 5MM arbeiten wir in einem Arbeitsumfeld, das persönliche Weiterentwicklung in jeglicher Hinsicht ermöglicht. Selbstverständlich schätzen wir hierbei Effizienz, Einfachheit und "smart worker".</p>
<p>Flexible Arbeitszeiten, Gratis-Teamfrühstücke, täglich jede Menge frisches Obst, Snacks und Getränke sowie eine persönliche Förderung und Coaching sind bei uns nur die Add-ons.</p>
<p> </p>
<p class="MsoNormal">Als Intern im Bereich Software Development bei 5MM lernst Du Rapidprototyping-Entwicklung hautnah kennen. Je nach Wissensstand übernimmst du eigene Verantwortungsbereiche, genießt viel Spielraum für visionäre und kreative Ideen. Ob autoadaptive Algorithmen, RoR-Frontends oder SOAP-Schnittstellen – du lernst jeden Tag dazu!</p>
<ul type="disc">
<li class="MsoNormal">ab sofort für mindestens 2 Monate</li>
<li>Erfahrungen mit API-Implementierungen</li>
<li>Gute Kenntnisse in: SOAP, WSDL, komplexer Javascrip Programmierung, AJAX</li>
<li>Selbständiges, eigenverantwortliches Arbeiten</li>
<li>Englisch Kenntnisse von Vorteil</li>
<li class="MsoNormal">Vergütung abhängig von der persönlichen Entwicklung</li>
</ul>
<div>Kontakt</div>
<div>
<ul>
<li>jobs@5mm.de</li>
<li><a href="http://www.5mm.de" target="_blank">www.5mm.de</a></li>
</ul>
</div>
</div>
<p><a href="http://www.5mm.de" target="_blank"><img class="alignnone size-medium wp-image-170" src="http://startupjob.wordpress.com/files/2008/07/haus.jpg?w=20" alt="" width="20" height="18" /></a><a href="http://www.aboutus.org/5mm.de" target="_blank"><img class="alignnone size-medium wp-image-165" src="http://startupjob.wordpress.com/files/2008/07/aboutus.jpg?w=15" alt="" width="15" height="18" /></a><a href="http://de.youtube.com/results?search_query=5mm&#38;search_type=&#38;aq=f" target="_blank"><img class="alignnone size-full wp-image-396" src="http://startupjob.wordpress.com/files/2008/08/youtube_logo.jpg" alt="" width="44" height="18" /></a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Tutorial: Flex Builder et un WebService]]></title>
<link>http://codemoiunmouton.wordpress.com/?p=242</link>
<pubDate>Thu, 07 Aug 2008 21:07:55 +0000</pubDate>
<dc:creator>michael chaize</dc:creator>
<guid>http://codemoiunmouton.wordpress.com/?p=242</guid>
<description><![CDATA[
Voici un tutorial vidéo qui présente en dix minutes la fonctionnalité d&#8217;introspection de w]]></description>
<content:encoded><![CDATA[<p style="text-align:center;"><a href="http://www.viddler.com/explore/mchaize/videos/19"><img class="size-medium wp-image-243 alignnone" style="border:0 none;margin:5px;" src="http://codemoiunmouton.wordpress.com/files/2008/08/videoplaywsdl.jpg?w=300" alt="" width="300" height="239" /></a></p>
<p>Voici <a href="http://www.viddler.com/explore/mchaize/videos/19" target="_blank">un tutorial vidéo</a> qui présente en dix minutes la fonctionnalité d'introspection de webservices dans Flex Builder. L'outil génère automatiquement les classes AS3 mappées aux méthodes du WSDL et gère les événements de résultats. POur visualiser correctement une vidéo sur Viddler, cliquez sur MENU, puis Original size, puis Full Screen :</p>
<p style="text-align:center;"><img class="alignnone size-medium wp-image-244" src="http://codemoiunmouton.wordpress.com/files/2008/08/viddlernotice.png?w=294" alt="" width="294" height="50" /></p>
<p style="text-align:left;">Voici l'url du webService que j'utilise dans ce tutorial: <a href="http://www.webservicex.net/stockquote.asmx?WSDL" target="_blank">http://www.webservicex.net/stockquote.asmx?WSDL</a>. Le code source de l'exemple:</p>
<p style="text-align:left;"><!--more--></p>
<p style="text-align:left;">&#60;?xml version="1.0" encoding="utf-8"?&#62;<br />
&#60;mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"&#62;<br />
&#60;mx:Script&#62;<br />
&#60;![CDATA[<br />
import mx.collections.ArrayCollection;<br />
import net.webservicex.StockQuote;<br />
import net.webservicex.GetQuoteResultEvent;</p>
<p>public var myService:StockQuote = new StockQuote;<br />
public var myResult:XML = new XML;</p>
<p>[Bindable]<br />
public var resultStock:ArrayCollection = new ArrayCollection;</p>
<p>private function callService():void{<br />
myService.addgetQuoteEventListener(handleResult);<br />
myService.getQuote(companyCode.text);<br />
cursorManager.setBusyCursor();<br />
}</p>
<p>private function handleResult(event:GetQuoteResultEvent):void{<br />
cursorManager.removeBusyCursor();<br />
myResult = new XML(event.result);<br />
var myLast:String = myResult.Stock.Last;<br />
var mySymbol:String = myResult.Stock.Symbol;<br />
resultStock.addItem({name:mySymbol,last:myLast});<br />
}<br />
]]&#62;<br />
&#60;/mx:Script&#62;<br />
&#60;mx:SeriesInterpolate duration="500" id="drillDown"/&#62;<br />
&#60;mx:Panel x="10" y="10" width="250" height="339" layout="absolute" title="Quote"&#62;<br />
&#60;mx:Label x="10" y="10" text="Symbol :"/&#62;<br />
&#60;mx:TextInput x="73" y="8" width="50" id="companyCode" maxChars="4"/&#62;<br />
&#60;mx:Button x="131" y="8" label="Get Quote" width="89" click="callService()"/&#62;<br />
&#60;mx:ColumnChart showDataTips="true" x="10" y="36" id="columnchart1" width="210" height="253" dataProvider="{resultStock}"&#62;<br />
&#60;mx:horizontalAxis&#62;<br />
&#60;mx:CategoryAxis categoryField="name"/&#62;<br />
&#60;/mx:horizontalAxis&#62;<br />
&#60;mx:series&#62;<br />
&#60;mx:ColumnSeries displayName="Value Stock" yField="last" showDataEffect="{drillDown}"/&#62;<br />
&#60;/mx:series&#62;<br />
&#60;/mx:ColumnChart&#62;<br />
&#60;/mx:Panel&#62;<br />
&#60;/mx:Application&#62;</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[How to Keep Trading 24 Hrs from India like Global Citizens of this World? (BSE/NSE open 24 hrs)?]]></title>
<link>http://armageddonsaviour.wordpress.com/?p=40</link>
<pubDate>Wed, 06 Aug 2008 07:15:55 +0000</pubDate>
<dc:creator>armageddonsaviour</dc:creator>
<guid>http://armageddonsaviour.wordpress.com/?p=40</guid>
<description><![CDATA[Read:
Can we Automate this process?
using Artificial Intelligence?
http://in.answers.yahoo.com/quest]]></description>
<content:encoded><![CDATA[<p>Read:</p>
<p>Can we Automate this process?</p>
<p>using Artificial Intelligence?</p>
<p><a href="http://in.answers.yahoo.com/question/index;_ylt=AnQZ4k3m4ulJspbVKW1TL56RHQx.;_ylv=3?qid=20080204082319AAsf7DF" target="_blank">http://in.answers.yahoo.com/question/index;_ylt=AnQZ4k3m4ulJspbVKW1TL56RHQx.;_ylv=3?qid=20080204082319AAsf7DF</a></p>
<p>And also</p>
<p>How to trade like Global Citizens in this world?</p>
<p>When do middle class Indian citizens as investors go global?</p>
<p>Investments not limited to any country / Nation / Racial</p>
<p>National Geographic boundary? (Market:Indian or Chinese etc ...)</p>
<p>(Direct access to international markets &#38; stock exchanges)</p>
<p>Any solution to this problem for the honest tax paying, law abiding Indian Citizens?</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[World Wide Web Consortium(W3C)]]></title>
<link>http://afruj.wordpress.com/?p=411</link>
<pubDate>Mon, 04 Aug 2008 16:50:36 +0000</pubDate>
<dc:creator>afruj</dc:creator>
<guid>http://afruj.wordpress.com/?p=411</guid>
<description><![CDATA[The World Wide Web Consortium (W3C) is the main international standards organization for the World W]]></description>
<content:encoded><![CDATA[<p>The <strong>World Wide Web Consortium</strong> (<strong>W3C</strong>) is the main <a title="International" href="http://en.wikipedia.org/wiki/International">international</a> <a title="Standards organization" href="http://en.wikipedia.org/wiki/Standards_organization">standards organization</a> for the <a title="World Wide Web" href="http://en.wikipedia.org/wiki/World_Wide_Web">World Wide Web</a> (abbreviated WWW or W3). It is arranged as a <a title="Consortium" href="http://en.wikipedia.org/wiki/Consortium">consortium</a> where member organizations maintain full-time staff for the purpose of working together in the development of standards for the <a title="World Wide Web" href="http://en.wikipedia.org/wiki/World_Wide_Web">W3</a>. As of <a title="February" href="http://en.wikipedia.org/wiki/February">February</a> <a title="2008" href="http://en.wikipedia.org/wiki/2008">2008</a>, the W3C had 434 members.</p>
<p>W3C also engages in education and outreach, develops <a class="mw-redirect" title="Software" href="http://en.wikipedia.org/wiki/Software">software</a> and serves as an open <a title="Forum" href="http://en.wikipedia.org/wiki/Forum">forum</a> for discussion about the Web. It was founded and is headed by <a title="Tim Berners-Lee" href="http://en.wikipedia.org/wiki/Tim_Berners-Lee">Sir Tim Berners-Lee</a>.</p>
<p><strong>History:</strong></p>
<p>The World Wide Web Consortium (W3C) was founded by Tim Berners-Lee after he left the European Organization for Nuclear Research (<a title="CERN" href="http://en.wikipedia.org/wiki/CERN">CERN</a>) in October, 1994. It was founded at the <a title="Massachusetts Institute of Technology" href="http://en.wikipedia.org/wiki/Massachusetts_Institute_of_Technology">Massachusetts Institute of Technology</a> Laboratory for Computer Science (MIT/LCS) with support from the <a class="mw-redirect" title="Defense Advanced Research Projects Agency" href="http://en.wikipedia.org/wiki/Defense_Advanced_Research_Projects_Agency">DARPA</a> -- which had pioneered the <a title="Internet" href="http://en.wikipedia.org/wiki/Internet">Internet</a> -- and the <a title="European Commission" href="http://en.wikipedia.org/wiki/European_Commission">European Commission</a>.</p>
<p>W3C was created to ensure compatibility and agreement among industry members in the adoption of new standards. Prior to its creation, incompatible versions of HTML were offered by different vendors, increasing the potential for inconsistency between web pages. The consortium was created to get all those vendors to agree on a set of core principles and components which would be supported by everyone.</p>
<p>It was originally intended that CERN host the European branch of W3C; however, CERN wished to focus on particle physics, not information technology. In April 1995 the <em><a title="Institut national de recherche en informatique et en automatique" href="http://en.wikipedia.org/wiki/Institut_national_de_recherche_en_informatique_et_en_automatique">Institut national de recherche en informatique et en automatique</a></em> (<a class="mw-redirect" title="INRIA" href="http://en.wikipedia.org/wiki/INRIA">INRIA</a>) became the European host of W3C, with <a title="Keio University" href="http://en.wikipedia.org/wiki/Keio_University">Keio University</a> becoming the Japanese branch in September 1996. Starting in 1997, W3C created regional offices around the world; as of October 2007 it has sixteen World Offices covering <a title="Australia" href="http://en.wikipedia.org/wiki/Australia">Australia</a>, the Benelux countries (<a class="mw-redirect" title="The Netherlands" href="http://en.wikipedia.org/wiki/The_Netherlands">the Netherlands</a>, <a class="mw-redirect" title="Luxemburg" href="http://en.wikipedia.org/wiki/Luxemburg">Luxemburg</a>, and <a title="Belgium" href="http://en.wikipedia.org/wiki/Belgium">Belgium</a>), <a title="China" href="http://en.wikipedia.org/wiki/China">China</a>, <a title="Finland" href="http://en.wikipedia.org/wiki/Finland">Finland</a>, <a title="Germany" href="http://en.wikipedia.org/wiki/Germany">Germany</a> and <a title="Austria" href="http://en.wikipedia.org/wiki/Austria">Austria</a>, <a title="Greece" href="http://en.wikipedia.org/wiki/Greece">Greece</a>, <a title="Hungary" href="http://en.wikipedia.org/wiki/Hungary">Hungary</a>, <a title="India" href="http://en.wikipedia.org/wiki/India">India</a>, <a title="Ireland" href="http://en.wikipedia.org/wiki/Ireland">Ireland</a>, <a title="Israel" href="http://en.wikipedia.org/wiki/Israel">Israel</a>, <a title="Italy" href="http://en.wikipedia.org/wiki/Italy">Italy</a>, <a title="Japan" href="http://en.wikipedia.org/wiki/Japan">Japan</a>, <a title="South Korea" href="http://en.wikipedia.org/wiki/South_Korea">South Korea</a>, <a title="Korea" href="http://en.wikipedia.org/wiki/Korea">Korea</a>, <a title="Morocco" href="http://en.wikipedia.org/wiki/Morocco">Morocco</a>, <a title="South Africa" href="http://en.wikipedia.org/wiki/South_Africa">South Africa</a>, <a title="Spain" href="http://en.wikipedia.org/wiki/Spain">Spain</a>, <a title="Sweden" href="http://en.wikipedia.org/wiki/Sweden">Sweden</a>, and the <a title="United Kingdom" href="http://en.wikipedia.org/wiki/United_Kingdom">United Kingdom</a>.</p>
<p>In January 2003, the European host was transferred from <a class="mw-redirect" title="INRIA" href="http://en.wikipedia.org/wiki/INRIA">INRIA</a> to the <a class="mw-redirect" title="European Research Consortium for Informatics and Mathematics" href="http://en.wikipedia.org/wiki/European_Research_Consortium_for_Informatics_and_Mathematics">European Research Consortium for Informatics and Mathematics</a> (<a title="ERCIM" href="http://en.wikipedia.org/wiki/ERCIM">ERCIM</a>), an organization that represents European national computer science laboratories.</p>
<p>The Consortium is jointly administered by the <a title="MIT Computer Science and Artificial Intelligence Laboratory" href="http://en.wikipedia.org/wiki/MIT_Computer_Science_and_Artificial_Intelligence_Laboratory">MIT Computer Science and Artificial Intelligence Laboratory</a> (CSAIL) in the USA, the <a class="mw-redirect" title="European Research Consortium for Informatics and Mathematics" href="http://en.wikipedia.org/wiki/European_Research_Consortium_for_Informatics_and_Mathematics">European Research Consortium for Informatics and Mathematics</a> (ERCIM) (in <a title="Sophia Antipolis" href="http://en.wikipedia.org/wiki/Sophia_Antipolis">Sophia Antipolis</a>, <a title="France" href="http://en.wikipedia.org/wiki/France">France</a>), and <a title="Keio University" href="http://en.wikipedia.org/wiki/Keio_University">Keio University</a> (in <a title="Japan" href="http://en.wikipedia.org/wiki/Japan">Japan</a>). The W3C also has World Offices in sixteen regions around the world. The W3C Offices work with their regional Web communities to promote W3C technologies in local languages, broaden W3C's geographical base, and encourage international participation in W3C Activities.</p>
<h2><span class="mw-headline">Standards</span></h2>
<p>W3C/<a title="Internet Engineering Task Force" href="http://en.wikipedia.org/wiki/Internet_Engineering_Task_Force">IETF</a> Standards (over <a title="Internet protocol suite" href="http://en.wikipedia.org/wiki/Internet_protocol_suite">Internet protocol suite</a>):</p>
<table border="0">
<tbody>
<tr>
<td>
<ul>
<li><a title="Cascading Style Sheets" href="http://en.wikipedia.org/wiki/Cascading_Style_Sheets">CSS</a></li>
<li><a title="Common Gateway Interface" href="http://en.wikipedia.org/wiki/Common_Gateway_Interface">CGI</a></li>
<li><a title="Document Object Model" href="http://en.wikipedia.org/wiki/Document_Object_Model">DOM</a></li>
<li><a title="GRDDL" href="http://en.wikipedia.org/wiki/GRDDL">GRDDL</a></li>
<li><a title="HTML" href="http://en.wikipedia.org/wiki/HTML">HTML</a></li>
<li><a title="Web Ontology Language" href="http://en.wikipedia.org/wiki/Web_Ontology_Language">OWL</a></li>
<li><a title="Resource Description Framework" href="http://en.wikipedia.org/wiki/Resource_Description_Framework">RDF</a></li>
<li><a title="Scalable Vector Graphics" href="http://en.wikipedia.org/wiki/Scalable_Vector_Graphics">SVG</a></li>
<li><a class="mw-redirect" title="SISR" href="http://en.wikipedia.org/wiki/SISR">SISR</a></li>
</ul>
</td>
<td></td>
<td>
<ul>
<li><a title="SOAP" href="http://en.wikipedia.org/wiki/SOAP">SOAP</a></li>
<li><a title="Synchronized Multimedia Integration Language" href="http://en.wikipedia.org/wiki/Synchronized_Multimedia_Integration_Language">SMIL</a></li>
<li><a class="mw-redirect" title="SRGS" href="http://en.wikipedia.org/wiki/SRGS">SRGS</a></li>
<li><a title="SSML" href="http://en.wikipedia.org/wiki/SSML">SSML</a></li>
<li><a title="VoiceXML" href="http://en.wikipedia.org/wiki/VoiceXML">VoiceXML</a></li>
<li><a title="XHTML+Voice" href="http://en.wikipedia.org/wiki/XHTML%2BVoice">XHTML+Voice</a></li>
<li><a title="Web Services Description Language" href="http://en.wikipedia.org/wiki/Web_Services_Description_Language">WSDL</a></li>
<li><a title="XACML" href="http://en.wikipedia.org/wiki/XACML">XACML</a></li>
<li><a title="XHTML" href="http://en.wikipedia.org/wiki/XHTML">XHTML</a></li>
</ul>
</td>
<td></td>
<td>
<ul>
<li><a title="XML" href="http://en.wikipedia.org/wiki/XML">XML</a></li>
<li><a title="XML Events" href="http://en.wikipedia.org/wiki/XML_Events">XML Events</a></li>
<li><a title="XForms" href="http://en.wikipedia.org/wiki/XForms">XForms</a></li>
<li><a title="XML Information Set" href="http://en.wikipedia.org/wiki/XML_Information_Set">XML Information Set</a></li>
<li><a class="mw-redirect" title="W3C XML Schema" href="http://en.wikipedia.org/wiki/W3C_XML_Schema">XML Schema</a></li>
<li><a title="XPath" href="http://en.wikipedia.org/wiki/XPath">XPath</a></li>
<li><a title="XQuery" href="http://en.wikipedia.org/wiki/XQuery">XQuery</a></li>
<li><a class="mw-redirect" title="XSLT" href="http://en.wikipedia.org/wiki/XSLT">XSLT</a></li>
</ul>
</td>
</tr>
</tbody>
</table>
<p><strong>W3C Sites</strong> is a collection of web sites created by designers that conform with the W3C standards. For more... <a class="external text" title="http://www.w3csites.com/" rel="nofollow" href="http://www.w3csites.com/">W3C Sites</a>.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Disable Soap1.2 generation in ASMX.NET WSDL generator]]></title>
<link>http://enerosweb.wordpress.com/?p=15</link>
<pubDate>Thu, 31 Jul 2008 17:18:26 +0000</pubDate>
<dc:creator>enerosweb</dc:creator>
<guid>http://enerosweb.wordpress.com/?p=15</guid>
<description><![CDATA[Websphere ESB 6.1 does not support Soap 1.2 yet. And the presense of Soap1.2 bindings in .NET auto g]]></description>
<content:encoded><![CDATA[<p>Websphere ESB 6.1 does not support Soap 1.2 yet. And the presense of Soap1.2 bindings in .NET auto generated  WSDL files created lots of  problems with the new WID 6.1.2 release. So there are two options either modify WSDL manualy  when importing to ESB or modify the .NET web service to supress Soap1.2.</p>
<p>To disable Soap1.2 binding generation add in web.config  under <span style="font-size:10pt;color:#1f497d;font-family:&#34;">&#60;system.web&#62;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:10pt;color:#0000ff;font-family:&#34;">    &#60;</span><span style="font-size:10pt;color:#a31515;font-family:&#34;">webServices</span><span style="font-size:10pt;color:#0000ff;font-family:&#34;">&#62;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:10pt;color:#0000ff;font-family:&#34;"><span>      </span>&#60;</span><span style="font-size:10pt;color:#a31515;font-family:&#34;">protocols</span><span style="font-size:10pt;color:#0000ff;font-family:&#34;">&#62;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:10pt;color:#0000ff;font-family:&#34;"><span>        </span>&#60;</span><span style="font-size:10pt;color:#a31515;font-family:&#34;">clear</span><span style="font-size:10pt;color:#0000ff;font-family:&#34;">/&#62;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:10pt;color:#0000ff;font-family:&#34;"><span>        </span>&#60;</span><span style="font-size:10pt;color:#a31515;font-family:&#34;">add</span><span style="font-size:10pt;color:#0000ff;font-family:&#34;"> </span><span style="font-size:10pt;color:#ff0000;font-family:&#34;">name</span><span style="font-size:10pt;color:#0000ff;font-family:&#34;">=</span><span style="font-size:10pt;font-family:&#34;">"<span style="color:#0000ff;">HttpSoap</span>"<span style="color:#0000ff;"> /&#62;</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:10pt;color:#0000ff;font-family:&#34;"><span>        </span>&#60;</span><span style="font-size:10pt;color:#a31515;font-family:&#34;">add</span><span style="font-size:10pt;color:#0000ff;font-family:&#34;"> </span><span style="font-size:10pt;color:#ff0000;font-family:&#34;">name</span><span style="font-size:10pt;color:#0000ff;font-family:&#34;">=</span><span style="font-size:10pt;font-family:&#34;">"<span style="color:#0000ff;">Documentation</span>"<span style="color:#0000ff;">/&#62;</span></span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:10pt;color:#0000ff;font-family:&#34;"><span>      </span>&#60;/</span><span style="font-size:10pt;color:#a31515;font-family:&#34;">protocols</span><span style="font-size:10pt;color:#0000ff;font-family:&#34;">&#62;</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:10pt;color:#0000ff;font-family:&#34;"><span>    </span>&#60;/</span><span style="font-size:10pt;color:#a31515;font-family:&#34;">webServices</span><span style="font-size:10pt;color:#0000ff;font-family:&#34;">&#62;</span></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Blinkin]]></title>
<link>http://gamma2.wordpress.com/?p=74</link>
<pubDate>Tue, 22 Jul 2008 10:42:39 +0000</pubDate>
<dc:creator>Giuseppe</dc:creator>
<guid>http://gamma2.wordpress.com/?p=74</guid>
<description><![CDATA[So, I must do my work (digging code) much more instead of trying to find some mythological API docum]]></description>
<content:encoded><![CDATA[<p>So, I must do my work (digging code) much more instead <a href="http://gamma2.wordpress.com/2008/07/20/lost-and-found/">of trying to find</a> some mythological API documentation.</p>
<p>Apache Axis come to my help, the nice SymbolTable class contains everything I need (or at least I hope so). It is a bit awkward to use without a good documentation but that applies also to the symbol table I written ages ago for a Pascal to JVM compiler.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Lost and found]]></title>
<link>http://gamma2.wordpress.com/?p=70</link>
<pubDate>Sun, 20 Jul 2008 01:23:52 +0000</pubDate>
<dc:creator>Giuseppe</dc:creator>
<guid>http://gamma2.wordpress.com/?p=70</guid>
<description><![CDATA[I am using WSDL4J for my graduation thesis and I had troubles finding type definitions imported by t]]></description>
<content:encoded><![CDATA[<p>I am using <a href="http://sourceforge.net/projects/wsdl4j" target="_blank">WSDL4J</a> for my <span class="artsem">graduation thesis and I had troubles finding type definitions imported by the WSDL being parsed.<br />
</span></p>
<p>After one week of searching, debugging and curses I found it.</p>
<p>It was "very simple":</p>
<pre>Definition.getTypes().getExtensibilityElements().get(0).getImports().values()</pre>
<p>get the first element (a Vector), get the first element of the Vector then</p>
<pre>.getReferencedSchema().getElement()</pre>
<p>How was I so blind?</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Creating a Web Service with Spring-WS]]></title>
<link>http://sacrephill.wordpress.com/?p=52</link>
<pubDate>Wed, 16 Jul 2008 15:04:48 +0000</pubDate>
<dc:creator>Phill</dc:creator>
<guid>http://sacrephill.wordpress.com/?p=52</guid>
<description><![CDATA[Recently, I&#8217;ve had to use Spring-WS to expose a couple of web services. I&#8217;d previously e]]></description>
<content:encoded><![CDATA[<p>Recently, I've had to use <a href="http://static.springframework.org/spring-ws/">Spring-WS</a> to expose a couple of web services. I'd previously exposed web services using <a href="http://cxf.apache.org/">CXF</a> (or XFire as it was then), but that worked a bit differently: you defined the beans you wanted to expose as Web Services, and XFire would generate all the WSDL for you.</p>
<p>I wanted to try out contract-first web service development, hence me using Spring-WS. (There are a <a href="http://static.springframework.org/spring-ws/sites/1.5/reference/html/why-contract-first.html">variety of good reasons</a> to use contract-first development, rather than generating your interface from Java.)</p>
<p>Anyway, to cut a long story short, here are a few brief notes about my experiences, hopefully this will help out anyone else who wants to start developing in Spring-WS :-)</p>
<ul>
<li>Before you even start reading through the Spring-WS documentation, read up about XSD. Seriously, if you don't know XSD, you will need to. Even a basic understanding will help greatly. <a href="http://www.w3.org/TR/xmlschema-0/">This document</a> by the W3C is an excellent place to start.</li>
<li>The <a href="http://static.springframework.org/spring-ws/sites/1.5/reference/html/tutorial.html">Spring-WS Tutorial</a> isn't very helpful, in that it only defines a web service which has a request (i.e., no response is required). If you want the Web Service to have a response, you need to also include a "{Name}Response" type in your XSD. In other words, if their example should be modified to include a response to a HolidayRequest, you should include a HolidayResponse element.</li>
<li>I used <a href="https://jaxb.dev.java.net/">JAXB </a>as an O/X mapper. It has an Ant task which will generate your Java classes from an XSD, which I found very useful. It's also dead easy to use with Spring-WS.</li>
<li>If you're not using Spring MVC, you'll need to set up a MessageDispatcherServlet. I bound mine to the path /services/* - however, there are a couple of 'gotchas' here:</li>
</ul>
<blockquote>
<ol>
<li>You'll probably want to set the <a href="http://static.springframework.org/spring-ws/sites/1.5/reference/html/server.html#server-automatic-wsdl-exposure">transformWsdlLocations</a> parameter to 'true', so you can specify the web service path as a relative URL.</li>
<li>The servlet, being a Spring MVC style servlet, looks for an application context .xml file in /WEB-INF/{servlet-name}-servlet.xml. As far as I know, <em>you must include this</em>. It's not really a problem because it helps separate out concerns (i.e. defining all your Web Service beans in one place) - and also, you can reference all your beans defined elsewhere. However, it's just something to be aware of.</li>
<li>Remember I said I bound my servlet to /services/*? When you define your endpoints, <em>you must include that prefix in the endpoint</em>. So, if the URL to your service is /ContextPath/services/MyService/, your "locationUri" property of the endpoint will be /services/MyService/. <strong>Not</strong> /MyService/. It took me a while to figure that out!</li>
</ol>
</blockquote>
<ul>
<li>Finally, you'll need several beans to define a Web Service. Although you can get this from the Spring-WS documentation, this is a list in the one place:
<ul>
<li>A Wsdl Definition (such as DefaultWsdl11Definition) - which will expose your WSDL.<em></em></li>
<li>An XSD Schema definition (such as SimpleXsdSchema) - if you're automatically generating WSDL from your XSD.</li>
<li>An endpoint mapping (such as PayloadRootQNameEndpointMapping), which will map from the incoming requests onto your endpoints.</li>
<li>Any endpoints you want to have setup, i.e. one per web service you want to expose</li>
<li>If you're using a Marshaller (such as JAXB), you will also need the marshaller / unmarshaller configured, for example Jaxb2Marshaller.</li>
</ul>
</li>
</ul>
<p>*phew* I think that's just about everything.</p>
<p>I realise all that is probably not very clear, it's just a few notes from the little issues I've run into over the past few days trying to get the web service to work. In time I might get around to organising it into a more coherent tutorial :-)</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Web Service dengan Delphi]]></title>
<link>http://delphindo.wordpress.com/?p=101</link>
<pubDate>Tue, 15 Jul 2008 09:58:04 +0000</pubDate>
<dc:creator>zamronypj</dc:creator>
<guid>http://delphindo.wordpress.com/?p=101</guid>
<description><![CDATA[Zamrony P Juhara
(Artikel ini dimuat pertama kali di majalah PC Media edisi 04/2007)
Dukungan Delphi]]></description>
<content:encoded><![CDATA[<p><a href="http://juhara.com">Zamrony P Juhara</a></p>
<p>(Artikel ini dimuat pertama kali di majalah <a href="http://www.pcmedia.co.id">PC Media</a> edisi 04/2007)</p>
<p>Dukungan Delphi pada web service dimulai pada versi 6 dan dilanjutkan terus sampai sekarang. Delphi membungkus implementasi SOAP dengan sangat rapi. Jika anda  menganggap berusaha memahami kode-kode pada SOAP (pada artikel sebelumnya) sebagai suatu mimpi buruk, maka anda masih cukup normal. Saya pribadi pusing melihat isi SOAP message. Untungnya menggunakan Delphi, kita tidak perlu berurusan dengan proses parsing SOAP message. Delphi menghandlenya untuk kita sehingga kita bisa fokus ke bagaimana mewujudkan web service daripada pusing-pusing menerjemahkan SOAP message.<br />
<!--more--></p>
<h2>Membuat Server Web Service.</h2>
<p>Agar mudah dan fokus ke bagaimana membuat server web service menggunakan Delphi, Saya akan membuat web service sederhana untuk mengenkripsi teks dengan algoritma MD5. Saya akan menggunakan unit uMD5.pas ditulis oleh seseorang yang sayang sekali saya lupa namanya. Kodenya saya ambil dari sebuah posting sebuah forum Delphi yang juga saya lupa alamatnya. Kepada authornya, saya pribadi mohon maaf.</p>
<p>Aplikasi web service ini akan menerima request berisi teks yang akan dienkripsi, melakukan enkripsi dan mengembalikan teks hasil enkripsi ke aplikasi klien.</p>
<p>Anda diharapkan telah memiliki pengetahuan paling tidak mengenai web server dan cara kerjanya.</p>
<h3>Membuat SOAP Server Application</h3>
<p>Buka Delphi. Klik File-&#62;New-&#62;Other. Pilih tab WebServices dan pilih SOAP Server Application.</p>
[caption id="attachment_105" align="alignnone" width="300" caption="Gbr 1.1 Dialog aplikasi server SOAP baru."]<a href="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_43bab9d0.png"><img src="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_43bab9d0.png?w=300" alt="Gbr 1.1 Dialog aplikasi server SOAP baru." width="300" height="251" class="size-medium wp-image-105" /></a>[/caption]
<p>Klik OK, selanjutnya akan ditampilkan dialog New SOAP Server Application seperti gambar berikut:<br />
[caption id="attachment_103" align="alignnone" width="300" caption="Gbr 1.2 Dialog untuk memilih tipe web server yang akan dipakai."]<a href="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_mb120345.png"><img src="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_mb120345.png?w=300" alt="Gbr 1.2 Dialog untuk memilih tipe web server yang akan dipakai." width="300" height="255" class="size-medium wp-image-103" /></a>[/caption]</p>
<p>Seperti yang terlihat di atas, ada beberapa pilihan web server yang bisa dipakai.</p>
<ul>
<li>Pilih ISAPI/NSAPI Dyanamic Link Library bila anda menggunakan IIS atau Netscape Web Server.<br />
CGI Stand-alone executable. Pilih opsi ini bila aplikasi anda akan dijalankan sebagai aplikasi CGI (Common Gateway Interface).</li>
<li>Apache 1.x Shared module (DLL). Pilih opsi ini bila anda menggunakan Apache 1.x</li>
<li>Apache 2.x Shared module (DLL). Pilih opsi ini bila anda menggunakan Apache 2.0 ke atas.</li>
<li>Web App Debugger executable. Pilih opsi ini bila ingin menggunakan web server milik Delphi. Untuk development, saya sarankan menggunakan pilihan ini, karena sangat memudahkan pada saat kita melakukan debugging aplikasi. Jika sudah stabil, aplikasi dapat kita ubah menggunakan tipe server lain dengan mudah. Untuk artikel ini saya gunakan pilihan ini dan mengisi  Class Name dengan TMD5Server.</li>
</ul>
<p>Klik OK. Selanjutnya Delphi akan membuat aplikasi dan akan menampilkan dialog konfirmasi apakah kita ingin membuat SOAP Server Interface. Jika anda pilih untuk tidak menciptakan SOAP Server Interface sekarang, anda dapat membuat SOAP Server Interface nanti dengan cara klik File-&#62;New-&#62;Other-&#62;WebServices-&#62; SOAP Server Interface.</p>
<p>Jika anda membuat SOAP Server Interface akan ditampilkan dialog seperti berikut:<br />
[caption id="attachment_104" align="alignnone" width="300" caption="Gbr 1.3 SOAP Server Interface dialog."]<a href="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_4dbf176.png"><img src="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_4dbf176.png?w=300" alt="Gbr 1.3 SOAP Server Interface dialog." width="300" height="144" class="size-medium wp-image-104" /></a>[/caption]</p>
<ul>
<li>Service name adalah nama web service. Namanya harus memenuhi standard penamaan variabel pada Delphi.</li>
<li>Unit identifier adalah nama file unit yang akan dihasilkan.</li>
<li>Generate comments, jika dipilih, menyebabkan Delphi akan menambahkan komentar mengenai interface ke dalam source code interface.</li>
<li>Generate sample methods, jika dipilih, menyebabkan Delphi akan menambahkan contoh bagaimana memanggil metode interface.</li>
<li>Service activation model berisi tipe aktivasi. Per Request, instance implementasi kelas server akan dibuat tiap kali ada request dan akan dibebaskan setelah request selesai ditangani. Global, instance implementasi kelas  hanya ada satu dan akan menghandle semua request.</li>
</ul>
<p>Isikan service name dan unit identifier sebagai MD5Svc dan biarkan lainnya apa adanya. Klik OK. Delphi akan menghasilkan empat unit yakni unit form utama, unit web module, unit bernama MD5SvcImpl.pas dan MD5SvcIntf.pas. Unit MD5SvcImpl.pas berisi implementasi interface yang dideklarasikan di MD5SvcIntf.pas. Berikut ini kode kedua unit tersebut.</p>
<p><strong>MD5SvcImpl.pas</strong></p>
<pre><code><i>{ Invokable implementation File for TMD5Svc
which implements IMD5Svc }

</i><b>unit </b>MD5SvcImpl;

<b>interface

uses </b>InvokeRegistry, Types,
   XSBuiltIns, MD5SvcIntf;

<b>type

  </b><i>{ TMD5Svc }</i>
  TMD5Svc = <b>class</b>(TInvokableClass, IMD5Svc)
  <b>public
  end</b>;

<b>implementation

initialization
  </b><i>{ Invokable classes must be registered }
  </i>InvRegistry.RegisterInvokableClass(TMD5Svc);

<b>end</b>.
</code></pre>
<p><strong>MD5SvcIntf.pas</strong></p>
<pre><code>
<i>{ Invokable interface IMD5Svc }

</i><b>unit </b>MD5SvcIntf;

<b>interface

uses </b>InvokeRegistry, Types, XSBuiltIns;

<b>type

  </b><i>{ Invokable interfaces must
  derive from IInvokable }
  </i>IMD5Svc = <b>interface</b>(IInvokable)
  ['{DD07E88A-A66D-48A6-911F-51D515375506}']

    <i>{ Methods of Invokable interface
    must not use the default }
    { calling convention;
   stdcall is recommended }
  </i><b>end</b>;

<b>implementation

initialization
  </b><i>{ Invokable interfaces must be registered }
  </i>InvRegistry.RegisterInterface(TypeInfo(IMD5Svc));

<b>end</b>.
</code></pre>
<p>Tambahkan metode bernama Encrypt, sehingga deklarasi interface IMD5Svc menjadi seperti berikut:</p>
<pre><code><font color="#808000"><i>{ Invokable interfaces must
  derive from IInvokable }
  </i></font>IMD5Svc = <b>interface</b>(IInvokable)
  [<font color="#0000AA">'{DD07E88A-A66D-48A6-911F-51D515375506}'</font>]
     <b>function </b>Encrypt(<b>const
            </b>atext:<b>string</b>):<b>string</b>;
     <b>stdcall</b>;
    <font color="#808000"><i>{ Methods of Invokable interface
     must not use the default }
    { calling convention;
     stdcall is recommended }
  </i></font><b>end</b>;
</code></pre>
<p>Selanjutnya anda tambahkan juga metode Encrypt ke kelas TMD5Svc dan lengkapi implementasinya sehingga menjadi seperti berikut:</p>
<pre><code><font color="#808000"><i>{ TMD5Svc }
  </i></font>TMD5Svc = <b>class</b>(TInvokableClass, IMD5Svc)
  <b>public
     function </b>Encrypt(<b>const </b>atext:<b>string</b>):<b>string</b>;
<b>stdcall</b>;
  <b>end</b>;
</code></pre>
<p>dan bagian implementasinya menjadi seperti ini:</p>
<pre><code><font color="#000000"><b>uses </b>uMD5;
<font color="#808000"><i>{ TMD5Svc }

</i></font><b>function </b>TMD5Svc.Encrypt(<b>const </b>
atext: <b>string</b>): <b>string</b>;
<b>begin
  </b>result:=MD5(atext);
<b>end</b>;
</code></pre>
<p>Setelah itu simpan proyek dan namakan proyek sebagai  MD5Svc.dpr.</p>
<h3>Menguji Aplikasi Server.</h3>
<p>Ok, kita sudah siap. Jalankan aplikasi seperti biasa. Kemudian jalankan Web App Debugger dari Tools-&#62;Web App Debugger. Pastikan web server aktif dengan mengklik tombol Start. Selanjutnya buka browser dan browsing ke alamat http://localhost:8081/MD5Svc.TMD5Server. MD5Svc adalah nama aplikasi (MD5Svc.dpr) dan TMD5Server adalah nama kelas yang kita isi saat memilih tipe web server. Di browser akan tampil informasi mengenai server MD5Svc.<br />
[caption id="attachment_106" align="alignnone" width="300" caption="Gbr 1.4 Halaman service info."]<a href="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_277af118.png"><img src="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_277af118.png?w=300" alt="Gbr 1.4 Halaman service info." width="300" height="238" class="size-medium wp-image-106" /></a>[/caption]</p>
<p>Untuk mendapatkan dokumen WSDL, klik IMD5Svc [WSDL]. </p>
<p>Ok, aplikasi server sudah siap, mari kita buat aplikasi klien untuk menggunakan server MD5Svc.</p>
<h2>Membuat Aplikasi Klien</h2>
<p>Buat aplikasi baru, drag drop kontrol Edit, Label dan Button. Beri nama edText, edMD5 dan btnEncrypt, susun sehingga menjadi seperti gambar di bawah:</p>
[caption id="attachment_109" align="alignnone" width="300" caption="Gbr 1.5 Desain antar muka aplikasi klien."]<a href="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_m604eabcd.png"><img src="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_m604eabcd.png?w=300" alt="Gbr 1.5 Desain antar muka aplikasi klien." width="300" height="104" class="size-medium wp-image-109" /></a>[/caption]
<p>Selanjutnya kita import dokumen WSDL. Jalankan MD5Svc.exe dan Web App Debugger.  Klik File-&#62;New-&#62;Other-&#62;WebServices-&#62;WSDL Importer (lihat Gbr 1.6).</p>
[caption id="attachment_108" align="alignnone" width="300" caption="Gbr 1.6 Dialog import WSDL"]<a href="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_dec8d47.png"><img src="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_dec8d47.png?w=300" alt="Gbr 1.6 Dialog import WSDL" width="300" height="211" class="size-medium wp-image-108" /></a>[/caption]
<p>Isi lokasi WSDL dengan http://localhost:8081/MD5Svc.TMD5Server/wsdl/IMD5Svc. Klik Next. Jika sukses anda akan mendapatkan dialog seperti di bawah. Klik Finish.</p>
[caption id="attachment_107" align="alignnone" width="300" caption="Gbr 1.7 Import WSDL sukses."]<a href="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_51928889.png"><img src="http://delphindo.wordpress.com/files/2008/07/web-service-dengan-delphi_html_51928889.png?w=300" alt="Gbr 1.7 Import WSDL sukses." width="300" height="211" class="size-medium wp-image-107" /></a>[/caption]
<p>Setelah itu Delphi akan menghasilkan file unit bernama IMD5Svc1.pas. Simpan unit ini misal dengan nama u_wsdl_IMD5Svc.pas. Tambahkan unit  u_wsdl_IMD5Svc.pas ke dalam klausa uses pada form utama. Tambahkan event OnClick pada btnEncrypt dan lengkapi sehingga menjadi sebagai berikut:</p>
<pre><code><font color="#000000">…
<b>implementation

uses </b>u_wsdl_IMD5Svc;

<font color="#008000"><i>{$R *.dfm}

</i></font><b>procedure </b>TfrmMain.btnEncryptClick(Sender:
TObject);
<b>begin
  </b>edMD5.Text:=GetIMD5Svc.Encrypt(edText.Text);
<b>end</b>;

<b>end</b>.;
</code></pre>
<p>Ok jalankan. Pastikan MD5Svc.exe jalan demikian pula server Web App Debugger jalan. Jika sukses, tiap kali anda mengklik tombol Encrypt, isi text akan dikonversi ke MD5. </p>
<h2>Mengkonversi Web Service </h2>
<p>Web service yang sudah kita buat di atas hanya cocok untuk development environment. Untuk dapat digunakan pada production environment kita perlu konversi ke tipe web server lain.</p>
<h3>CGI</h3>
<p>Buat aplikasi SOAP Server Application baru dan pilih type web servernya sebagai CGI stand alone executables. Klik OK, Delphi akan menanyakan apakah anda hendak membuat definisi interface baru, klik No, karena kita tidak akan membuat interface baru. Simpan proyek misal sebagai MD5SvcCGI.dpr.</p>
<p>Dari Project Manager tambahkan file MD5SvcIntf.pas, MD5SvcImpl.pas dan uMD5.pas ke dalam project yang baru. Lakukan kompilasi. Setelah kompilasi selesai kopi file MD5SvcCGI.exe ke direktori script milik web server. Contoh pada server Apache  direktori script defaultnya ada pada direktori cgi-bin dimana Apache diinstall. Milik saya ada di C:\apache\cgi-bin\. Untuk IIS biasanya di direktori Scripts. Pada komputer saya ada di c:\Inetpub\Scripts.</p>
<p>Untuk mengakses halaman Service Info, pastiken web server sudah aktif. Buka web browser dan browse ke http://localhost/cgi-bin/MD5SvcCGI.exe. Anda akan mendapatkan halaman web yang mirip Gbr 1.4 di atas. Dokumen WSDL bisa diakses dari URL http://localhost/cgi-bin/MD5SvcCGI.exe/wsdl/IMD5Svc. </p>
<p>Langkah terakhir adalah memodifikasi aplikasi klien agar menggunakan WSDL server web service yang baru. Buka aplikasi klien MD5Client.dpr, import WSDL dari URL di atas, setelah sukses ubah namanya menjadi IMD5SvcCGI.pas. Pada unit form utama, ubah unit u_wsdl_MD5Svc.pas menjadi IMD5SvcCGI.pas. Lakukan kompilasi dan jalankan. Output aplikasi akan sama seperti versi sebelumnya.</p>
<h3>IIS</h3>
<p>Buat aplikasi SOAP Server Application baru dan pilih type web servernya sebagai ISAP/NSAPI Dynamic Link Library. Klik OK, Delphi akan menanyakan apakah anda hendak membuat definisi interface baru, klik No, karena kita tidak akan membuat interface baru. Simpan proyek misal sebagai MD5SvcIIS.dpr.</p>
<p>Seperti pada CGI, tambahkan unit MD5SvcIntf.pas,  MD5SvcImpl.pas dan uMD5.pas ke project MD5SvcIIS.dpr. Lakukan kompilasi. Kopi MD5SvcIIS.dll ke direktori script IIS, biasanya di direktori c:\Inetpub\Scripts.</p>
<p>Untuk mengakses halaman Service Info, buka web browser dan browse ke http://localhost/Scripts/MD5SvcIIS.dll. Dokumen WSDL bisa diakses dari URL http://localhost/Scripts/MD5SvcIIS.dll/wsdl/IMD5Svc. </p>
<h3>Apache 1.x</h3>
<p>Buat aplikasi SOAP Server Application baru dan pilih type web servernya sebagai Apache 1.x Shared Module. Klik OK, Delphi akan menanyakan apakah anda hendak membuat definisi interface baru, klik No, karena kita tidak akan membuat interface baru. Simpan proyek misal sebagai MD5SvcApache.dpr.</p>
<p>Tambahkan unit MD5SvcIntf.pas,  MD5SvcImpl.pas dan uMD5.pas ke project MD5SvcIIS.dpr. Lakukan kompilasi. Kopi MD5SvcApache.dll ke direktori module Apache, milik saya di c:\apache\modules.</p>
<h3>Apache 2.x</h3>
<p>Apache 2.x caranya hampir sama dengan Apache 1.x, hanya saja anda memilih Apache 2.x Shared module. </p>
<p>Karena pada Apache 2.0.39 terdapat lubang keamanan, maka mulai Apache  2.0.40, tim developer Apache mengubah interfacenya, sehingga Delphi 7 hanya mendukung versi hingga Apache 2.0.39. Agar Delphi 7 mendukung versi 2.0.40 ke atas, anda perlu mengubah isi file HTTPD2.pas. Cari deklarasi konstanta MODULE_MAGIC_NUMBER_MAJOR dan MODULE_MAGIC_NUMBER_MINOR. </p>
<p>Untuk Apache versi 2.0.40 ubah menjadi:</p>
<pre><code><font color="#808000"><i>{ Apache 2.0.40 }
</i></font>MODULE_MAGIC_NUMBER_MAJOR = <font color="#0000AA">20020628</font>;
MODULE_MAGIC_NUMBER_MINOR = <font color="#0000AA">0</font>;
</code></pre>
<p>Untuk Apache versi 2.0.41 sampai 2.0.45 ubah menjadi:</p>
<pre><code><font color="#808000"><i>{ Apache 2.0.41..45 }
</i></font>MODULE_MAGIC_NUMBER_MAJOR = <font color="#0000AA">20020903</font>;
MODULE_MAGIC_NUMBER_MINOR = <font color="#0000AA">0</font>;
</code></pre>
<p>Untuk versi 2.0.46</p>
<pre><code>
 <font color="#808000"><i>{ Apache 2.0.46 }
</i></font>
<font color="#000000">MODULE_MAGIC_NUMBER_MAJOR = <font color="#0000AA">20020903</font>;
MODULE_MAGIC_NUMBER_MINOR = <font color="#0000AA">2</font>;

</code></pre>
<p>Untuk versi 2.0.47 dan 2.0.48</p>
<pre><code><font color="#808000"><i>{ Apache 2.0.47..48 }
</i></font>MODULE_MAGIC_NUMBER_MAJOR = <font color="#0000AA">20020903</font>;
MODULE_MAGIC_NUMBER_MINOR = <font color="#0000AA">4</font>;

</code></pre>
<p>Untuk versi 2.0.49</p>
<pre><code><font color="#808000"><i>{ Apache 2.0.49 }
</i></font>MODULE_MAGIC_NUMBER_MAJOR = <font color="#0000AA">20020903</font>;
MODULE_MAGIC_NUMBER_MINOR = <font color="#0000AA">7</font>;
</code></pre>
<p>Untuk versi 2.0.50</p>
<pre><code><font color="#808000"><i>{ Apache 2.0.50 }
</i></font>MODULE_MAGIC_NUMBER_MAJOR = <font color="#0000AA">20020903</font>;
MODULE_MAGIC_NUMBER_MINOR = <font color="#0000AA">8</font>;

</code></pre>
<p>Untuk versi 2.0.51 sampai 2.0.53</p>
<pre><code><font color="#808000"><i>{ Apache 2.0.51..53 }
</i></font>MODULE_MAGIC_NUMBER_MAJOR = <font color="#0000AA">20020903</font>;
MODULE_MAGIC_NUMBER_MINOR = <font color="#0000AA">9</font>;

</code></pre>
<p>Untuk versi 2.0.54 dan 2.0.55</p>
<pre><code><font color="#808000"><i>{ Apache 2.0.55 }
</i></font>MODULE_MAGIC_NUMBER_MAJOR = <font color="#0000AA">20020903</font>;
MODULE_MAGIC_NUMBER_MINOR = <font color="#0000AA">11</font>;

</code></pre>
<p>Tambahkan baris kode berikut sebelum deklarasi tipe conn_rec.</p>
<pre><code><font color="#000000">ap_conn_keepalive_e = (AP_CONN_UNKNOWN,
                       AP_CONN_CLOSE,
                       AP_CONN_KEEPALIVE);
</code></pre>
<p>Pada deklarasi tipe conn_rec, ubah</p>
<pre><code><font color="#808000"><i>(** Are we still talking? *)
    </i></font>flags: Cardinal;
    <font color="#808000"><i>{ The following are in the flags bitset:
    unsigned aborted:1;

    (** Are we going to keep the connection
alive for another request?
     *  -1 fatal error, 0 undecided, 1 yes   *)
    signed int keepalive:2;

    (** have we done double-reverse
DNS? -1 yes/failure, 0 not yet,
     *  1 yes/success *)
    signed int double_reverse:2;
    }
</i></font></code></pre>
<p>menjadi</p>
<pre><code><font color="#808000"><i>(** Are we still talking? *)
    </i></font>flags1: Cardinal;
    <font color="#808000"><i>{ The following are in the flags bitset:
    unsigned aborted:1; }

    (** Are we going to keep the connection
alive for another request?
     * @see ap_conn_keepalive_e *)
    </i></font>keepalive: ap_conn_keepalive_e;

    flags2: Cardinal;
    <font color="#808000"><i>{ The following are in the flags bitset:
    (** have we done double-reverse
DNS? -1 yes/failure, 0 not yet,
     *  1 yes/success *)
    signed int double_reverse:2;
    }
</i></font></code></pre>
<p>Lakukan Build agar HTTPD2.pas ikut dikompilasi ulang. Langkah ini hanya berlaku bila anda menggunakan Delphi 6 atau 7. Untuk informasi lebih lanjut tentang ini, klik ke URL<br />
<a href="http://www.drbob42.com/delphi7/apache2040.htm">http://www.drbob42.com/delphi7/apache2040.htm</a>.</p>
]]></content:encoded>
</item>

</channel>
</rss>
