<?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>web-service &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://wordpress.com/tag/web-service/</link>
	<description>Feed of posts on WordPress.com tagged "web-service"</description>
	<pubDate>Wed, 23 Jul 2008 06:39:19 +0000</pubDate>

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

<item>
<title><![CDATA[Consumo de Web Service Asincronamente]]></title>
<link>http://isaiasmsp.wordpress.com/?p=82</link>
<pubDate>Wed, 23 Jul 2008 03:34:13 +0000</pubDate>
<dc:creator>isaiasmsp</dc:creator>
<guid>http://isaiasmsp.wordpress.com/?p=82</guid>
<description><![CDATA[Creación del Web Service
Primero tenemos que crear un web service para realizar nuestras pruebas. C]]></description>
<content:encoded><![CDATA[<h3><span style="color:#3366ff;">Creación del Web Service</span></h3>
<p>Primero tenemos que crear un web service para realizar nuestras pruebas. Como en la siguiente imagen.</p>
[caption id="attachment_81" align="alignnone" width="300" caption="Creación de WS"]<a href="http://isaiasmsp.wordpress.com/files/2008/07/dibujo.jpg"><img class="size-medium wp-image-81" src="http://isaiasmsp.wordpress.com/files/2008/07/dibujo.jpg?w=300" alt="Creación de WS" width="300" height="201" /></a>[/caption]
<p>Borramos el metodo HelloWorld que contiene por default y creamos uno llamado ArregloCadenas donde simularemos que nuestro metodo realiza un trabajo muy pesado y se tarda algunos segundos en retornarnos el resultado. El metodo quedara de la sig. manera</p>
<p>[<span style="color:#33cccc;">WebMethod</span>]<br />
<span style="color:#3366ff;"> <span style="color:#0000ff;">public string</span></span>[] ArregloCadenas()<br />
{<br />
<span style="color:#0000ff;">string</span>[] cadenas = <span style="color:#0000ff;">new</span> <span style="color:#0000ff;">string</span>[15];</p>
<p><span style="color:#0000ff;"> for</span> (<span style="color:#0000ff;">int </span>i = 0; i &#60; 15; i++)<br />
{<br />
cadenas[i] = "Cadena "+i.ToString();<br />
<span style="color:#33cccc;">Thread</span>.Sleep(500);<span style="color:#339966;">// se hace un sleep para simular que el proceso es pesado</span><br />
}<br />
<span style="color:#0000ff;">return</span> cadenas;<br />
}</p>
<p>Con este Metodo es con el que vamos a crear pruebas, lo probamos con F5 e invocamos para verificar que funcione.</p>
[caption id="attachment_86" align="alignnone" width="300" caption="Probando WS"]<a href="http://isaiasmsp.files.wordpress.com/2008/07/dibujo4.jpg"><img class="size-medium wp-image-86" src="http://isaiasmsp.wordpress.com/files/2008/07/dibujo4.jpg?w=300" alt="Probando WS" width="300" height="184" /></a>[/caption]
[caption id="attachment_87" align="alignnone" width="300" caption="Invocando el WS"]<a href="http://isaiasmsp.wordpress.com/files/2008/07/dibujo5.jpg"><img class="size-medium wp-image-87" src="http://isaiasmsp.wordpress.com/files/2008/07/dibujo5.jpg?w=300" alt="Invocando el WS" width="300" height="184" /></a>[/caption]
<p>Despues de invocar el Web Service el resultado se tardara alrededor de 30 segundos, en retornar el siguiente resultado</p>
[caption id="attachment_88" align="alignnone" width="300" caption="Resultado del WS"]<a href="http://isaiasmsp.files.wordpress.com/2008/07/dibujo6.jpg"><img class="size-medium wp-image-88" src="http://isaiasmsp.wordpress.com/files/2008/07/dibujo6.jpg?w=300" alt="Resultado del WS" width="300" height="216" /></a>[/caption]
<p>Ya terminamos nuestro web service lo que nos queda por hacer es crear nuestros consumidores.</p>
<h3><span style="color:#3366ff;">Creando un  Consumidor Windows Form</span></h3>
<p>Este es el consumidor donde se nota mas el consumo asincrono, ya veremos porque.</p>
<p>Primero creamos una WindowsApplication como lo muestra en la imagen.</p>
<p><span style="color:#ff0000;">Hay que estar seguros de seleccionar el framework 2.0</span> (este ejemplo esta creado en VS2008 pero con el FW 2.0 tambien funciona en VS2005)</p>
[caption id="attachment_95" align="alignnone" width="300" caption="Creación App"]<a href="http://isaiasmsp.files.wordpress.com/2008/07/dibujo12.jpg"><img class="size-medium wp-image-95" src="http://isaiasmsp.wordpress.com/files/2008/07/dibujo12.jpg?w=300" alt="Creación App" width="300" height="201" /></a>[/caption]
<p>Nuestro diseño quedara como el siguiente.</p>
[caption id="attachment_94" align="alignnone" width="291" caption="Diseño"]<a href="http://isaiasmsp.files.wordpress.com/2008/07/dibujo11.jpg"><img class="size-medium wp-image-94" src="http://isaiasmsp.wordpress.com/files/2008/07/dibujo11.jpg?w=291" alt="Diseño" width="291" height="300" /></a>[/caption]
<p>Para poder hacer las llamadasal web service tenemos que agregar una <span style="color:#0000ff;"><a href="http://msdn.microsoft.com/es-es/library/d9w023sx(VS.80).aspx" target="_blank"><span><span style="text-decoration:underline;">Referencia Web</span></span></a></span> a nuestro proyecto.</p>
[caption id="attachment_97" align="alignnone" width="170" caption="Referencia Web"]<a href="http://isaiasmsp.files.wordpress.com/2008/07/dibujo9.jpg"><img class="size-medium wp-image-97" src="http://isaiasmsp.wordpress.com/files/2008/07/dibujo9.jpg?w=170" alt="Referencia Web" width="170" height="300" /></a>[/caption]
<p>y agregamos nuestra referencia web con la dirección donde tenemos publicado nuestro web service</p>
[caption id="attachment_98" align="alignnone" width="300" caption="Referencia"]<a href="http://isaiasmsp.files.wordpress.com/2008/07/dibujo10.jpg"><img class="size-medium wp-image-98" src="http://isaiasmsp.wordpress.com/files/2008/07/dibujo10.jpg?w=300" alt="Referencia" width="300" height="208" /></a>[/caption]
<p>Ahora para hacer una clara comparación de lo que es una llamada normal y otra asincrona usaremos los dos botones.</p>
<h3><span style="color:#3366ff;">Llamada Normal</span></h3>
<p>En el Evento Click de nuestro primer boton colocaremos el siguiente código.</p>
<p><span style="color:#0000ff;">private void</span> button1_Click(<span style="color:#0000ff;">object</span> sender, <span style="color:#33cccc;">EventArgs</span> e)<br />
{<br />
<span style="color:#008000;">//creamos una instancia del Web Service</span><br />
localhost.<span style="color:#33cccc;">Service1</span> ws = <span style="color:#0000ff;">new</span> ConsuAsinc.localhost.<span style="color:#33cccc;">Service1</span>();</p>
<p><span style="color:#008000;"> //hacemos el llamado normal al web service</span><br />
<span style="color:#0000ff;">string</span>[] cad = ws.ArregloCadenas();</p>
<p><span style="color:#008000;">//añadimos renglones al datagrid</span><br />
<span style="color:#0000ff;">for</span> (<span style="color:#0000ff;">int</span> i = 0; i &#60; cad.Length; i++)<br />
{<br />
dataGridView1.Rows.Add(cad[i]);<br />
}<br />
}</p>
<p>Con este código nuestra aplicación se quedara esperando la respuesta y el resultado de la operación del web service. Lo que ocasiona que nuestra aplicación quede pasmada por el tiempo que este tarde, lo cual en algunas ocasiones puede ser bastante.</p>
<h3><span style="color:#3366ff;">Llamada Asincrona</span></h3>
<p>En el Evento Click de nuestro segundo boton colocaremos el siguiente código.</p>
<p><span style="color:#0000ff;">private void</span> button2_Click(<span style="color:#0000ff;">object</span> sender, <span style="color:#33cccc;">EventArgs</span> e)<br />
{<br />
<span style="color:#008000;">//creamos una instancia del Web Service</span><br />
localhost.Service1 ws = <span style="color:#0000ff;">new </span>ConsuAsinc.localhost.Service1();</p>
<p><span style="color:#008000;"> //agregamos un delegado a la instancia del web services</span><br />
ws.ArregloCadenasCompleted += <span style="color:#0000ff;">new</span> ConsuAsinc.localhost.<span style="color:#33cccc;">ArregloCadenasCompletedEventHandler</span>(ws_ArregloCadenasCompleted);</p>
<p><span style="color:#008000;">//hacemos el llamdo asincrono de nuestro web services</span><br />
ws.ArregloCadenasAsync();</p>
<p>}</p>
<p>En este código lo que se esta haciendo es agregarle al nuestro objeto  del web service a su delegado un nuevo manejador, lo cual nos separa la operación, esta se ejecuta en segundo plano como si fuera un hilo. Pero si se fijan nuestros delegados necesitan de una función para delegar el trabajo, tambien creamos nuestra función. y al final realizamos la llamada a nuestro WS asincronamente con <strong><span style="text-decoration:underline;">ws.ArregloCadenasAsync();</span></strong></p>
<p><span style="color:#0000ff;">void </span>ws_ArregloCadenasCompleted(<span style="color:#0000ff;">object</span> sender, ConsuAsinc.localhost.<span style="color:#33cccc;">ArregloCadenasCompletedEventArgs</span> e)<br />
{<br />
<span style="color:#008000;"> //asignamos el resultado al arreglo<br />
// e.Result contiene lo que nuestro metodo nos regresa como resultado </span><br />
<span style="color:#0000ff;">string</span>[] cad = e.Result;</p>
<p><span style="color:#008000;">//añadimos renglones al datagrid</span><br />
<span style="color:#0000ff;">for</span> (<span style="color:#0000ff;">int</span> i = 0; i &#60; cad.Length; i++)<br />
{<br />
dataGridView1.Rows.Add(cad[i]);<br />
}<br />
}</p>
<p>Como los comentarios dicen el parametro <span style="text-decoration:underline;"><span style="color:#0000ff;"><strong>e.Result</strong></span> </span>de esta ultima función contiene lo que nuestro metodo del web service retorna.</p>
<p>Probamos nuestra aplicación y vemos como con la llamada normal se queda esperando respuesta y no responde, pero con la llamada asincrona inmediatamente tenemos el control de nuestra aplicación.</p>
<h3><span style="color:#ff0000;">Nota:</span> Para nuestras aplicaciones web funciona de la misma manera pero hay que poner en true un parametro de nuestra pagina.</h3>
<h3>Donde tenemos:</h3>
<h3><span style="color:#3366ff;"><span style="color:#000000;">&#60;%@ </span><span style="color:#800000;">Page</span><span style="color:#ff0000;"> Language</span><span style="color:#0000ff;">="C#"</span> <span style="color:#ff0000;">AutoEventWireup</span><span style="color:#0000ff;">="true" </span><span style="color:#ff0000;">CodeBehind</span><span style="color:#0000ff;">="Default.aspx.cs"</span> <span style="color:#ff0000;">Inherits</span><span style="color:#0000ff;">="webWSAsinc._Default"</span> </span><span style="color:#000000;">%&#62;</span></h3>
<h3>hay que agregar el atributo <span style="color:#ff0000;">Async</span><span style="color:#0000ff;">="true"</span> y quedaria asi :</h3>
<h3><span style="color:#3366ff;"><span style="color:#000000;">&#60;%@ </span><span style="color:#800000;">Page</span><span style="color:#ff0000;"> Language</span><span style="color:#0000ff;">="C#"</span> <span style="color:#ff0000;">AutoEventWireup</span><span style="color:#0000ff;">="true" </span><span style="color:#ff0000;">CodeBehind</span><span style="color:#0000ff;">="Default.aspx.cs"</span> <span style="color:#ff0000;">Inherits</span><span style="color:#0000ff;">="webWSAsinc._Default"</span> </span><span style="color:#ff0000;">Async</span><span style="color:#3366ff;"><span style="color:#0000ff;">="true"</span> </span><span style="color:#000000;">%&#62;</span></h3>
<p>Esto hace que nuestra página pueda ejecutar procesos asincronamente,</p>
<p>bueno parece no olvido nada , aqui dejo las ligas para que puedan ver los ejemplos.</p>
<p>Recuerden que para que la aplicación de escritorio funcione hay que volver actualizar la direccion del web service segun ustedes lo publiquen.</p>
<p><a href="http://cid-bd9f60c02daa6c7d.skydrive.live.com/self.aspx/Downloads/Web%20Service%20Asincrono.zip" target="_blank">Descargar ejemplos.</a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[ThreadLocal]]></title>
<link>http://takechan.wordpress.com/?p=92</link>
<pubDate>Tue, 22 Jul 2008 02:48:29 +0000</pubDate>
<dc:creator>stakehara</dc:creator>
<guid>http://takechan.wordpress.com/?p=92</guid>
<description><![CDATA[I’m working on a project where I convert a client/server app to the client/server + server-side pr]]></description>
<content:encoded><![CDATA[<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;">I’m working on a project where I convert a client/server app to the client/server + server-side processing. Some of business processing are moving to the servers-side. The issue is database connection object. The existing client/server app keeps the database connection object in a singleton object. To reuse these classes, I need to update the singleton object in class loader into the singleton object in thread because I will use Servlets for server side processing. Think and think. I recalled TheadLocal class. Instead my explanation, please visit </span><a href="http://www.ibm.com/developerworks/java/library/j-threads3.html"><span style="font-size:small;font-family:Times New Roman;">http://www.ibm.com/developerworks/java/library/j-threads3.html</span></a><span style="font-size:small;font-family:Times New Roman;">.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;"><span style="font-family:&#34;">現在、クライアントサーバーアプリの、ビジネス処理のいくつかを、サーバーサイドにうつすプロジェクトに働いている。問題は、データベースのコネクション。現在のシステムは、コネクションオブジェクトをシングルトンのオブジェクトの中で、維持している。これらのクラスの再利用をするために、それから、サーバーサイドは</span><span style="font-family:Times New Roman;">Java</span><span style="font-family:&#34;">の</span><span style="font-family:Times New Roman;">Servlets</span><span style="font-family:&#34;">を使用するために、私は、このシングルトンのクラスローダー単位をスレッド単位に変えなくてはいけない。考えに考えて。</span><span style="font-family:Times New Roman;">ThreadLocal</span><span style="font-family:&#34;">を思い出す。私の説明より、これを見てください。</span></span><a href="http://www.ibm.com/developerworks/java/library/j-threads3.html"><span style="font-size:small;font-family:Times New Roman;">http://www.ibm.com/developerworks/java/library/j-threads3.html</span></a><span style="font-size:small;font-family:Times New Roman;">.</span></p>
<p class="MsoNormal" style="margin:0;"><span style="font-size:small;font-family:Times New Roman;"> </span></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[सीखना धीरज धरना]]></title>
<link>http://petitboulevard.wordpress.com/?p=125</link>
<pubDate>Sun, 20 Jul 2008 22:52:57 +0000</pubDate>
<dc:creator>anileklavya</dc:creator>
<guid>http://petitboulevard.wordpress.com/?p=125</guid>
<description><![CDATA[वर्डप्रेस छवियों को एक &#8216;बादल&#8217; में ]]></description>
<content:encoded><![CDATA[<p>वर्डप्रेस छवियों को एक 'बादल' में जमा करके रखता है, जो कि अमेज़न द्वारा उपलब्ध कराई जाने वाली एक वेब सेवा <a href="http://en.wikipedia.org/wiki/Amazon_Web_Services">एस 3 (सिंपल स्टोरेज सर्विस)</a> है, और क्योंकि <a href="http://en.forums.wordpress.com/topic.php?id=31951">यह सेवा अभी मरम्मत के लिए गई हुई है</a>, तो इस ब्लॉग की छवियाँ कुछ समय के लिए नहीं दिख पाएंगी, जिसका मतलब है कि यह ब्लॉग भी एक तरह से कुछ समय के लिए बंद रहेगा, क्योंकि यह है तो एक 'फोटो ब्लॉग', कम से कम अब तक (मैं एक लंबा वाक्य लिखने की कोशिश कर रहा हूं)।</p>
<p>तो आपको (अगर आप कोई हैं तो) और मुझे धीरज धरना सीखना पड़ेगा। वैसे <a href="http://status.aws.amazon.com/">तब तक</a> अगर आप तस्वीरों को देखना ही चाहें तो <a href="http://www.flickr.com/photos/72079675@N00/">यहाँ</a> देख सकते हैं।</p>
<p>मेरी दूरंदेशी एकदम बेकार तो नहीं गई।</p>
<p>&#160;</p>
<h3 align="center">Learning to be Patient</h3>
<p>Since WordPress stores images on a 'cloud', which is the S3 (Simple Storage Service) <a href="http://en.wikipedia.org/wiki/Amazon_Web_Services">web service provided by Amazon</a> and as the <a href="http://en.forums.wordpress.com/topic.php?id=31951">S3 is down</a> right now, the images on this blog won't be visible for some time, which effectively means that this blog is down for some time too, as it is a 'photo blog', at least till now (I am trying to write a long sentence).</p>
<p>You (if you are there) and me will have to learn to be patient. So, <a href="http://status.aws.amazon.com/">meanwhile</a>, if you still want to see the images, you can see them <a href="http://www.flickr.com/photos/72079675@N00/">here</a>.</p>
<p>My foresightedness hasn't been in vain.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Creating web services with Eclipse and Apache Axis...]]></title>
<link>http://technozilla.wordpress.com/?p=15</link>
<pubDate>Sat, 19 Jul 2008 06:17:32 +0000</pubDate>
<dc:creator>burhancimen</dc:creator>
<guid>http://technozilla.wordpress.com/?p=15</guid>
<description><![CDATA[It&#8217;s been a long time since I wrote something on my blog because recently I started working wi]]></description>
<content:encoded><![CDATA[<p>It's been a long time since I wrote something on my blog because recently I started working with <a href="http://www.aradiom.com">Aradiom</a> as a software developer.</p>
<p>Anyway, I  created a slide show explaining creating web services with Eclipse and Apache Axis which can be downloaded below. I think this could be helpful for web service starters. Meanwhile, creating web services with Eclipse and Jboss is on the way!:D</p>
<p><a href="http://technozilla.files.wordpress.com/2008/07/creatingwebserviceswitheclipseandaxisblog.pdf">Creating Web Services with Eclipse and Apache Axis</a></p>
<p><img style="float:right;cursor:pointer;margin:1px;" src="http://qtl.sf.net/close.png" alt="" /><img style="float:left;margin:1px 2px 0 1px;" src="http://babylon.com/favicon.ico" alt="" /><img style="cursor:pointer;margin:1px 2px;" src="http://qtl.sf.net/copy.png" alt="" /><img style="cursor:pointer;margin:1px 2px;" src="http://qtl.sf.net/say.png" alt="" /><a href="http://search.babylon.com/?babsrc=qtl&#38;q=Aradiom" target="_blank"><img style="border:0 none;" src="http://www.google.com/favicon.ico" alt="" /></a><a href="http://search.yahoo.com/search?p=Aradiom" target="_blank"><img style="border:0 none;" src="http://search.yahoo.com/favicon.ico" alt="" /></a><a href="http://www.flickr.com/search/?q=Aradiom" target="_blank"><img style="border:0 none;" src="http://www.flickr.com/favicon.ico" alt="" /></a><a href="http://www.youtube.com/results?search_query=Aradiom&#38;amp;search=Search" target="_blank"><img style="border:0 none;" src="http://www.youtube.com/favicon.ico" alt="" /></a><a href="http://www.amazon.com/gp/associates/link-types/searchbox.html?tag=qtl0e-20&#38;creative=374001&#38;campaign=211041&#38;adid=0NM007JMM5JYDBDT13Y6&#38;mode=blended&#38;keyword=Aradiom" target="_blank"><img style="border:0 none;" src="http://www.amazon.com/favicon.ico" alt="" /></a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Licht-Setting online planen mit Photo Diagrams]]></title>
<link>http://streetphotos.wordpress.com/?p=761</link>
<pubDate>Thu, 17 Jul 2008 12:27:21 +0000</pubDate>
<dc:creator>Magistus</dc:creator>
<guid>http://streetphotos.wordpress.com/?p=761</guid>
<description><![CDATA[Nikki Fabrizius hat mich auf ein Tool aufmerksam gemacht, welches ich schon lange gesucht, aber nie ]]></description>
<content:encoded><![CDATA[<p><a title="Nikki Fabrizius" href="http://www.nikki-fabrizius.de/" target="_blank">Nikki Fabrizius</a> hat mich auf ein Tool aufmerksam gemacht, welches ich schon lange gesucht, aber nie gefunden habe. Ein Online-Tool, mit dem man Licht- oder Studio-Settings erstellen kann um sie dann als JPEG für die Dokumentation, z.B. in diesem Blog, zu verwenden.</p>
<p>Das ganze funktioniert rein Online, ist sehr einfach und funktioniert ganz toll. Vielleicht fehlt noch das ein oder andere Detail, das kann ja aber noch kommen. Hier beispielsweise ein kleines, einfaches  Low-Key-Set:</p>
<p><a href="http://streetphotos.files.wordpress.com/2008/07/photodiagram.jpg"><img class="alignleft size-medium wp-image-762" src="http://streetphotos.wordpress.com/files/2008/07/photodiagram.jpg?w=299" alt="" width="299" height="300" /></a>Kommt halt schon besser, wie der <a title="Magistus.de" href="http://blog.magistus.de/2008/03/26/technik-low-key-was-ist-das-wie-wird-es-gemacht/" target="_blank">Scan aus meinem Notizbuch</a>, oder? Na ja, dafür hat mein Gekrakel was persönliches :-)</p>
<p>Der Service heißt <a title="Photo Diagrams" href="http://www.professionalsnapshots.com/PhotoDiagram/" target="_blank">Photo Diagrams</a>, ist Beta und wird von <a title="Professional Snapshots" href="http://professionalsnapshots.com/blog/archives/230" target="_blank">Professional Snapshots </a>kostenlos zur Verfügung gestellt. Neben der Online-Variante gibt es auch noch eine Offline-Version.</p>
<p>URL: <a title="Photo Diagrams" href="http://www.professionalsnapshots.com/PhotoDiagram/" target="_blank">http://www.professionalsnapshots.com/PhotoDiagram/</a></p>
<p><a title="Add RSS 2.0 Feed" href="http://blog.magistus.de/feed" target="_blank"><img class="alignnone" src="http://faq.files.wordpress.com/2006/07/add-rss20.png" alt="Add RSS" /></a></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>
<item>
<title><![CDATA[XML-RPC dengan PHP]]></title>
<link>http://amrishodiq.wordpress.com/?p=201</link>
<pubDate>Tue, 15 Jul 2008 01:39:34 +0000</pubDate>
<dc:creator>amrishodiq</dc:creator>
<guid>http://amrishodiq.wordpress.com/?p=201</guid>
<description><![CDATA[Menulis web service dengan PHP dari awal? Nanti dulu deh. Lebih baik coba dulu library yang udah ada]]></description>
<content:encoded><![CDATA[<p>Menulis web service dengan PHP dari awal? Nanti dulu deh. Lebih baik coba dulu <a href="http://scripts.incutio.com/xmlrpc">library yang udah ada</a>.</p>
<p>IXR XML-RPC Library adalah library yang 'tinggal pakai' untuk developer PHP. Mengapa saya pilih IXR? Karena blog kesayangan saya, Wordpress, pakai IXR. Sebenarnya masih ada beberapa pilihan lain, tetapi saya pikir IXR adalah yang paling sederhana. Hanya 1 file, sudah termasuk library untuk client maupun server.</p>
<ol>
<li>Langkah pertama, saya download file <a href="http://scripts.incutio.com/xmlrpc/IXR_Library.inc.php.txt">IXR_Library.inc.php.txt</a>.</li>
<li>Saya hilangkan ekstensi <strong>.txt</strong>, sehingga yang tersisa IXR_Library.inc.php</li>
<li>Saya siapkan database yang diperlukan</li>
<li>Saya tulis script XML-RPC server dengan nama <strong>index.php</strong></li>
<li>Saya tulis script XML-RPC client dengan nama <strong>client.php</strong></li>
<li>Kedua file tersebut saya taruh di direktori CherriServer di dalam <strong>htdocs</strong> apache</li>
<li>Saya test pakai firefox, berhasil!</li>
</ol>
<p>Jika Anda belum nyambung apa yang terjadi, tunggu versi Javanya. Akan saya tunjukkan bahwa aplikasi desktop Java bisa komunikasi dengan server PHP melalui web service XML-RPC</p>
<p><strong>file dump untuk MySQL</strong> (buat dulu database dengan nama cherriserver)</p>
<blockquote><p>-- phpMyAdmin SQL Dump<br />
-- version 2.8.0.3<br />
-- http://www.phpmyadmin.net<br />
--<br />
-- Host: localhost<br />
-- Generation Time: Jul 15, 2008 at 08:35 AM<br />
-- Server version: 5.0.20<br />
-- PHP Version: 5.1.2<br />
--<br />
-- Database: `cherriserver`<br />
--</p>
<p>-- --------------------------------------------------------</p>
<p>--<br />
-- Table structure for table `user`<br />
--</p>
<p>CREATE TABLE `user` (<br />
`userid` int(11) NOT NULL auto_increment,<br />
`email` varchar(30) collate latin1_general_ci NOT NULL,<br />
`realname` varchar(50) collate latin1_general_ci NOT NULL,<br />
PRIMARY KEY  (`userid`)<br />
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=40 ;</p>
<p>--<br />
-- Dumping data for table `user`<br />
--</p>
<p>INSERT INTO `user` VALUES (1, 'amrishodiq@stsn-nci.ac.id', 'Amri Shodiq');<br />
INSERT INTO `user` VALUES (2, 'hainun2000@yahoo.com', 'Nunik Yulianingsih');</p></blockquote>
<p><strong>index.php</strong></p>
<blockquote><p>&#60;?php<br />
include("lib/IXR_library.php");</p>
<p>$con = mysql_connect("localhost", "root", "");<br />
mysql_select_db("cherriserver");</p>
<p>/**<br />
* Fungsi ini digunakan untuk menjawab pertanyaan dari client<br />
* tentang detil user yang baru ditambahkan ke  daftar contact<br />
* cherri client. Parameter berupa nama lengkap user, jika<br />
* ditemukan maka detil akan dikembalikan. Jika tidak ditemukan<br />
* fungsi akan mengembalikan error code 101 yang berarti user<br />
* dengan nama itu tidak ditemukan.<br />
*/<br />
function getUserDetail($args) {<br />
$sql = "SELECT * FROM user WHERE realname='$args'";<br />
$res = mysql_query($sql);<br />
$result = "";<br />
if (mysql_num_rows($res)&#62;0) {<br />
// ditemukan<br />
$row = mysql_fetch_assoc($res);<br />
$result = array(<br />
"userid" =&#62; $row["userid"],<br />
"email" =&#62; $row["email"],<br />
"realname" =&#62; $row["realname"]<br />
);</p>
<p>} else {<br />
// tidak ditemukan<br />
$result = new IXR_Error(101, "User not found");<br />
}</p>
<p>return $result;<br />
}</p>
<p>/**<br />
* Fungsi untuk meregistrasi seorang user dari remote.<br />
* @param String realname<br />
* @param String email (dicek dulu validitas alamat emailnya)<br />
* @return Struct nilai kembalian adalah Struct data lengkap<br />
* user yang diregistrasi. Mengapa data lengkap? Karena, mungkin,<br />
* private key dan public key diberikan oleh server<br />
*/<br />
function register($args) {<br />
global $con;<br />
$sql = "INSERT INTO user (email, realname) " .<br />
"VALUES ('" . $args[0] . "', '" . $args[1] . "')";<br />
//echo "SQL: " . $sql;<br />
$res = mysql_query($sql);<br />
$result = "";<br />
if ($res == true) {<br />
// pendaftaran berhasil</p>
<p>$userid = mysql_insert_id($con);<br />
//echo "User ID: $userid";<br />
$sql = "SELECT * FROM user WHERE userid='$userid'";<br />
$res = mysql_query($sql);<br />
$row = mysql_fetch_assoc($res);<br />
$result = array(<br />
"userid" =&#62; $row["userid"],<br />
"email" =&#62; $row["email"],<br />
"realname" =&#62; $row["realname"]<br />
);<br />
} else {<br />
// INSERT gagal<br />
$result = new IXR_Error(102, "Pendaftaran gagal");<br />
}<br />
return $result;<br />
}</p>
<p>$server = new IXR_Server(array(<br />
"cherri.getUserDetail" =&#62; "getUserDetail",<br />
"cherri.register" =&#62; "register"<br />
));</p>
<p>mysql_close($con);<br />
?&#62;</p></blockquote>
<p><strong>client.php</strong></p>
<blockquote><p>&#60;?php<br />
/*<br />
* Created on 14 Jul 08<br />
*<br />
*/<br />
include("lib/IXR_library.php");<br />
$client = new IXR_Client("http://127.0.0.1:80/CherriServer/index.php");<br />
$client-&#62;debug = true;<br />
$process = $client-&#62;query("cherri.register", "hainun2000@yahoo.com", "Nunik Yulianingsih");</p>
<p>// Run a query for PHP<br />
if (!$process) {<br />
die('Something went wrong - '.$client-&#62;getErrorCode().' : '.$client-&#62;getErrorMessage());<br />
} else {<br />
echo "&#60;pre&#62;Hasil:\n";<br />
print_r($client-&#62;getResponse());<br />
echo "&#60;/pre&#62;";<br />
}</p>
<p>?&#62;</p></blockquote>
]]></content:encoded>
</item>
<item>
<title><![CDATA[XML-RPC]]></title>
<link>http://amrishodiq.wordpress.com/?p=200</link>
<pubDate>Mon, 14 Jul 2008 05:30:54 +0000</pubDate>
<dc:creator>amrishodiq</dc:creator>
<guid>http://amrishodiq.wordpress.com/?p=200</guid>
<description><![CDATA[XML-RPC adalah salah satu teknologi Web Service. Dan, ternyata XML-RPC adalah teknologi web service ]]></description>
<content:encoded><![CDATA[<p>XML-RPC adalah salah satu teknologi Web Service. Dan, ternyata XML-RPC adalah teknologi web service yang (menurut saya) paling sederhana.</p>
<p>Web Service adalah berbagai tools yang memungkinkan pengembangan aplikasi terdistribusi di atas infrastruktur web yang telah ada.</p>
<p>RPC (Remote Procedure Call) sudah lama dikenal. Yang dilakukan oleh teknologi RPC adalah memanggil sebuah prosedur/fungsi pada suatu mesin dari mesin lain. Dengan kata lain, melalui teknologi ini kita bisa memerintahkan sebuah mesin untuk melakukan sesuatu tanpa menyentuhnya.<br />
Apa yang ditawarkan XML-RPC?</p>
<ol>
<li>Implementasi RPC dengan XML sebagai bahasa scripting-nya dan HTTP sebagai transport layer-nya</li>
<li>Memungkinkan komunikasi antara berbagai bahasa pemrograman (PHP, Java, Python, VB, bahkan C) dalam berbagai platform</li>
<li>XML digunakan sebagai bahasa untuk menggambarkan RPC, yang kemudian ditransmisikan antar komputer menggunakan protokol HTTP</li>
<li>Menggabungkan konsep arsitektur RPC dengan teknologi XML dan HTTP, XML-RPC memudahkan komputer-komputer berbagi resource melalui jaringan</li>
<li>Memberikan user akses langsung ke informasi yang ingin mereka proses</li>
</ol>
<p><strong>RPC</strong><br />
RPC memungkinkan pengembang software mendefinisikan interface yang dapat dipanggil melalui jaringan.<br />
Secara umum, kita memanggil sebuah fungsi dengan cara:</p>
<blockquote><p>data = getData(objectID)</p></blockquote>
<p>Begitu juga dengan RPC.</p>
<p><strong>XML dan HTTP</strong><br />
XML memungkinkan pesan yang dapat diinterpretasikan oleh komputer, bukan hanya presentasi untuk pembaca.</p>
<p><strong>XML-RPC</strong><br />
Dengan XML-RPC dan web service, web menjadi kumpulan hubungan-hubungan prosedural di mana komputer-komputer bertukar informasi dengan arah yang terikat jelas.<br />
Kehebatan XML-RPC adalah:</p>
<ol>
<li>Bila Anda ingin mengintegrasikan berbagai jenis perangkat komputer, tetapi tidak ingin mempertukarkan data dengan struktur yang kompleks secara langsung, maka XML-RPC adalah cara yang mudah dan cepat</li>
<li>Programmer dapat membuat open programming interface</li>
<li>XML-RPC membuat hidup developer lebih mudah</li>
</ol>
]]></content:encoded>
</item>
<item>
<title><![CDATA[e Commerce &amp; Business Website Design]]></title>
<link>http://webdesigninghosting.wordpress.com/?p=49</link>
<pubDate>Fri, 04 Jul 2008 13:12:38 +0000</pubDate>
<dc:creator>webdesigninghosting</dc:creator>
<guid>http://webdesigninghosting.wordpress.com/?p=49</guid>
<description><![CDATA[A business site has various features for attracting the viewer such as attractive font color as well]]></description>
<content:encoded><![CDATA[<p class="MsoNormal" style="text-align:justify;">A business site has various features for attracting the viewer such as attractive font color as well as font shape, attractive image who represent your business and its service. If you are searching a company who’s that can be solve this type problem by effective manner than your search is finished here. Hans is the name of popular name of <a title="website designing in india" href="http://www.hansindia.com/">e commerce and business website design</a> as per our customer requirements with affordable prize. First we will send you a layout and if our customer approved it than our experts provide well and satisfactory <a title="website designing in india" href="http://www.hansindia.com/">e commerce and business website design services</a>.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Enterprise Integration: Don't Look Down !]]></title>
<link>http://thestewscope.wordpress.com/2008/07/04/enterprise-integration-dont-look-down/</link>
<pubDate>Fri, 04 Jul 2008 08:54:17 +0000</pubDate>
<dc:creator>Stew Welbourne</dc:creator>
<guid>http://thestewscope.wordpress.com/2008/07/04/enterprise-integration-dont-look-down/</guid>
<description><![CDATA[Can SOA truly be successful if service consumers have to be technology consumers? The service layer ]]></description>
<content:encoded><![CDATA[<p><img style="float:left;margin:5px;" src="http://thestewscope.files.wordpress.com/2008/07/tightrope3.jpg" alt="" width="270" height="289" />Can SOA truly be successful if service consumers have to be technology consumers? The service layer is supposed to insulate us from the technical complexities and dependencies of the enabling technology, but I see more and more the technology being the centre of attention.</p>
<p>The promise of Web Serivces whilst standardising on the logical notion of integration,  has embroiled us in a complexity relating not to the 'act' of exchanging documents, but instead relating to the diversity within the Enterprise, the various technologies and tools used across a widely disparate ecosystem, and debating the finer details of which interpretations of which standards we want to use.</p>
<p>More significantly the large deployed base of messaging software, and the service endpoints exposed to MQ or JMS endpoints are left out of the handle-cranking associated with the synchronous style of endpoint. As such - a SOA layering 'consistency' across such a diverse ecosystem is a myth in my experience. We're still struggling to find the SOA 'blue-touch-paper' despite all of the top-down justification and policy.</p>
<p>I believe that until we push the technology further down towards the network such that it becomes irrelevant to the service consumer, and raise the service interaction higher up in terms of decoupling the 'interaction' from the 'technology' we are going to struggle to not only justify the benefit of service orientation, but more significantly we'll continue to struggle to justify the inevitable rework and technical implications of that service orientation in mandating conformance to brittle and transient technical standards.</p>
<p>I'm going to explore an approach to doing this - by encapsulating middleware facilities as RESTian resources, and then looking at the bindings between WSDL generated stubs and these infrastructure resources...effectively removing technologies (apart from the obvious RESTian implications) from the invocation of a web-service. Various header indicators can flex QoS expectations in the service invocation (i.e. synch or asynch, timeouts, exception sinks etc) but that has no relationship to any given protocol or infrastructure type. Furthermore, the existence of such a set of 'resource primitives' would enable direct interaction where WSDL-based integration does not yet exist...where I resolve, send, receive and validate though direct interaction with RESTian services from any style of client-side application.</p>
<p>This is motivated purely by the belief that, much like the chap in the picture, our focus is on the endpoint and not what lies beneath...</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Web Promotion]]></title>
<link>http://webdesigninghosting.wordpress.com/?p=48</link>
<pubDate>Mon, 30 Jun 2008 10:55:52 +0000</pubDate>
<dc:creator>webdesigninghosting</dc:creator>
<guid>http://webdesigninghosting.wordpress.com/?p=48</guid>
<description><![CDATA[Website promotion is very important issue for your business and your business growth. If you are goi]]></description>
<content:encoded><![CDATA[<p class="MsoNormal" style="text-align:justify;"><a title="website promotion" href="http://www.hansindia.com/">Website promotion</a> is very important issue for your business and your business growth. If you are going to select a web promotion and Search Engine Optimization Company than must check the market status of this company. Hans is the name of top most web promotion and <a title="seo service producer company" href="http://www.hansindia.com/seo/">SEO Service Provider Company</a>. Our SEO staff is well experience and well educated which is provide best and fast Search engine Optimization service with in reasonable prize. In our <a title="web promotion service" href="http://www.hansindia.com/seo/">web promotion service</a> we include various specific tasks such as analysis your market, analysis traffic search most searchable keywords which is suit your business and your website. Updating content as per website requirements and follows various strategy for link building such as blog submission, articles submission, directory submission.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Website Design]]></title>
<link>http://webdesigninghosting.wordpress.com/?p=47</link>
<pubDate>Sun, 29 Jun 2008 09:40:14 +0000</pubDate>
<dc:creator>webdesigninghosting</dc:creator>
<guid>http://webdesigninghosting.wordpress.com/?p=47</guid>
<description><![CDATA[Hans is the name of popular and best as well as attractive website designing company which is provid]]></description>
<content:encoded><![CDATA[<p class="MsoNormal">Hans is the name of popular and best as well as attractive <a title="website designing" href="http://www.hansindia.com/">website designing company</a><span> </span>which is provide innovative ideas and well strategy which is require your business. Hans is an educational website design company.<span> </span>As a <a title="web design" href="http://www.hansindia.com/">website design</a> specialist company we are regular providing various website designing tips. If you are inexperienced and beginner and you want to learn website designing you can learn website design as learning our <a title="web design update" href="http://www.hansindia.com/web-designing-update/">web design update</a> section.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[DeviantArt]]></title>
<link>http://orundellico.wordpress.com/?p=13</link>
<pubDate>Thu, 26 Jun 2008 19:29:38 +0000</pubDate>
<dc:creator>orundellico</dc:creator>
<guid>http://orundellico.wordpress.com/?p=13</guid>
<description><![CDATA[Web service para un mundo visual

little) black cat, una fotografía tratada con Fireworks y GIMP, y]]></description>
<content:encoded><![CDATA[<p style="text-align:right;"><strong>Web service para un mundo visual</strong></p>
<p style="text-align:left;">
<p>little) black cat, una fotografía tratada con Fireworks y GIMP, y una de las primeras que subí a DeviantArt, un web service al que me afilié y sobre el cual solo puedo decir ¿por que no lo hice antes?<br />
Ahí encontraras todo lo relacionado con el mundo visual: fanart, wallpapers, skins (o themes) para software, arte, diseño, conceptos visuales, fotografías... las posibilidades son enormes.<br />
Ideal para dar a conocer tu trabajo, o para buscar buen material.<br />
Se hecha de menos los feeds, pero por lo que aparece en los f.a.q se está trabajando en ello.<br />
Existe una versión gratuita, que de por si es buena, y una pagada, que consta de más capacidad de almacenamiento para tu trabajo, entre otros.<br />
Puedes, además de subir tu material, incluir un preview, una reseña, los usuarios pueden comentar los “deviations” como le llaman en el sitio al material subido, puedes agregar deviations a tu lista de favoritos, bloquear usuarios molestos, etc.<br />
Y sobre el material a subir se aceptan muchos tipos de archivos, desde llanas imágenes hasta ficheros PDF o archivos comprimidos, en los cuales puedes incluir previews, licencias y otros (muy útil y usual en esta comunidad).</p>
<p>Una de las grandes cualidades de este sitio es la gran variedad de temáticas disponibles para asignar a tu material, cuya presentación es muy fácil de manejar, y no ahoga al usuario en un mar de temáticas interminables.<br />
Otro plus es la integración con las licencias Creative Commos, para que puedas licenciar tu trabajo en el acto.</p>
<p>Altamente recomendado para quienes comiencen a experimentar con el mundo visual, tanto como para aquellos profesionales que quieren captar mayor atención y dar a conocer sus trabajos.</p>
<p>Enlace: http://www.deviantart.com/</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Tutorial Notes on Web Service and SOAP]]></title>
<link>http://soap102.wordpress.com/?p=3</link>
<pubDate>Wed, 25 Jun 2008 21:56:32 +0000</pubDate>
<dc:creator>101</dc:creator>
<guid>http://soap102.wordpress.com/?p=3</guid>
<description><![CDATA[Tutorial Notes on Web Service and SOAP
This free book is an excellent tutorial book for beginners. I]]></description>
<content:encoded><![CDATA[<h1>Tutorial Notes on Web Service and SOAP</h1>
<p class="pageDescription">This free book is an excellent tutorial book for beginners. It is a collection of notes and sample codes written by the author while he was learning PHP himself. Topics include ActivePerl, Axis, Binding, Data Model, Encoding, HTTP, Java, Message, Message Exchange Patterns, NuSOAP, online, PEAR, PHP, Properties, RPC, SOA, SOAP 1.2, SOAP Extension, SOAP::Lite, UDDI, Web Method, Web service, WSDL</p>
<p><p class="pageTitle">Table of Contents</p>
<blockquote class="bookToc">
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/About-Web-Servics-SOAP-Tutorials.html">About This Book</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/Web-Servics-SOAP-Terminology.html">Web Services and SOAP Terminology</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/Introduction-to-Web-Services.html">Introduction to Web Service</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/What-Is-Web-Service.html">What Is a Web Service?</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/Web-Service-Related-Technologies.html">Web Service Related Technologies</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/Introduction-to-SOAP.html">Introduction to SOAP (Simple Object Access Protocol)</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/What-Is-SOAP.html">What Is SOAP?</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Communication-Example.html">SOAP Communication Example</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Message-Structure.html">SOAP Message Structure</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Generic-Message-Structure.html">SOAP Generic Message Structure</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Fault-Message-Structure.html">SOAP Fault Message Structure</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Message-Transmission-and-Processing.html">SOAP Message Transmission and Processing</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Protocol-Binding.html">SOAP Protocol Binding</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Distributed-Processing-Model.html">SOAP Distributed Processing Model</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Features-and-Modules.html">SOAP Features and Modules</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Data-Model.html">SOAP Data Model</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Encoding.html">SOAP Encoding</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Encoding-What-Is-It.html">What Is SOAP Encoding?</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Encoding-Multiple-Circular-References.html">Multiple References and Circular References</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Encoding-Node-Types.html">Node Types - simple, struct, array</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Encoding-Attributes-Namespace.html">SOAP Encoding Attributes and Namespace</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Encoding-Used-in-SOAP-Messages.html">Using SOAP Encoding in SOAP Messages</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/SOAP-RPC-Presentation.html">SOAP RPC Presentation</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-RPC-Presentation-What-Is-It.html">What is SOAP RPC Presentation?</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-RPC-Presentation-Web-Methods.html">Using Web Methods to Invoke RPC</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-RPC-Presentation-SOAP-Messages.html">Using SOAP Messages to Invoke RPC</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-RPC-Presentation-Response-Messages.html">RPC Response Messages</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Properties-Model.html">SOAP Properties Model</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/MEP-SOAP-Message-Exchange-Patterns.html">SOAP Message Exchange Patterns</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/MEP-What-Are-Message-Exchange-Patterns.html">What Are SOAP Message Exchange Patterns?</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/MEP-Request-Response-Pattern.html">Request-Response Message Exchange Pattern</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/MEP-Response-Pattern.html">Response Message Exchange Pattern</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/MEP-Web-Method-Feature.html">Web Method Feature</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/MEP-SOAP-Action-Feature.html">SOAP Action Feature</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/SOAP-HTTP-Binding.html">SOAP HTTP Binding</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Perl-Implementations.html">SOAP Perl Implementations</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Perl-Implementation-SOAP-Lite.html">SOAP Perl Implementation - SOAP::Lite</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Perl-SOAP-Lite-on-Windows.html">SOAP::Lite for Perl on Windows</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Perl-ActivePerl-Installation.html">Installing ActivePerl v5.8.7 on Windows</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Perl-SOAP-Lite-0-55.html">SOAP::Lite 0.55 in ActivePerl 5.8.7</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/SOAP-PHP-Implementations.html">SOAP PHP Implementations</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-PHP-Implementations-PEAR-Package-NuSOAP.html">SOAP PHP Implementations: PEAR::Package::SOAP and NuSOAP</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-PHP-Zend-Engine.html">PHP 5.0.4 by The PHP Group</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-PHP-Library-Installation.html">Installing SOAP Library on Windows</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Java-Implementations.html">SOAP Java Implementations</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Java-Implementations-Axis-Apache.html">SOAP Java Implementations: Axis and Apache WebService</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Java-Axis-Installation-Requirements.html">Axis Installation Requirements on Windows</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Java-Axis-Installation.html">Installing Axis 1.2.1 on Windows</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/SOAP-Java-JAF-Installation.html">Installing JAF 1.0.2</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/PHP-SOAP-Extension-Client-Programs.html">PHP SOAP Extension Client Programs</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/PHP-SOAP-Extension-What-Is-It.html">What Is PHP SOAP Extension?</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/PHP-SOAP-Client-Example-GetTemp.html">GetTemp.php - First Example with SOAP</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/PHP-SOAP-Client-Function-List.html">PHP SOAP Extension Functions for Client Programs</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/PHP-SOAP-Client-Example-GetTempDump.html">GetTempDump.php - Dumping Debugging Information</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/PHP-SOAP-What-Is-WSDL.html">Whis Is WSDL (Web Services Definition Language)?</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/PHP-SOAP-Client-Example-GetTempNonWsdl.html">Using SOAP Extension in non-WDSL Mode</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/PHP-SOAP-Extension-Server-Programs.html">PHP SOAP Extension Server Programs</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/PHP-SOAP-Server-Function-List.html">PHP SOAP Extension Functions for Server Programs</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/PHP-SOAP-Server-Example-HelloServer.html">HelloServer.php - First SOAP Server Application</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/PHP-SOAP-Server-Example-HelloServer12.html">HelloServer12.php - SOAP 1.2 Server Application</a></p>
<p class="chapterToc"><a href="http://www.herongyang.com/Web-Services/PHP-SOAP-Server-WSDL-Example-HelloServerWsdl.html">HelloServerWsdl.php - SOAP 1.2 Server Application in WSDL Mode</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/References.html">References</a></p>
<p class="bookToc"><a href="http://www.herongyang.com/Web-Services/pdf.html">PDF Printing Version</a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Web Design]]></title>
<link>http://webdesigninghosting.wordpress.com/?p=44</link>
<pubDate>Tue, 24 Jun 2008 12:40:01 +0000</pubDate>
<dc:creator>webdesigninghosting</dc:creator>
<guid>http://webdesigninghosting.wordpress.com/?p=44</guid>
<description><![CDATA[Do you want a professional website for your business who represent your business on web with attract]]></description>
<content:encoded><![CDATA[<p class="MsoNormal">Do you want a professional website for your business who represent your business on web with attractive and well design as well as affordable charges than Hans is perfect choice to you we are offering all <a title="web design" href="http://www.hansindia.com/">web solution</a> service as per your requirement. We are follows various <a title="web design" href="http://www.hansindia.com/">web design</a> policy who make your site attractive as well as search engine friendly. Actually a site viewer want a cool attraction in your website and a specific and clear message, our <a title="web designer" href="http://www.hansindia.com/">website designer</a> experts follows this concept and develop a perfect design for your website which message is clear as per your business requirement.</p>
<p class="MsoNormal">
<p class="MsoNormal">
]]></content:encoded>
</item>
<item>
<title><![CDATA[Java Test Client for Web Service]]></title>
<link>http://prowess.wordpress.com/?p=25</link>
<pubDate>Fri, 20 Jun 2008 20:38:19 +0000</pubDate>
<dc:creator>Manoj</dc:creator>
<guid>http://prowess.wordpress.com/?p=25</guid>
<description><![CDATA[Here is the working and tested Java client program to invoke a Web Service (RPC style), which requir]]></description>
<content:encoded><![CDATA[<p>Here is the working and tested Java client program to invoke a Web Service (RPC style), which requires a User Authentication.</p>
<p>You should update the build.properties and WebserviceClient.properties as per your environment and Service name. Also, to compile and run successfully, one needs to update the part of code with Actual object and method names.</p>
<p>You need to have ANT and Weblogic in your classpath, as I am using weblogic 'clientgen' tag for generating the webservice client jar.</p>
<p>Also you need 'webserviceclient.jar' along with your webservice client jar to run the test client.</p>
<p>## Save the below contents in separate files as named. and Follow the below steps to build and run the Web Service test client:</p>
<p><strong><span style="color:#993300;">#build.xml</span></strong></p>
<p>&#60;!-- to generate the client for Webservice --&#62;<br />
&#60;project name="buildWebservice" default="generate-client"&#62;<br />
 &#60;property file="build.properties"/&#62;<br />
 &#60;target name="generate-client"&#62;    <br />
  &#60;clientgen wsdl="${wsdlLocation}/TestService.WSDL"               <br />
   packageName="com.ws.client"               <br />
   clientJar="${clientLib}/TestService_client.jar"/&#62;  <br />
 &#60;/target&#62;<br />
&#60;/project&#62;</p>
<p><strong><span style="color:#993300;">#build.properties</span></strong></p>
<p>clientLib=C:/TestServiceClient/lib<br />
clientJarFile=TestService_client.jar<br />
wsdlLocation=C:/TestServiceClient/xsd</p>
<p><strong><span style="color:#993300;"># Java Program: </span><span style="color:#000000;">WebServiceClient.java</span></strong></p>
<p>package com.wstest;</p>
<p>import java.io.IOException;<br />
import java.io.FileNotFoundException;<br />
import java.rmi.RemoteException;<br />
import java.util.Properties;<br />
import java.io.FileInputStream;</p>
<p>import javax.xml.rpc.ServiceException;<br />
/**<br />
 * This is a working test client to connect to Web Service and execute the<br />
 * service APIs.<br />
 *<br />
 *<br />
 * @author Manoj Kumar<br />
 * Copyright (c)  All Rights Reserved.<br />
 */</p>
<p>public class WebServiceClient {<br />
 //TODO: plugin the actual PortType object here and uncomment the code<br />
 //private static &#60;XXXXX&#62;PortType port = null;</p>
<p> private static Properties applProperties = null;</p>
<p> private static String wsdl = null;<br />
 private static String user = null;<br />
 private static String pwd  = null;<br />
 private static String wsdlURL = null;</p>
<p> public WebServiceClient(){</p>
<p>  if (applProperties == null) {<br />
   System.out.println("Could not read the value or properties file not found");<br />
   System.exit(0);<br />
  }</p>
<p>  wsdl = applProperties.getProperty("wsdlURL");<br />
  user = applProperties.getProperty("uesrID");<br />
  pwd  = applProperties.getProperty("password");<br />
  wsdlURL = "<a href="http://">http://"+user+":"+pwd+"@"+wsdl</a>;</p>
<p> }</p>
<p> /**<br />
  * Initialization code to load properties file.<br />
  */<br />
 static {<br />
  try {<br />
   applProperties = new Properties();<br />
   applProperties.load(new FileInputStream("WebserviceClient.properties"));<br />
   System.out.println("Properties file has been loaded");<br />
  } catch (FileNotFoundException e) {<br />
   applProperties = null;<br />
   System.out.println("Could not load properties file. Reason: "<br />
     + e.getMessage());<br />
   System.out.println("Check if properties file is under current directory!");<br />
   System.exit(0);<br />
  } catch (IOException e) {<br />
   applProperties = null;<br />
   System.out.println("Could not load properties file. Reason: "<br />
     + e.getMessage());<br />
   System.exit(0);<br />
  }<br />
 }</p>
<p> public static void main(String args[]) {<br />
  try {<br />
   WebServiceClient wsClient = new WebServiceClient();</p>
<p>  // get the Service Port</p>
<p>  //TODO: plugin the actual getXXXXXServicePort method name here<br />
  // and uncomment the code<br />
  //port = wsClient.get&#60;XXXXX&#62;ServicePort(wsdlURL);</p>
<p>  /*<br />
   * Call to Test method<br />
   * I am calling the Service API inside the Test Method.<br />
   */<br />
  wsClient.testMethod(port);</p>
<p>  } catch (IOException e) {<br />
   System.out.println("Could not get Webservice Port! Error = "<br />
     + e.getMessage());<br />
  } catch (ServiceException e) {<br />
   System.out.println("Could not get Webservice Port !! Error = "<br />
     + e.getMessage());<br />
  }</p>
<p> }</p>
<p> /**<br />
  * This method gets the Service reeference.<br />
  *<br />
  * @throws IOException<br />
  * @throws ServiceException<br />
  */<br />
 private XXXXXPortType getServicePort(String wsdl) throws IOException,<br />
   ServiceException {<br />
  System.out.println("&#62;&#62;&#62;&#62; &#62;&#62;&#62;&#62;&#62;&#62;&#62;&#62; Go Get the Service Port ");</p>
<p>  //TODO: plugin the actual Service and Service_Impl object names here<br />
  // and uncomment the code</p>
<p>  //XXXXXService service = new XXXXXService_Impl(wsdl);</p>
<p>  System.out.println(" Got the Service !!");</p>
<p>  /**<br />
   * Pass the valid authentication information to constructor<br />
   * (userId,Password)<br />
   *<br />
   * Else, you won't have permission to access the service methods<br />
   */</p>
<p>  //TODO: plugin the actual getXXXXXPortType method name here<br />
  // and uncomment the code</p>
<p>  //PortType port = service.getXXXXXPortType(this.user, this.pwd);</p>
<p>  System.out.println(" &#62;&#62;&#62;&#62; Got the Service Port! Return.");<br />
  return port;<br />
 }</p>
<p> /**<br />
  * This method calls the 'getCampaignList' API on the  Web Service<br />
  *<br />
  * Test Scenario: QueryProperty is not null Use p_fetchRecSize value - to limit<br />
  * the number of campaigns in response p_startIndex = 1<br />
  */</p>
<p> private void testMethod(XXXXXPortType port) {<br />
  System.out.println("\n &#62;&#62;&#62;&#62; Inside testMethodXXX ");</p>
<p>  // construct the input Objects<br />
  // .............<br />
  // .............</p>
<p>  // call the  Service API<br />
  try {</p>
<p>   /* IMPORTANT<br />
    * TODO: Write the code as per your Service API signature<br />
    */</p>
<p>   //&#60;response-object-type&#62; = port.ActualServiceMethodName(&#60;Request-Object&#62;);</p>
<p>  } catch (RemoteException e) {<br />
   System.out.println("Remote exception occured ! Error = "<br />
     + e.getMessage());<br />
   e.printStackTrace();<br />
  }</p>
<p> }</p>
<p>}//</p>
<p><strong><span style="color:#993300;"># WebserviceClient.properties</span></strong></p>
<p>## These values are being used by the Web Service Client program to<br />
#  access and invoke the web service APIs.</p>
<p>## do not mention the "http://" here as part of URL<br />
wsdlURL=localhost:9006/webservice/TestService?WSDL<br />
uesrID=wstest<br />
password=password</p>
<p><strong><span style="color:#993300;"># runWSclient.cmd</span></strong></p>
<p>@echo Set the Classpath Values<br />
set CLIENT_LIB_HOME=C:/WSServiceClient/lib<br />
set CLASSPATH=%CLASSPATH%;%CLIENT_LIB_HOME%/TestService_client.jar;%CLIENT_LIB_HOME%/webserviceclient.jar<br />
@echo Compile the test Client<br />
javac -d . WebServiceClient.java<br />
@echo Compilation successful<br />
@echo Now run the client<br />
java com.wstest.WebServiceClient</p>
<p>----------------- Steps: ------------------</p>
<p>1. Place the &#60;TEST&#62;Service.WSDL and all XSD files in a folder inside the root dir and update the wsdlLocation path in "build.properties"<br />
 e..g wsdlLocation=C:/WSServiceClient/xsd<br />
 <br />
2. Change the dir path specific values (like C:/&#60;your-dir&#62;/), as per the your dir path in the "build.properties".<br />
 - dir path for 'lib' containing the required Jars<br />
 - WSDL file location as per your dir path<br />
 - Client Jar file name, it can be any name<br />
 <br />
3. If package name is changed in 'build.xml' then source file (WebServiceClient.java) should also be updated accordingly.<br />
    Package name used in this sample to "com.ws.client"</p>
<p>4. Set the dir path for 'lib' containing the required Jars (CLIENT_LIB_HOME) in the "runWSClient.cmd"<br />
 e.g.: set CLIENT_LIB_HOME=C:/WSServiceClient/lib</p>
<p>5. Open the Windows command prompt and change dir upto the 'build.xml' location</p>
<p>6. Execute "ant" on the prompt<br />
 C:\&#60;your-dir&#62;\&#62;ant</p>
<p>If build is successful: then it will generate the required Web Service Client jar</p>
<p>7. Update the Java program - few lines of commented code with Actual object and method names.<br />
8. Execute the "runWSClient.cmd" on Windows command prompt<br />
 C:\&#60;your-dir&#62;\&#62;runWSClient.cmd</p>
<p>--------------------------------------------------------------------------------------------------------------</p>
<p>!! Note: The provided code is a Sample test client for accessing the <strong>RPC</strong> style WebSerivce through Java.</p>
<p>You can find the Actual object and method names in the generated Web Service Client jar.</p>
<p>In order to run on the Unix box, one needs to create a script similar to "runWSClient.cmd".<br />
--------------------------------------------------------------------------------------------------------------</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Configure Basic Authentication for Web Services - using WebLogic]]></title>
<link>http://prowess.wordpress.com/?p=19</link>
<pubDate>Thu, 19 Jun 2008 17:43:55 +0000</pubDate>
<dc:creator>Manoj</dc:creator>
<guid>http://prowess.wordpress.com/?p=19</guid>
<description><![CDATA[For the intranet enterprise applications, most of the Client want declarative security (non SSL) fo]]></description>
<content:encoded><![CDATA[<p>For the intranet enterprise applications, most of the Client want declarative security (non SSL) for their Web Services. I have already done it for one of the telecom client. I do not need to explain the fundamentals of Security as it is well documented on many websites including IBM and Weblogic sites. So this article will precisely tell you how to set up the Basic authentication for you Web Services with Weblogic 92.  I will explain here how to set up the web.xml and weblogic.xml files for your Web Service. And then how to configure the Security Realm using Weblogic console.</p>
<p>## <strong>web.xml</strong><br />
&#60;!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "<a href="http://java.sun.com/dtd/web-app_2_3.dtd">http://java.sun.com/dtd/web-app_2_3.dtd</a>"&#62;<br />
&#60;web-app&#62;<br />
&#60;welcome-file-list&#62;<br />
&#60;welcome-file&#62;/YOUR-SERVICE-NAME?wsdl&#60;/welcome-file&#62;<br />
&#60;/welcome-file-list&#62;<br />
&#60;security-constraint&#62;<br />
&#60;web-resource-collection&#62;<br />
&#60;web-resource-name&#62;webservice&#60;/web-resource-name&#62;<br />
&#60;url-pattern&#62;/YOUR-SERVICE-NAME&#60;/url-pattern&#62;<br />
&#60;!-- &#60;url-pattern&#62;/YOUR-SERVICE-NAME?wsdl&#60;/url-pattern&#62; --&#62;<br />
&#60;http-method&#62;GET&#60;/http-method&#62;<br />
&#60;http-method&#62;POST&#60;/http-method&#62;<br />
&#60;/web-resource-collection&#62;<br />
&#60;auth-constraint&#62;<br />
&#60;role-name&#62;ROLE-NAME-AS-REQUIRED&#60;/role-name&#62;<br />
&#60;/auth-constraint&#62;<br />
&#60;/security-constraint&#62;<br />
&#60;login-config&#62;<br />
&#60;auth-method&#62;BASIC&#60;/auth-method&#62;<br />
&#60;realm-name&#62;default&#60;/realm-name&#62;<br />
&#60;/login-config&#62;<br />
&#60;security-role&#62;<br />
&#60;role-name&#62;ROLE-NAME-AS-REQUIRED&#60;/role-name&#62;<br />
&#60;/security-role&#62;<br />
&#60;/web-app&#62; </p>
<p>## <strong>weblogic.xml</strong><br />
&#60;?xml version="1.0" encoding="ISO-8859-1"?&#62;<br />
&#60;!DOCTYPE weblogic-web-app<br />
  PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN"<br />
  "<a href="http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd">http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd</a>"&#62;<br />
 <br />
&#60;weblogic-web-app&#62;<br />
       &#60;security-role-assignment&#62;<br />
               &#60;role-name&#62;ROLE-NAME-AS-REQUIRED&#60;/role-name&#62;<br />
               &#60;principal-name&#62;USER-NAME-AS-REQUIRED&#60;/principal-name&#62;<br />
       &#60;/security-role-assignment&#62;<br />
&#60;/weblogic-web-app&#62;</p>
<p>## <strong>Realm Configuration:</strong></p>
<p>Next you need to configure the default Security Realm of your Weblogic Server for User Atuhentication. Refer to below document for User, Group and Role configuration in WLS realm.</p>
<p><a class="aligncenter" title="Security Realm Configuration" href="http://prowess.wordpress.com/files/2008/06/security_realm_configuration_for_authentication.doc" target="_blank">Security Realm Configuration for User Authentication</a></p>
<p>Note: <span style="font-size:10pt;color:#3366ff;font-family:Verdana;">While deploying the Ear/War, make sure to select the "<span style="text-decoration:underline;">Custom Roles</span>" radio button instead of default "DD Only"<strong>.</strong></span><span style="font-size:10pt;color:#333399;font-family:Verdana;"> </span></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[SEO Service]]></title>
<link>http://webdesigninghosting.wordpress.com/?p=43</link>
<pubDate>Thu, 19 Jun 2008 12:19:05 +0000</pubDate>
<dc:creator>webdesigninghosting</dc:creator>
<guid>http://webdesigninghosting.wordpress.com/?p=43</guid>
<description><![CDATA[As a popular search engine optimization company HANS’s expert give you advance and best seo servic]]></description>
<content:encoded><![CDATA[<p>As a popular search engine optimization company HANS’s expert give you advance and best <a title="seo service" href="http://www.hansindia.com/">seo service</a> with complete satisfaction as well as affordable price. We are providing perfect Meta tag, best page title and page heading. Our <a title="seo" href="http://www.hansindia.com/seo/">seo</a> experts team follows all policy which is require for good position of various search engine such as using alt tag in all images of web pages body text evaluation as per requirement and adjustment. Our experts regularly research and development for achieve best ranking as well as capture the require traffic as soon as possible. So don’t waste your time select our <a title="seo service" href="http://www.hansindia.com/">seo service</a> and promote your business website as well as promote your business.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Gliffy]]></title>
<link>http://thenextera.wordpress.com/?p=19</link>
<pubDate>Mon, 16 Jun 2008 04:32:13 +0000</pubDate>
<dc:creator>itisanillusion</dc:creator>
<guid>http://thenextera.wordpress.com/?p=19</guid>
<description><![CDATA[Gliffy is an online diagramming software. You can easily create and share professional-looking flowc]]></description>
<content:encoded><![CDATA[<p><a href="http://www.gliffy.com/" target="_blank">Gliffy</a> is an online diagramming software. You can easily create and share professional-looking flowcharts, diagrams, floor plans, technical drawings, etc.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[VB/VBA Call WebService]]></title>
<link>http://developerresources.wordpress.com/?p=42</link>
<pubDate>Fri, 13 Jun 2008 20:11:01 +0000</pubDate>
<dc:creator>developerresources</dc:creator>
<guid>http://developerresources.wordpress.com/?p=42</guid>
<description><![CDATA[You can call a webservice from VBA simply by posting the soap envelope. Here is an example:
    D]]></description>
<content:encoded><![CDATA[<p>You can call a webservice from VBA simply by posting the soap envelope. Here is an example:</p>
<pre>    Dim http As New WinHttp.WinHttpRequest
    Dim URL As String
    Dim envelope As String
    URL = "http://notificationserver/NotificationServer/NotifyService"
    envelope = "&#60;?xml version=""1.0"" encoding=""UTF-8""?&#62;&#60;soap:Envelope soap:encodingStyle=""http://schemas.xmlsoap.org/soap/encoding/"" xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:soapenc=""http://schemas.xmlsoap.org/soap/encoding/"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:tns=""http://NotificationServer.nvidia.com/""&#62;&#60;soap:Body&#62;&#60;tns:notify&#62;&#60;id xsi:type=""xsd:string""&#62;blah&#60;/id&#62;&#60;from xsi:type=""xsd:string""&#62;from &#60;/from&#62;&#60;subject xsi:type=""xsd:string""&#62;subject&#60;/subject&#62;&#60;details xsi:type=""xsd:string""&#62;details&#60;/details&#62;&#60;/tns:notify&#62;&#60;/soap:Body&#62;&#60;/soap:Envelope&#62;"

    Call http.Open("POST", URL)

    http.SetRequestHeader "Content-Type", "text/xml"
    http.SetRequestHeader "SOAPAction", " "

    http.Send envelope
    MsgBox http.ResponseText</pre>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Apache Struts web application development using Oracle9i JDeveloper]]></title>
<link>http://ikool.wordpress.com/?p=216</link>
<pubDate>Thu, 12 Jun 2008 19:12:09 +0000</pubDate>
<dc:creator>ikool</dc:creator>
<guid>http://ikool.wordpress.com/?p=216</guid>
<description><![CDATA[JDeveloper is a decent and convenient IDE tools which can be used to develop standalone java , J2EE,]]></description>
<content:encoded><![CDATA[<p>JDeveloper is a decent and convenient IDE tools which can be used to develop standalone java , J2EE, UML modeling and web services development. With its supports of visual and declarative development with Oracle ADF (Application Development Framework) and JavaServer Faces, the development of web applications is getting easier and quicker.<br />
Personally I have visited JDeveloper a few times, I had many puzzles the first time I was trying to use it, to see the details please visit:</p>
<p style="text-align:center;"><a href="http://blog.360.yahoo.com/blog-nKTxsxMieaLc62A5ui8-?cq=1&#38;p=12"> Apache Struts web application development using Oracle9i JDeveloper</a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[The WWDC and MobileMe]]></title>
<link>http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/</link>
<pubDate>Wed, 11 Jun 2008 18:19:18 +0000</pubDate>
<dc:creator>techpaul</dc:creator>
<guid>http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/</guid>
<description><![CDATA[For the sake of ratings, I simply must write something about the hot topic on the Web right now]]></description>
<content:encoded><![CDATA[<p>For the sake of ratings, I simply must write something about <strong>the hot topic on the Web</strong> right now-- a topic <span style="text-decoration:underline;">so hot</span> (how hot is it?) that the amount of "buzz" has caused the social networking/blogging site <a href="http://www.twitter.com" target="_blank">Twitter</a> to crash under the burden.<br />
That topic is <a title="Wikipedia=what is the " href="http://en.wikipedia.org/wiki/Worldwide_Developers_Conference" target="_blank">Apple's WWDC</a> (aka "Stevenotes"<strong>*</strong>).</p>
<p>The Worldwide Developer Conference has become (one of) the venues where Apple offers sneak peek (preview) at new products and technologies... A glimpse at what the immediate future holds.<br />
(Personally, I find such teases annoying, but the iFanatics feel different, I guess.)</p>
<p>For instance, this year, we were told about <a href="http://en.wikipedia.org/wiki/Mac_OS_X_v10.6" target="_blank">OS 10.6</a> (aka "Snow Leopard").. which won't offer any new features and we might see it in a year. WooHoo!!! Yay!!! I mean.. yawn.<br />
And we're told about a new version (2.0) of the iPhone's OS, which will affect <em>every person on the planet</em>. Not.</p>
<p>Can you tell? Even though this event is being held right up the road, and I am a World Renown Tech Journalist, I made no effort to attend, and am too experienced to get wow!-ed by the hype. I also confess, I am not a iPerson/iFanatic.</p>
<p><span style="text-decoration:underline;">Yet, there are some interesting and relevant items to note:</span> Namely, Apple's investment in bringing to us the "wonders" of <a title="Wikipedia=what is " href="http://en.wikipedia.org/wiki/Cloud_computing" target="_blank">cloud computing</a> with MobileMe and the 20GB iDisk (and they're hoping.. the 3G iPhone). <a title="WWDC keynote " href="http://news.zdnet.com/2422-13568_22-205168.html?tag=nl.e539" target="_blank">This video</a> from the conference explains, and demostrates. (For some reason I can't embed the video, so you need to click the link. Sorry.)</p>
<p>This $99/year service will work "cross platform" (Windows/Mac/Linux) and across devices.</p>
<p>Here we really are looking at "Web 2.0", and the future of computing. People, before too long, will be storing their whole lives and all their personal information <strong>on the Internet</strong>. So that we can <em>share</em> it.<br />
Has anyone considered the security implications?</p>
<p>I'm an old dinosaur, and I'm a curmudgeon to boot.. I think there already is too much personal information available about us on the Web, and I'm not about to go putting my address book and calendar (and.. my accounting program?) there.<br />
But those of the <a href="http://techpaul.wordpress.com/2008/03/03/the-new-generation-gap/" target="_blank">Look At Me Generation</a> will probably be clamoring for it.</p>
<p><strong>*</strong> A reference to the fact that the keynote address is usually given by Apple founder Steve Jobs.</p>
<p>Copyright 2007-8 © Tech Paul. All rights reserved.<a title="post to jaanix" href="http://jaanix.com/post?url=&#38;title=&#38;tags=&#38;note=&#38;image="><img style="vertical-align:middle;border-width:0;" src="http://s3.amazonaws.com/jaanix/img/jaanix_mini.png" alt="jaanix" width="16" height="16" /> post to jaanix</a></p>
<table border="0" cellspacing="1" cellpadding="1">
<tbody>
<tr>
<td class="sbmText">Share this post :</td>
<td class="sbmDim"><a class="sbmDim" title="Post it to backflip" href="http://www.backflip.com/add_page_pop.ihtml?url=http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/&#38;title=Tech--for Everyone &#124; The WWDC and MobileMe" target="_blank"><img src="http://blogs.msdn.com/blogfiles/rahulso/WindowsLiveWriter/IconsfordifferentSocialBookmarkingSites_B387/backflip4.png" border="0" alt="" /></a></td>
<td class="sbmDim"><a class="sbmDim" title="Post it to buddymark" href="http://buddymarks.com/s_add_bookmark.php?bookmark_url=http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/&#38;bookmark_title=Tech--for Everyone &#124; The WWDC and MobileMe" target="_blank"><img src="http://blogs.msdn.com/blogfiles/rahulso/WindowsLiveWriter/IconsfordifferentSocialBookmarkingSites_B387/buddymar4.png" border="0" alt="" /></a></td>
<td class="sbmDim"><a class="sbmDim" title="Post it to del.icio.us" href="http://del.icio.us/post?url=http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/&#38;;title=Tech--for Everyone &#124; The WWDC and MobileMe" target="_blank"><img src="http://blogs.msdn.com/blogfiles/rahulso/WindowsLiveWriter/IconsfordifferentSocialBookmarkingSites_B387/deliciou4.png" border="0" alt="" /></a></td>
<td class="sbmDim"><a class="sbmDim" title="Post it to del.iri.ous!" href="http://de.lirio.us/bookmarks/sbmtool?action=add&#38;address=http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/&#38;title=Tech--for Everyone &#124; The WWDC and MobileMe" target="_blank"><img src="http://blogs.msdn.com/blogfiles/rahulso/WindowsLiveWriter/IconsfordifferentSocialBookmarkingSites_B387/deliriou4.png" border="0" alt="" /></a></td>
<td class="sbmDim"><a class="sbmDim" title="Post it to digg" href="http://digg.com/submit?phase=2&#38;url=http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/&#38;title=Tech--for Everyone &#124; The WWDC and MobileMe" target="_blank"><img src="http://blogs.msdn.com/blogfiles/rahulso/WindowsLiveWriter/IconsfordifferentSocialBookmarkingSites_B387/digg14.png" border="0" alt="" /></a></td>
<td class="sbmDim"><a class="sbmDim" title="Post it to furl" href="http://www.furl.net/store?s=f&#38;to=0&#38;u=http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/&#38;ti=Tech--for Everyone &#124; The WWDC and MobileMe" target="_blank"><img src="http://blogs.msdn.com/blogfiles/rahulso/WindowsLiveWriter/IconsfordifferentSocialBookmarkingSites_B387/furl4.png" border="0" alt="" /></a></td>
<td class="sbmDim"><a class="sbmDim" title="Post it to reddit!" href="http://reddit.com/submit?url=http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/&#38;title=Tech--for Everyone &#124; The WWDC and MobileMe" target="_blank"><img src="http://blogs.msdn.com/blogfiles/rahulso/WindowsLiveWriter/IconsfordifferentSocialBookmarkingSites_B387/reddit4.png" border="0" alt="" /></a></td>
<td class="sbmDim"><a class="sbmDim" title="Post it to shadow" href="http://www.shadows.com/bookmark/saveLink.rails?page=http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/&#38;title=Tech--for Everyone &#124; The WWDC and MobileMe" target="_blank"><img src="http://blogs.msdn.com/blogfiles/rahulso/WindowsLiveWriter/IconsfordifferentSocialBookmarkingSites_B387/shadows6.png" border="0" alt="" /></a></td>
<td class="sbmDim"><a class="sbmDim" title="Post it to technorati!" href="http://technorati.com/faves/?add=http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/&#38;title=Tech--for Everyone &#124; The WWDC and MobileMe" target="_blank"><img src="http://blogs.msdn.com/blogfiles/rahulso/WindowsLiveWriter/IconsfordifferentSocialBookmarkingSites_B387/technora4.png" border="0" alt="" /></a></td>
<td class="sbmDim"><a class="sbmDim" title="Post it to wists" href="http://www.wists.com/?action=add&#38;url=http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/&#38;title=Tech--for Everyone &#124; The WWDC and MobileMe" target="_blank"><img src="http://blogs.msdn.com/blogfiles/rahulso/WindowsLiveWriter/IconsfordifferentSocialBookmarkingSites_B387/wists9.png" border="0" alt="" /></a></td>
<td class="sbmDim"><a class="sbmDim" title="Post it to yahoo!" href="http://myweb.yahoo.com/myresults/bookmarklet?u=http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/&#38;t=Tech--for Everyone &#124; The WWDC and MobileMe" target="_blank"><img src="http://blogs.msdn.com/blogfiles/rahulso/WindowsLiveWriter/IconsfordifferentSocialBookmarkingSites_B387/yahoo9.png" border="0" alt="" /></a></td>
<td class="sbmDim"><a class="sbmDim" title="Post it to email" href="mailto:&#38;body=I%20was%20reading%20this%20article%20and%20thought%20that%20you%20might%20like%20this:http://techpaul.wordpress.com/2008/06/11/the-wwdc-and-mobileme/&#38;subject=Tech--for%20Everyone%20%7C%20The%20WWDC%20and%20MobileMe" target="_blank"><img src="http://blogs.msdn.com/blogfiles/rahulso/WindowsLiveWriter/IconsfordifferentSocialBookmarkingSites_B387/mail69854.gif" border="0" alt="" /></a></td>
</tr>
</tbody>
</table>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Salesforce.com - web based CRM solution]]></title>
<link>http://marperse.wordpress.com/?p=8</link>
<pubDate>Wed, 11 Jun 2008 15:17:30 +0000</pubDate>
<dc:creator>Marcus Seineke</dc:creator>
<guid>http://marperse.wordpress.com/?p=8</guid>
<description><![CDATA[I thought as one of my first posts here, I&#8217;d like to share the very positive experience I have]]></description>
<content:encoded><![CDATA[<p>I thought as one of my first posts here, I'd like to share the very positive experience I have made over the last months with the CRM solution I am using. It's a web based service you probably already have heard of, it's <a title="Salesforce.com" href="http://www.salesforce.com" target="_blank">Salesforce.com</a>.</p>
<p>It's extremely easy to use, very robust and powerful. It has lots of features and AFAIK it's used by a lot of companies. Whatever feature you are looking for, they probably have it and if it's not yet built in, the system can be extended - and it still runs right in your browser, on any platform on any computer, wherever you are.</p>
<p>The fact that it is running only in your browser and that there's no need to install anything is, what makes it the perfect solution for me: There is no need for any maintenance and it had no breakdowns or blackout dates within the time I was using it - it just runs.</p>
<p>No, I don't get any commission on recommendations, I'm just happy to use it. Check it out: <a title="Salesforce.com" href="http://www.salesforce.com" target="_blank">Salesforce.com</a></p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Web Solution]]></title>
<link>http://webdesigninghosting.wordpress.com/?p=41</link>
<pubDate>Wed, 11 Jun 2008 12:57:47 +0000</pubDate>
<dc:creator>webdesigninghosting</dc:creator>
<guid>http://webdesigninghosting.wordpress.com/?p=41</guid>
<description><![CDATA[If you have a business and do you want to promote your business through web presence and with afford]]></description>
<content:encoded><![CDATA[<p>If you have a business and do you want to promote your business through web presence and with affordable prize as well as complete satisfaction than Hans is best choice for you. Hans who is representing <a href="http://www.hansindia.com/">Hardware and Network Solution</a> we are providing complete <a href="http://www.hansindia.com/">web solution</a> with full satisfaction if you want to give your in web presence it has following steps: select a domain name who represent your business, take web space as per your service and pages requirement, design a attractive website with our website designing segment and select our search engine optimization service to promote your business service or products in various search engine. Don’t waste your money any where select our web solution service.</p>
]]></content:encoded>
</item>
<item>
<title><![CDATA[Python web service using SOAPPy]]></title>
<link>http://developerresources.wordpress.com/?p=32</link>
<pubDate>Mon, 09 Jun 2008 05:10:58 +0000</pubDate>
<dc:creator>developerresources</dc:creator>
<guid>http://developerresources.wordpress.com/?p=32</guid>
<description><![CDATA[Here is an example of how to call a WebService from Python. For more information on Python and Web S]]></description>
<content:encoded><![CDATA[<p>Here is an example of how to call a WebService from Python. For more information on Python and Web Services I recommend the following book: <a href="http://www.amazon.com/gp/product/0596007973?ie=UTF8&#38;tag=develoresour-20&#38;linkCode=as2&#38;camp=1789&#38;creative=9325&#38;creativeASIN=0596007973">Python Cookbook</a><img src="http://www.assoc-amazon.com/e/ir?t=develoresour-20&#38;l=as2&#38;o=1&#38;a=0596007973" width="1" height="1" border="0" alt="" style="border:none !important;margin:0 !important;" />.</p>
<p>This requires the fpconst and SOAPPy package. You can download them from http://research.warnes.net/projects/RStatServer/fpconst/ and http://prdownloads.sourceforge.net/pywebsvcs/SOAPpy-0.11.6.tar.gz?download. Unzip the packages then run python setup.py install on each package. </p>
<p>The following code will then connect to the web service and execute the remote method.<br />
<code><br />
<em>import sys</p>
<p>#Import the ZSI client<br />
from SOAPpy import WSDL</p>
<p>url = 'http://webservices.daehosting.com/services/isbnservice.wso?WSDL'<br />
server = WSDL.Proxy(url);<br />
print server.IsValidISBN13(sISBN ='0000000000000')</em><br />
</code></p>
<p>Note there is another web service package called ZSI, I found SOAPPy to be easier to use, but from what I understand both packages are going to merge together.</p>
]]></content:encoded>
</item>

</channel>
</rss>
