<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Real World Architecture from the front lines - GISV Architecture Team Blog</title><subtitle type="html" /><id>http://blogs.msdn.com/gisvarchitectureteam/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/gisvarchitectureteam/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/gisvarchitectureteam/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2008-05-28T17:36:00Z</updated><entry><title>Silverlight and Java Interoperability: Providing the Next Generation Web User Experience</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/gisvarchitectureteam/archive/2008/06/30/silverlight-and-java-interoperability-providing-the-next-generation-web-user-experience.aspx" /><id>http://blogs.msdn.com/gisvarchitectureteam/archive/2008/06/30/silverlight-and-java-interoperability-providing-the-next-generation-web-user-experience.aspx</id><published>2008-07-01T07:26:00Z</published><updated>2008-07-01T07:26:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;Posted by Robert Bell, Senior Solutions Architect&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;One of the areas that team our assists GISVs (Global Independent Software Vendors) is with &lt;B style="mso-bidi-font-weight: normal"&gt;interoperability between .NET and Java.&lt;/B&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;A particular area of interest of both .NET and Java developers is using &lt;/FONT&gt;&lt;A href="http://silverlight.net/" mce_href="http://silverlight.net/"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Silverlight&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; to implement rich, cross-browser, cross-platform, multi-media experiences. At this years’ JavaOne2008 conference Robert Bell and Laurence Moroney presented a session on “Next Gen Web UX Interop with Java EE &amp;amp; Silverlight”; this post is a summarization of the technical approaches discussed.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT face=Calibri size=3&gt;The session covered some basic concepts&amp;nbsp;of&amp;nbsp;Silverlight, and focused on the various ways that Silverlight can interoperate with Java. Silverlight is a positioned for “reach” scenarios where rich internet applications can be quickly deployed to clients the internet. “Silverlight is designed for Web page content that is connected to its host (it will not work offline), that deeply engages the user, and that can render on any browser.” ( &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/bb428859.aspx" mce_href="http://msdn.microsoft.com/en-us/library/bb428859.aspx"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Scenarios for Using Silverlight&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;)&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;For a great example of what is possible using Silverlight, &lt;SPAN style="COLOR: black; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;has a look at the &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;A href="http://www.cookingwithxaml.com/meals/financials/default.html" mce_href="http://www.cookingwithxaml.com/meals/financials/default.html"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT face=Calibri size=3&gt;Silver Financials Demo&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="COLOR: black; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; – see screen shot below. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /&gt;&lt;v:shapetype id=_x0000_t75 path="m@4@5l@4@11@9@11@9@5xe" o:spt="75" coordsize="21600,21600" stroked="f" filled="f" o:preferrelative="t"&gt;&lt;v:stroke joinstyle="miter"&gt;&lt;/v:stroke&gt;&lt;v:formulas&gt;&lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @0 1 0"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum 0 0 @1"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @2 1 2"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @3 21600 pixelWidth"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @3 21600 pixelHeight"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @0 0 1"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @6 1 2"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @7 21600 pixelWidth"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @8 21600 0"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @7 21600 pixelHeight"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @10 21600 0"&gt;&lt;/v:f&gt;&lt;/v:formulas&gt;&lt;v:path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"&gt;&lt;/v:path&gt;&lt;o:lock aspectratio="t" v:ext="edit"&gt;&lt;/o:lock&gt;&lt;/v:shapetype&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;&lt;IMG title="Silver Financials Demo" style="WIDTH: 425px; HEIGHT: 254px" height=254 alt="Silver Financials Demo" src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675258/425x254.aspx" width=425 align=left mce_src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675258/425x254.aspx"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;F&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;igure &lt;SPAN style="mso-no-proof: yes"&gt;1&lt;/SPAN&gt; Silver Financials Demo&lt;SPAN style="COLOR: black; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;If the Silverlight plug-in is not installed, you will be prompted do download the Silverlight 2 plug-in, once the plug-in is installed the Silverlight application should run. The source code for the Silver Financials Demo is &lt;/FONT&gt;&lt;A href="http://www.financialdevelopers.com/assets/SilverlightinFinancialsDemonostratorSource.zip" mce_href="http://www.financialdevelopers.com/assets/SilverlightinFinancialsDemonostratorSource.zip"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;here&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;This blog focuses on key approaches you can take to create a hybrid Silverlight-Java application. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;The current release of Silverlight is Silverlight 2 beta 2. &lt;/FONT&gt;&lt;/P&gt;
&lt;H1 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;Silverlight-Java Interoperability Scenarios&lt;/FONT&gt;&lt;/H1&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;There are a few key scenarios of using Silverlight in conjunction with Java applications. These scenarios as described below range from disconnected &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;- where Silverlight content is &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;embedded within a Java web artifact (e.g. JSP page, etc) and runs standalone within web browser - to connected, where a Silverlight application running in the browser communicates back to a Java server (e.g. using web services, etc). &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;The Silverlight ‘content’ here is defined in a combination of markup language and code – specifically, EXtensible Application Markup Language (XAML) (XAML is an XML markup language that describes the User Interface elements, styling, behavior, etc) and code (JavaScript or managed language like C# or VB.NET). &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;The Demo setup is required to be able to run the various interoperability scenarios that are patterned after a simple fortune telling (Magic 8 Ball) scenario.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;Demo Setup&lt;/FONT&gt;&lt;/H2&gt;
&lt;H3 style="MARGIN: 10pt 0in 12pt"&gt;&lt;FONT face=Cambria&gt;Java Environment&lt;/FONT&gt;&lt;/H3&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;The Java SE Development Kit 6 update 5 (jdk-6u6-windows-i586-p-iftw.exe) was installed along with the Java Platform Enterprise Edition 5 Tools Bundle Update 5 (java-tools-bundle-update5-windows.exe). These files may be obtained from &lt;/FONT&gt;&lt;A href="http://developers.sun.com/downloads/" mce_href="http://developers.sun.com/downloads/"&gt;&lt;FONT face=Calibri size=3&gt;http://developers.sun.com/downloads/&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;. There are two web application projects: Magic8Ball and Magic8BallSOAP. The SOAP scenario is run in the Magic8Ball SOAP project and all of the other scenarios are run in the Magic8Ball project. The file clientaccesspolicy.xml must be moved to the docroot directory in the Glassfish V2 server.&lt;/FONT&gt;&lt;/P&gt;
&lt;H3 style="MARGIN: 10pt 0in 12pt"&gt;&lt;FONT face=Cambria&gt;Silverlight .NET Environment&lt;/FONT&gt;&lt;/H3&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;Visual Studio 2008 Express Edition may be downloaded &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/express/" mce_href="http://www.microsoft.com/express/"&gt;&lt;FONT face=Calibri size=3&gt;here&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;, then to setup the Silverlight 2 beta 2 environment follows the instructions on the &lt;/FONT&gt;&lt;A href="http://silverlight.net/GetStarted/" mce_href="http://silverlight.net/GetStarted/"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Silverlight Get Started&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;There are three Visual Studio projects: POX,&amp;nbsp;Syndication and SOAP2.2.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;Scenario Overviews&lt;/FONT&gt;&lt;/H2&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri; mso-bidi-font-size: 12.0pt"&gt;&lt;SPAN style="mso-list: Ignore"&gt;1.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-size: 12.0pt"&gt;Static Silverlight Content Embedded within a Java EE 5 JSP&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 6pt 0in 10pt 0.25in"&gt;&lt;FONT face=Calibri size=3&gt;This is the most basic Silverlight scenario where a Silverlight control is instantiated through JavaScript; then the Silverlight control renders XAML that is included in a JSP page.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;I style="mso-bidi-font-style: normal"&gt;The presentation logic is on the Java server in this scenario.&lt;/I&gt; &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri; mso-bidi-font-size: 12.0pt"&gt;&lt;SPAN style="mso-list: Ignore"&gt;2.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-size: 12.0pt"&gt;Silverlight Content Dynamically Generated at Runtime within a Java EE 5 JSP&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 6pt 0in 10pt 0.25in"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;This scenario is the same as the “Silverlight-Java with Static XAML “except the XAML is dynamically modified by the XamlSource Servlet then included in a JSP.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;A parameter passed to the XamlSource Servlet is used to lookup a matching value that is then used to modify the XAML.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Note that for there is a page refresh each time a new parameter is passed in and the value on the Silverlight control is updated. &lt;I style="mso-bidi-font-style: normal"&gt;The presentation logic is on the Java server in this scenario.&lt;/I&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.25in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri; mso-bidi-font-size: 12.0pt"&gt;&lt;SPAN style="mso-list: Ignore"&gt;3.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-size: 12.0pt"&gt;Silverlight Client Application communicating with a Java Application Server&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 6pt 0in 10pt 0.25in"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;These scenarios all involve a Silverlight client application that is running in a browser, inside an HTML page, that communicates to a Java server POX, SOAP or Syndication service over HTTP (HTTP/SOAP with SOAP web services).&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 6pt 0in 10pt 0.25in"&gt;&lt;FONT face=Calibri size=3&gt;These scenarios require the use of Visual Studio 2008 to develop the Silverlight client application; they leverage the full potential of Silverlight through the creation of a Silverlight application in Visual Studio. &lt;I style="mso-bidi-font-style: normal"&gt;In all of these scenarios the presentation logic is on the Silverlight client.&lt;/I&gt; There are variants of this scenario, dependent on wire level format and messaging approach:&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.75in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level2 lfo2"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri; mso-bidi-font-size: 12.0pt"&gt;&lt;SPAN style="mso-list: Ignore"&gt;a.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-size: 12.0pt"&gt;Plain Old XML (POX) Service&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 6pt 0in 10pt 0.75in"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;I style="mso-bidi-font-style: normal"&gt;The NetBeans Magic8Ball project and the Visual Studio POX project are used in this scenario.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/I&gt;In this simple POX service scenario a parameter is passed into the PoxService servlet where a value is looked-up then put into a POX response. The Silverlight plug-in receives the XAML response parses it then renders the response in the Silverlight control. Note that Silverlight 2 beta 2 also supports a “POST” request. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;This same basic approach may be enhanced to build a REST (REpresentational State Transfer) service. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.75in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level2 lfo2"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri; mso-bidi-font-size: 12.0pt"&gt;&lt;SPAN style="mso-list: Ignore"&gt;b.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-size: 12.0pt"&gt;SOAP Web Service&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 6pt 0in 10pt 0.75in"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;I style="mso-bidi-font-style: normal"&gt;The Magic8BallSOAP NetBeans project and the Visual Studio SOAP2.2 project are used in this scenario.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/I&gt;The ability to create the proxy for the Java web service in Visual Studio makes connecting the “plumbing” of web services very straightforward and transparent. A basic SOAP web service endpoint is created in Java then a proxy is created in Visual Studio for the basic web service endpoint. The web service is call passes in a request parameter then receives the web service response. The web service response is bound to the XAML, which in turn is rendered on the Silverlight control. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.75in; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level2 lfo2"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri; mso-bidi-font-size: 12.0pt"&gt;&lt;SPAN style="mso-list: Ignore"&gt;c.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-size: 12.0pt"&gt;Syndication (RSS) Feed Service&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 6pt 0in 10pt 0.75in"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;I style="mso-bidi-font-style: normal"&gt;The Magic8Ball NetBeans project and the Visual Studio POX project are is used in this scenario.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/I&gt;RSS syndication is most often used to “subscribe” to content such as a blog. RSS 2.0 is a light-weight publish/subscribe standard. There are pull scenarios where a client asynchronously&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;accesses the RSS service feed to see the updated content of a blog for instance; an there are push like scenarios where a client will asynchronously poll an RSS service feed to effectively get real time data. The push-like scenarios more involved and will be discussed in a later blog. Note that both RSS 2.0 and Atom are supported by the Silverlight syndication. In the scenario below a simple RSS feed is created in Java then a Silverlight client accesses the feed through the feed URI. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;Static Silverlight Content Embedded within a Java EE 5 JSP&lt;/FONT&gt;&lt;/H2&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;IMG title=Static style="WIDTH: 425px; HEIGHT: 264px" height=264 alt=Static src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675276/425x264.aspx" width=425 align=left mce_src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675276/425x264.aspx"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;2&lt;/SPAN&gt;: Silverlight-Java with Static Silverlight Content Embedded within a Java EE 5 JSP&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;This scenario has everything necessary to deliver a Silverlight client on a single JSP page. In the JSP page the Silverlight control is instantiated, and the static XAML (user interface) content within the same JSP page, is associated to the Silverlight Control through the script tag (&lt;/FONT&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: red; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;Id&lt;/SPAN&gt;&lt;/B&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; ="xamlContent"&lt;/SPAN&gt;&lt;/B&gt;&lt;FONT face=Calibri size=3&gt;). &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;This is the Silverlight Control.&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 6.65in; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=638 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 6.65in; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=638&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;div&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: red"&gt;Id&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="silverlightControlHost"&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;object&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: red"&gt;data&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="data:application/x-silverlight,"&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;type&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="application/x-silverlight-2-b1"&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;width&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="100%"&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;height&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="100%"&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;param&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: red"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="source"&lt;/SPAN&gt; &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="COLOR: red"&gt;value&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="#xamlContent"&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;param&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: red"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="onerror"&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;value&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="onSilverlightError"&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;param&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: red"&gt;name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="background"&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;value&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="white"&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;a&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: red"&gt;href&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="http://go.microsoft.com/fwlink/?LinkId=108182"&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;style&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;text-decoration&lt;/SPAN&gt;: &lt;SPAN style="COLOR: blue"&gt;none&lt;/SPAN&gt;;&lt;SPAN style="COLOR: blue"&gt;"&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;img&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: red"&gt;src&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="http://go.microsoft.com/fwlink/?LinkId=108181"&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;alt&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="Get Microsoft Silverlight"&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;style&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;border-style&lt;/SPAN&gt;: &lt;SPAN style="COLOR: blue"&gt;none"/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;a&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;object&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;iframe&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: red"&gt;style&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;='&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;visibility&lt;/SPAN&gt;:&lt;SPAN style="COLOR: blue"&gt;hidden&lt;/SPAN&gt;;&lt;SPAN style="COLOR: red"&gt;height&lt;/SPAN&gt;:&lt;SPAN style="COLOR: blue"&gt;0&lt;/SPAN&gt;;&lt;SPAN style="COLOR: red"&gt;width&lt;/SPAN&gt;:&lt;SPAN style="COLOR: blue"&gt;0&lt;/SPAN&gt;;&lt;SPAN style="COLOR: red"&gt;border&lt;/SPAN&gt;:&lt;SPAN style="COLOR: blue"&gt;0px'&amp;gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;iframe&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;div&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;3&lt;/SPAN&gt;: Silverlight-Java with Static Silverlight Content Embedded within a Java EE 5 JSP.jsp Silverlight &lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;This is the XAML.&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 6.65in; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=638 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 6.65in; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=638&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;script&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: blue"&gt;"text/xaml"&lt;/SPAN&gt; &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="COLOR: red"&gt;Id&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="xamlContent"&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;Canvas xmlns=&lt;SPAN style="COLOR: #a31515"&gt;"http://schemas.microsoft.com/client/2007"&lt;/SPAN&gt; xmlns:x=&lt;SPAN style="COLOR: #a31515"&gt;"http://schemas.microsoft.com/winfx/2006/xaml"&lt;/SPAN&gt; Background=&lt;SPAN style="COLOR: #a31515"&gt;"#C0C0C0"&lt;/SPAN&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;Grid x:Name=&lt;SPAN style="COLOR: #a31515"&gt;"LayoutRoot"&lt;/SPAN&gt; Background=&lt;SPAN style="COLOR: #a31515"&gt;"Beige"&lt;/SPAN&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;TextBlock Margin=&lt;SPAN style="COLOR: #a31515"&gt;"0,0,0,0"&lt;/SPAN&gt; VerticalAlignment=&lt;SPAN style="COLOR: #a31515"&gt;"Top"&lt;/SPAN&gt; Height=&lt;SPAN style="COLOR: #a31515"&gt;"38"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; TEXT-INDENT: 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Text=&lt;SPAN style="COLOR: #a31515"&gt;"Magic 8 Ball"&lt;/SPAN&gt; TextWrapping=&lt;SPAN style="COLOR: #a31515"&gt;"Wrap"&lt;/SPAN&gt; Opacity=&lt;SPAN style="COLOR: #a31515"&gt;"0.8"&lt;/SPAN&gt; FontSize=&lt;SPAN style="COLOR: #a31515"&gt;"24"&lt;/SPAN&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;…&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/Grid&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;/Canvas&amp;gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;script&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 9pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;4&lt;/SPAN&gt;: Silverlight-Java with Static Silverlight Content Embedded within a Java EE 5 JSP&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;Silverlight Content Dynamically Generated at Runtime within a Java EE 5 JSP&lt;/FONT&gt;&lt;/H2&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;/SPAN&gt;&lt;/H2&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;IMG title=Dynamic style="WIDTH: 425px; HEIGHT: 234px" height=234 alt=Dynamic src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675266/425x234.aspx" width=425 align=left mce_src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675266/425x234.aspx"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&amp;nbsp;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;5&lt;/SPAN&gt;: Silverlight-Java with Silverlight Content Dynamically Generated at Runtime within a Java EE 5 JSP&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;In this simple POX service scenario a parameter is passed into the &lt;I style="mso-bidi-font-style: normal"&gt;PoxService servlet&lt;/I&gt; in a GET HTTP method from &lt;I style="mso-bidi-font-style: normal"&gt;the POX project Silverlight client application&lt;/I&gt;. The parameter value is retrieved and the “look-up value” is placed in an XAML (POX) response. The Silverlight plug-in receives the XAML response, parses it, and then renders the response in the Silverlight control. Note that Silverlight 2 beta 2 also supports the POST HTTP method.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;First, this inline code gets the request parameter in the JSP:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 441.9pt; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=589 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 441.9pt; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=589&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: yellow; FONT-FAMILY: 'Courier New'; mso-no-proof: yes; mso-highlight: yellow"&gt;&amp;lt;%&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;String strSeed="";&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;if (request.getParameter("seed") == null) {&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;strSeed = "5";&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;} else {&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;strSeed = request.getParameter("seed");&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; BACKGROUND: yellow; FONT-FAMILY: 'Courier New'; mso-no-proof: yes; mso-highlight: yellow"&gt;%&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;6&lt;/SPAN&gt;: Silverlight-Java with Silverlight Content Dynamically Generated at Runtime within a Java EE 5 JSP.jsp&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-outline-level: 3"&gt;&lt;FONT face=Calibri size=3&gt;Then, this script includes the XAML from the XamlSource Servlet that has been passed the request parameter “seed”, and then the script is consumed by the Silverlight control:&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 6.65in; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=638 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 6.65in; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=638&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;script&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: blue"&gt;"text/xaml"&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;id&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="xamlContent"&amp;gt;&lt;/SPAN&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&amp;lt;jsp:include page=&lt;SPAN style="COLOR: #a31515"&gt;"/XamlSource"&lt;/SPAN&gt; flush=&lt;SPAN style="COLOR: #a31515"&gt;"false"&lt;/SPAN&gt; &amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;jsp:param name=&lt;SPAN style="COLOR: #a31515"&gt;"seed"&lt;/SPAN&gt; value=&lt;SPAN style="COLOR: #a31515"&gt;"&amp;lt;%=strSeed%&amp;gt;"&lt;/SPAN&gt; /&amp;gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;/jsp:include&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;script&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;7&lt;/SPAN&gt;: Silverlight-Java with Silverlight Content Dynamically Generated at Runtime within a Java EE 5 JSP.jsp&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-outline-level: 3"&gt;&lt;FONT face=Calibri size=3&gt;The XamlSource Servlet accepts the “seed” parameter:&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 6.65in; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=638 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 6.65in; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=638&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-outline-level: 3"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-outline-level: 3"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;String seed = request.getParameter("&lt;SPAN style="COLOR: #a31515; mso-no-proof: yes"&gt;seed&lt;/SPAN&gt;");&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-outline-level: 3"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;8&lt;/SPAN&gt;: XamlSource.java&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-outline-level: 3"&gt;&lt;SPAN style="mso-bidi-font-family: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The Fortune String is obtained through the getFortune method which accepts the “seed” parameter:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 6.65in; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=638 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 6.65in; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=638&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-outline-level: 3"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;String nodeValue = getFortune(new Integer(&lt;SPAN style="COLOR: #a31515; mso-no-proof: yes"&gt;seed&lt;/SPAN&gt;).intValue());&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;9&lt;/SPAN&gt;: XamlSource.java&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-outline-level: 3"&gt;&lt;SPAN style="mso-bidi-font-family: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The elements of interest in the &lt;SPAN style="COLOR: blue; mso-no-proof: yes"&gt;XAML.xml&lt;/SPAN&gt; template file are the &lt;SPAN style="COLOR: #a31515; mso-no-proof: yes"&gt;x&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; mso-no-proof: yes"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red; mso-no-proof: yes"&gt;Name&lt;/SPAN&gt; and &lt;SPAN style="COLOR: red; mso-no-proof: yes"&gt;Text&lt;/SPAN&gt; elements:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 6.65in; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=638 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 6.65in; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=638&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-outline-level: 3"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;TextBlock&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: red"&gt;Text&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="8"&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;Opacity&lt;/SPAN&gt; &lt;SPAN style="COLOR: #a31515"&gt;x&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;Name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="&lt;B style="mso-bidi-font-weight: normal"&gt;txtMagic8Ball&lt;/B&gt;"/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;TextBlock&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: red"&gt;Text&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="Fortune"&lt;/SPAN&gt; &lt;SPAN style="COLOR: #a31515"&gt;x&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;Name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="&lt;B style="mso-bidi-font-weight: normal"&gt;txtFortune&lt;/B&gt;"&lt;/SPAN&gt; /&amp;gt;&lt;SPAN style="COLOR: blue"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;10&lt;/SPAN&gt;: XAML.xml&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-bidi-font-family: 'Courier New'"&gt;In the XamlSource&lt;/SPAN&gt; Servlet,&lt;SPAN style="COLOR: #a31515; mso-no-proof: yes; mso-bidi-font-family: 'Courier New'"&gt; XPATH&lt;/SPAN&gt;&lt;SPAN style="mso-bidi-font-family: 'Courier New'"&gt; is used to define the &lt;SPAN style="COLOR: #a31515; mso-no-proof: yes"&gt;XPATH&lt;/SPAN&gt; address, find the node and then change the node value. &lt;/SPAN&gt;The article &lt;/FONT&gt;&lt;/FONT&gt;&lt;A href="http://www.javabeat.net/tips/xml/2007/05/how-to-query-xml-using-xpath/" mce_href="http://www.javabeat.net/tips/xml/2007/05/how-to-query-xml-using-xpath/"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;How to Query XML&amp;nbsp;using XPath&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;gives an in depth explanation of querying XPath. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;FONT face=Calibri size=3&gt;The XamlSource servlet is then included in the JSP:&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 6.65in; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=638 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 6.65in; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=638&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-outline-level: 3"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="mso-bidi-font-family: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&amp;lt;script "text/xaml" id="xamlContent"&amp;gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="mso-bidi-font-family: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&amp;lt;jsp:include page="/XamlSource" flush="false" &amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="mso-bidi-font-family: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;jsp:param name="seed" value="&amp;lt;%=strSeed%&amp;gt;" /&amp;gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="mso-bidi-font-family: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&amp;lt;/jsp:include&amp;gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="mso-bidi-font-family: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&amp;lt;/script&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;11&lt;/SPAN&gt;: Silverlight-Java with Silverlight Content Dynamically Generated at Runtime within a Java EE 5 JSP.jsp&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="mso-bidi-font-family: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Here the seed “5” is placed on the Magic 8 Ball and the txtFortune value is &lt;SPAN style="COLOR: blue; mso-no-proof: yes"&gt;"Don’t count on it":&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-outline-level: 3"&gt;&lt;v:shape id=Picture_x0020_14 style="MARGIN-TOP: 10.95pt; Z-INDEX: -1; VISIBILITY: visible; MARGIN-LEFT: 3pt; WIDTH: 123.75pt; POSITION: absolute; HEIGHT: 104.25pt; mso-wrap-style: square; mso-wrap-distance-left: 9pt; mso-wrap-distance-top: 0; mso-wrap-distance-right: 9pt; mso-wrap-distance-bottom: 0; mso-position-horizontal: absolute; mso-position-horizontal-relative: text; mso-position-vertical: absolute; mso-position-vertical-relative: text" type="#_x0000_t75" o:spid="_x0000_s1026" wrapcoords="-262 0 -262 21445 21731 21445 21731 0 -262 0"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;v:imagedata mce_src="file:///C:\Users\robbel\AppData\Local\Temp\msohtmlclip1\01\clip_image004.png" o:title="clip_image001" src="file:///C:\Users\robbel\AppData\Local\Temp\msohtmlclip1\01\clip_image004.png"&gt;&lt;/v:imagedata&gt;&lt;?xml:namespace prefix = w ns = "urn:schemas-microsoft-com:office:word" /&gt;&lt;w:wrap type="tight"&gt;&lt;/w:wrap&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/v:shape&gt;&lt;SPAN style="COLOR: blue; mso-no-proof: yes; mso-bidi-font-family: 'Courier New'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; LINE-HEIGHT: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-outline-level: 3"&gt;&lt;SPAN style="COLOR: blue; mso-no-proof: yes; mso-bidi-font-family: 'Courier New'"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;IMG title="Magic 8 Ball" style="WIDTH: 169px; HEIGHT: 143px" height=143 alt="Magic 8 Ball" src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675260/original.aspx" width=169 align=left mce_src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675260/original.aspx"&gt;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue; mso-no-proof: yes; mso-bidi-font-family: 'Courier New'"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/H2&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/H2&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/H2&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/H2&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/H2&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;Silverlight Client Application communicating with a Java Application Server Scenarios&lt;/FONT&gt;&lt;/H2&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 6.65in; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=638 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 6.65in; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=638&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoCommentText style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 11pt"&gt;&lt;FONT face=Calibri&gt;To prevent cross-site request forgery, Silverlight only allows site-of-origin communication by default for all requests other than images and media. However, cross-domain services can explicitly opt-in, allowing the Silverlight control to access a service in another domain. This is supported through the use of a ‘clientaccesspolicy.xml’ file on the service endpoint.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;FONT face=Calibri size=3&gt;Since domain boundaries are crossed in these scenarios, the Silverlight ‘clientaccesspolicy.xml’ file is placed in the document root directory of the Java web server to make the service available. For more information on domain boundaries see: &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/cc197955(VS.95).aspx" mce_href="http://msdn.microsoft.com/en-us/library/cc197955(VS.95).aspx"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Make a Service Available Across Domain Boundaries&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;Plain Old XML (POX) Service&lt;/FONT&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;A POX service is a very simple service where a query parameter is sent on the request to a servlet, the parameter is processed, and then an XML response is returned. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;This type of service is simple to implement, however the expected request and response format must be explicitly provided by the POX service creator. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;IMG title="POX Service" style="WIDTH: 425px; HEIGHT: 246px" height=246 alt="POX Service" src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675263/425x246.aspx" width=425 align=left mce_src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675263/425x246.aspx"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;12&lt;/SPAN&gt;: POX Service&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;The request parameter passed to the Magic8Ball Servlet is used to lookup a matching value that is then used to create a POX response:&lt;/SPAN&gt;&lt;SPAN style="mso-bidi-font-family: 'Courier New'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 432.9pt; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=577 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 432.9pt; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=577&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;out.println("&amp;lt;xml&amp;gt;");&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;out.println("&amp;lt;value v='" + getFortune(nSeed) + "' /&amp;gt;");&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;out.println("&amp;lt;/xml&amp;gt;");&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Calibri&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;13&lt;/SPAN&gt;: PoxService.java&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 432.9pt; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=577 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 432.9pt; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=577&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;FONT color=#990000&gt;xml&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;&lt;FONT color=#0000ff&gt;&amp;gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt; &lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt;value&lt;/FONT&gt;&lt;/SPAN&gt; &lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt;v&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;="&lt;/FONT&gt;&lt;/SPAN&gt;&lt;B&gt;Most likely&lt;/B&gt;&lt;SPAN class=m1&gt;&lt;FONT color=#0000ff&gt;" /&amp;gt;&amp;lt;/&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=t1&gt;&lt;FONT color=#990000&gt;xml&lt;/FONT&gt;&lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=m1&gt;&amp;gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;14&lt;/SPAN&gt;: Response from the PoxServlet&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The XML response is consumed by the Silverlight application and rendered in the Silverlight control: &lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 432.9pt; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=577 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 432.9pt; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=577&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;TextBlock&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;...&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;Text&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;="Fortune"&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;Name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;="txtFortune"&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;.../&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;TextBlock&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;...&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;Text&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; ="8" &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;Name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; ="txtMagic8Ball" .../&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;15&lt;/SPAN&gt;: Page.xaml&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;WebClient is used to access the Magic8Ball URI. Then, in the DownloadStringCompleted event, the XML result is parsed with LINQ (Language Integrated Query). &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/netframework/aa904594.aspx" mce_href="http://msdn.microsoft.com/en-us/netframework/aa904594.aspx"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Language Integrated Query (LINQ)&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;is general-purpose query facilities to the .NET Framework that apply to all sources of information; in this case the “SQL-like” LINQ-to-XML is used.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 432.9pt; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=577 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 432.9pt; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=577&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #2b91af; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;String&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; strValue = &lt;SPAN style="COLOR: #a31515"&gt;""&lt;/SPAN&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #2b91af; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;XDocument&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; xReturn = &lt;SPAN style="COLOR: #2b91af"&gt;XDocument&lt;/SPAN&gt;.Parse(e.Result);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;//Language Integrated Query (LINQ)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #2b91af; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;IEnumerable&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&amp;lt;&lt;SPAN style="COLOR: #2b91af"&gt;XElement&lt;/SPAN&gt;&amp;gt; list1 =&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;from&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; element &lt;SPAN style="COLOR: blue"&gt;in&lt;/SPAN&gt; xReturn.Descendants(&lt;SPAN style="COLOR: #a31515"&gt;"value"&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;select&lt;/SPAN&gt; element;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;foreach&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; (&lt;SPAN style="COLOR: #2b91af"&gt;XElement&lt;/SPAN&gt; element &lt;SPAN style="COLOR: blue"&gt;in&lt;/SPAN&gt; list1)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;strValue = element.Attribute(&lt;SPAN style="COLOR: #a31515"&gt;"v"&lt;/SPAN&gt;).Value;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;16&lt;/SPAN&gt;: Page.xaml.cs &lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;The Result value is bound to the XAML TextBlock in the “&lt;/FONT&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;txtFortune.Text = strValue;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'"&gt;” &lt;/SPAN&gt;&lt;FONT face=Calibri size=3&gt;line in Page.xaml.cs.&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 432.9pt; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=577 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 432.9pt; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=577&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;//Bind the value to the XAML TextBlock&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;txtFortune.Text = strValue;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;16&lt;/SPAN&gt;: Page.xaml.cs &lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;SOAP Web Service&lt;/FONT&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;The web services standards, defined by the &lt;/FONT&gt;&lt;A href="http://www.ws-i.org/" mce_href="http://www.ws-i.org/"&gt;&lt;FONT face=Calibri size=3&gt;Web Services Interoperability Organization (WS-I )&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;,&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;are based on &lt;/FONT&gt;&lt;A href="http://www.w3.org/TR/2000/NOTE-SOAP-20000508/" mce_href="http://www.w3.org/TR/2000/NOTE-SOAP-20000508/"&gt;&lt;FONT face=Calibri size=3&gt;Simple Object Access Protocol (SOAP)&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;; SOAP is an XML based protocol that allows messages to be passed over HTTP/HTTPS.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;W3C has a &lt;/FONT&gt;&lt;A href="http://www.w3.org/TR/ws-arch/" mce_href="http://www.w3.org/TR/ws-arch/"&gt;&lt;FONT face=Calibri size=3&gt;Web Services Architecture&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; document that lays the foundation for SOAP web services. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;If a SOAP web service already exists, it is fairly straightforward to create a proxy for that web service, then utilize that web service&amp;nbsp;in Visual Studio.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;One must caution that the use of complex data types in a web service can be problematic, especially in Java-.NET interoperability scenarios. Java SOAP web service data types should map to the .NET &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms531031.aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms531031.aspx"&gt;&lt;FONT face=Calibri size=3&gt;supported data types&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; .&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;Debugging web services can also be problematic. Tools like the &lt;/FONT&gt;&lt;A href="http://www.fiddlertool.com/fiddler/version.asp" mce_href="http://www.fiddlertool.com/fiddler/version.asp"&gt;&lt;FONT face=Calibri size=3&gt;Fiddler&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; web debugging proxy or the &lt;/FONT&gt;&lt;A href="http://projects.nikhilk.net/WebDevHelper/" mce_href="http://projects.nikhilk.net/WebDevHelper/"&gt;&lt;FONT face=Calibri size=3&gt;Web Development Helper&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; can be useful in debugging web services. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;IMG title="SOAP web service" style="WIDTH: 425px; HEIGHT: 241px" height=241 alt="SOAP web service" src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675271/425x241.aspx" width=425 align=left mce_src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675271/425x241.aspx"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;17&lt;/SPAN&gt;: SOAP web service&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;A proxy is created in Visual Studio for the Java SOAP web service endpoint. The web service call passes in a request parameter and then receives the web service response. The web service response (String) is bound to the XAML, which in turn is rendered on the Silverlight control.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;IMG title="JavaServiceReference proxy reference" style="WIDTH: 209px; HEIGHT: 207px" height=207 alt="JavaServiceReference proxy reference" src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675407/original.aspx" width=209 align=left mce_src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675407/original.aspx"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;18&lt;/SPAN&gt;: JavaServiceReference proxy reference&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;Silverlight does not have WS-* support beyond WS-I Basic Profile, “but it is still possible to consume services that use these protocols by manually implementing the required protocol” (&lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/cc197959(VS.95).aspx" mce_href="http://msdn.microsoft.com/en-us/library/cc197959(VS.95).aspx"&gt;&lt;FONT face=Calibri size=3&gt;Accessing SOAP Services&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;). WS-I Basic Profile 1.0 and SOAP 1.1 over HTTP are supported. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Be aware that SOAP faults throw an exception on the client but do not specify information about the fault that occurred.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;Syndication (RSS) Feed Service&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: auto 0in"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;EM&gt;S&lt;/EM&gt;yndication is most often used to where a subscriber subscribes to syndicated feed content such as a podcast. This scenario shows how to bring syndicated content titles into a Silverlight client.&lt;/FONT&gt;&lt;/FONT&gt; 
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;SPAN style="mso-no-proof: yes"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;IMG title="Syndication Service" style="WIDTH: 425px; HEIGHT: 241px" height=241 alt="Syndication Service" src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675225/425x241.aspx" width=425 align=left mce_src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8675225/425x241.aspx"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/STRONG&gt; 
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoCaption style="MARGIN: 0in 0in 10pt"&gt;&lt;STRONG&gt;&lt;FONT face=Calibri color=#4f81bd&gt;Figure &lt;SPAN style="mso-no-proof: yes"&gt;19&lt;/SPAN&gt;: Syndication Feed Service&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;A simple RSS 2.0 syndication feed is created in the RssProducer Servlet. The Silverlight control reads the feed into and XmlReader and renders the results in three lines of code:&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #2b91af; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;XmlReader&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; r = &lt;SPAN style="COLOR: #2b91af"&gt;XmlReader&lt;/SPAN&gt;.Create(e.Result);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 432.9pt; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=577 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 432.9pt; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=577&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Construct the SyndicationFeed using the XmlReader (containing the RSS feed)&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #2b91af; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;SyndicationFeed&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; feed = &lt;SPAN style="COLOR: #2b91af"&gt;SyndicationFeed&lt;/SPAN&gt;.Load(r);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 432.9pt; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=577 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 432.9pt; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=577&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Bind the collection of RSS results to an ItemsControl (see Page.xaml)&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;_itemTitles.ItemsSource = feed.Items;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;TABLE class=MsoTableGrid style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; WIDTH: 432.9pt; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse; mso-border-alt: dashed windowtext .5pt; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-insideh: .5pt dashed windowtext; mso-border-insidev: .5pt dashed windowtext" cellSpacing=0 cellPadding=0 width=577 border=1 class="MsoTableGrid"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes; mso-yfti-lastrow: yes"&gt;
&lt;TD class="" style="BORDER-RIGHT: windowtext 1pt dashed; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt dashed; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: windowtext 1pt dashed; WIDTH: 432.9pt; PADDING-TOP: 0in; BORDER-BOTTOM: windowtext 1pt dashed; BACKGROUND-COLOR: transparent; mso-border-alt: dashed windowtext .5pt" vAlign=top width=577&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;FONT face=Calibri size=3&gt;For a good Silverlight Quick Start overview of syndication refer to &lt;/FONT&gt;&lt;A href="http://silverlight.net/Quickstarts/Remote/ed86e719-0da0-49e1-a9e1-b31f483070d4.aspx" mce_href="http://silverlight.net/Quickstarts/Remote/ed86e719-0da0-49e1-a9e1-b31f483070d4.aspx"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Accessing Syndication Feeds with Silverlight&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;H1 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;Summary&lt;/FONT&gt;&lt;/H1&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt; TEXT-ALIGN: justify; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="COLOR: black; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT face=Calibri size=3&gt;The pdf for the TS-6373 JavaOne session is &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://developers.sun.com/learning/javaoneonline/j1sessn.jsp?sessn=TS-6373&amp;amp;yr=2008&amp;amp;track=nextweb" mce_href="http://developers.sun.com/learning/javaoneonline/j1sessn.jsp?sessn=TS-6373&amp;amp;yr=2008&amp;amp;track=nextweb"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;here&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="COLOR: black; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt; and the &lt;/SPAN&gt;updated “&lt;SPAN style="COLOR: black; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;Silverlight 2 beta 2” &lt;/SPAN&gt;source code will be made available in a future blog post. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;FONT face=Calibri size=3&gt;In conclusion, there are a number of supported Silverlight-Java interoperability scenarios that are useful to consider. The most powerful of these involve the creation of a Silverlight application using Visual Studio .NET.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The SOAP web service scenario represents the most useful scenario for multi-tier ‘hybrid’ solution scenarios that have a strong investment in a Java middle tier, but wish to leverage the great features of Silverlight as a rich, cross-browser, cross-platform user interface&lt;/FONT&gt;&lt;/P&gt;
&lt;H1 style="MARGIN: auto 0in"&gt;&lt;FONT face="Times New Roman"&gt;Resources:&lt;/FONT&gt;&lt;/H1&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;Community Site: &lt;/FONT&gt;&lt;A href="http://silverlight.net/" mce_href="http://silverlight.net/"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;http://Silverlight.net&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;Main Product Site: &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/Silverlight" mce_href="http://www.microsoft.com/Silverlight"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;http://www.microsoft.com/Silverlight&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;MSDN Center: &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/Silverlight" mce_href="http://msdn.microsoft.com/Silverlight"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;http://msdn.microsoft.com/Silverlight&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;FONT face=Calibri size=3&gt;Online Forums: &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://silverlight.net/forums" mce_href="http://silverlight.net/forums"&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;http://Silverlight.net/forums&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;FONT face=Calibri size=3&gt;Online SDK: &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://msdn2.microsoft.com/bb188266.aspx" mce_href="http://msdn2.microsoft.com/bb188266.aspx"&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;http://msdn2.microsoft.com/bb188266.aspx&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;Tim Sneath’s blog: &lt;/FONT&gt;&lt;A href="http://blogs.msdn.com/tims" mce_href="http://blogs.msdn.com/tims"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;http://blogs.msdn.com/tims&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;Mike Harsh’s blog: &lt;/FONT&gt;&lt;A href="http://blogs.msdn.com/mharsh" mce_href="http://blogs.msdn.com/mharsh"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;http://blogs.msdn.com/mharsh&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;FONT face=Calibri size=3&gt;Joe Stegman’s blog: &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://blogs.msdn.com/jstegman" mce_href="http://blogs.msdn.com/jstegman"&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;http://blogs.msdn.com/jstegman&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;Laurence Moroney’s blog: &lt;/FONT&gt;&lt;A href="http://blogs.msdn.com/webnext" mce_href="http://blogs.msdn.com/webnext"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;http://blogs.msdn.com/webnext&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;FONT face=Calibri size=3&gt;Tim Heur’s blog: &lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://timheuer.com/blog/Default.aspx" mce_href="http://timheuer.com/blog/Default.aspx"&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;http://timheuer.com/blog/Default.aspx&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;SPAN lang=DE style="mso-ansi-language: DE"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8675130" width="1" height="1"&gt;</content><author><name>GISVArchitectureTeam</name><uri>http://blogs.msdn.com/members/GISVArchitectureTeam.aspx</uri></author><category term="Silverlight Java Interoperability Web Service SOAP REST Syndication RSS RIA UI XAML" scheme="http://blogs.msdn.com/gisvarchitectureteam/archive/tags/Silverlight+Java+Interoperability+Web+Service+SOAP+REST+Syndication+RSS+RIA+UI+XAML/default.aspx" /></entry><entry><title>Lessons learned migrating UNIX-Favored programming idioms to Windows</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/gisvarchitectureteam/archive/2008/06/13/lessons-learned-migrating-unix-favored-programming-idioms-to-windows.aspx" /><id>http://blogs.msdn.com/gisvarchitectureteam/archive/2008/06/13/lessons-learned-migrating-unix-favored-programming-idioms-to-windows.aspx</id><published>2008-06-14T00:13:00Z</published><updated>2008-06-14T00:13:00Z</updated><content type="html">&lt;SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;Grzegorz shared one of his findings from an architecture review that he did some time ago for a global ISV for a product with components that originated on UNIX. You can read it on his blog &lt;A href="http://blogs.msdn.com/g/archive/2008/06/07/a-finding-from-an-architecture-review-of-a-product-with-components-that-originated-on-unix.aspx"&gt;here&lt;/A&gt;.&lt;/SPAN&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8595009" width="1" height="1"&gt;</content><author><name>GISVArchitectureTeam</name><uri>http://blogs.msdn.com/members/GISVArchitectureTeam.aspx</uri></author></entry><entry><title>How To: ClickOnce deployment for unmanaged app with COM component in managed assembly</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/gisvarchitectureteam/archive/2008/06/13/how-to-clickonce-deployment-for-unmanaged-app-with-com-component-in-managed-assembly.aspx" /><id>http://blogs.msdn.com/gisvarchitectureteam/archive/2008/06/13/how-to-clickonce-deployment-for-unmanaged-app-with-com-component-in-managed-assembly.aspx</id><published>2008-06-14T00:10:00Z</published><updated>2008-06-14T00:10:00Z</updated><content type="html">&lt;SPAN style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;Grzegorz, one of Senior Solutions Architects on our team, recently worked with a global ISV in Europe on re-architecting some of their products from competitive platforms to Microsoft platform and he plans to write some posts on solutions architecture related to this engagement. But first, he posted a sample that he developed for this ISV that demonstrates ClickOnce deployment of Delphi-based app with COM component implemented in managed assembly without using GAC or Registry, and without requiring admin rights. You can read about it on his blog &lt;A href="http://blogs.msdn.com/g/archive/2008/06/06/sample-demonstrating-clickonce-deployment-of-com-component-implemented-in-managed-assembly-without-using-gac-or-registry-and-without-requiring-admin-rights.aspx"&gt;&lt;FONT color=#800080&gt;here&lt;/FONT&gt;&lt;/A&gt; and about some gotchas &lt;A href="http://blogs.msdn.com/g/archive/2008/06/07/more-on-clickonce-deployment-of-com-component-implemented-in-managed-assembly-without-using-gac-or-registry-and-without-requiring-admin-rights.aspx"&gt;&lt;FONT color=#800080&gt;here&lt;/FONT&gt;&lt;/A&gt;.&lt;/SPAN&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8595003" width="1" height="1"&gt;</content><author><name>GISVArchitectureTeam</name><uri>http://blogs.msdn.com/members/GISVArchitectureTeam.aspx</uri></author></entry><entry><title>Biztalk Reference Architecture: Composite Application Engine</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/gisvarchitectureteam/archive/2008/06/13/biztalk-reference-architecture-composite-application-engine.aspx" /><id>http://blogs.msdn.com/gisvarchitectureteam/archive/2008/06/13/biztalk-reference-architecture-composite-application-engine.aspx</id><published>2008-06-13T18:50:00Z</published><updated>2008-06-13T18:50:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Hello, I’m Charles (Charley) Fichter , a Snr. Solutions Architect on the GISV Architecture team. Thanks for dropping by our team blog.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;We’ve seen an uptick in interest for &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/biztalk/default.aspx" mce_href="http://msdn.microsoft.com/en-us/biztalk/default.aspx"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Microsoft Biztalk Server&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; in recent months. This may be due to the new Microsoft Biztalk Server 2006 R2 release last November, 07 and many of the feature enhancements, strong adoption from our medium and enterprise customer base driving demand for Biztalk-based solutions, as well as the new embedded Biztalk offerings on the ISV royalty licensing program (please contact your Microsoft account rep for more information). In most scenarios, the ISV is utilizing Biztalk for its most common implementation as a central integration server (commonly referred to as ‘EAI’ – Enterprise Application Integration), providing application integration via orchestrations and data transformations.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;There is one scenario that is very different, however, where Biztalk is used as a centralized data communication hub for disparate client applications, in a way more like a composite-application engine.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This approach is worthy of examining deeper, as it solves many common problems ISVs run into when trying to unify communication between a broad suite of applications.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;This ‘composite application’ scenario has many challenges. In one specific case, an ISV acquired a market-leader client application with its own isolated, client-side data store that needed to be folded into an existing legacy composite application suite with its own local data store. In the past, manual data integration using export data functions from both the new application and the composite application was how end customers merged vital business data. Several significant problems arose with this ‘sneaker-net’ approach, however. Volatility of the data was at risk as usually the data extracts were passed around via DVD burns from client laptops. Additionally, the different client applications had slightly differing business rules and calculation engines, requiring complex transformations to import the data properly.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Worse yet, once the data was imported into either system, there was no effective way to know where specific business processes were on a timeline – in other words, they couldn’t accurately make decisions on the data for the next course of action. The result was an overly complex and frail data communication strategy that was largely dependent upon lengthy phone calls back and forth between data users, explaining the data and what the next course of action should be from result sets.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;The over-arching goal was to bring all the applications into a ‘suite’, where consistent look and feel, behavior, and a centralized data store was achieved, while minimizing the amount of re-write needed in the client applications. In addition, they realized they needed some form of integration engine that would guarantee and coordinate data messages between the applications in a specific order, alert supervisory monitors when critical events occurred, notify all consuming applications at what stage each business process was at, and what the next steps would be. They also had diverse message formats to synchronize, as some data was exportable in relational format, but some production system data came in XML documents or web service calls. Taking all of these considerations into account, they quickly saw the value of Biztalk server in its ability to handle all of these requirements. Each application could originate a business operation, and other applications in the suite would be notified (or the subscribing applications check a central repository for any new business operations they care about, either by user action in the client or automated via time checks) and could enlist as a subscriber to the Biztalk orchestration.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Thereby each application would receive the identical update of status, insuring consistency, and further, supervisory consoles, through use of&lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/aa561137.aspx" mce_href="http://msdn.microsoft.com/en-us/library/aa561137.aspx"&gt;&lt;FONT face=Calibri size=3&gt; Biztalk Server’s Business Activity Monitor&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;, allow interrogation of operation status and provide the ability to initiate action to alter the process if necessary. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;The illustration below shows a logical representation of workflow initiation and subscribe/publish behavior to consuming applications and supervisory monitoring:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;IMG title="Reference Architecture" style="WIDTH: 800px; HEIGHT: 600px" height=600 alt="Reference Architecture" src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8594663/original.aspx" width=800 align=absMiddle mce_src="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8594663/original.aspx"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;(&lt;A class="" title="(click here for larger image)" href="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8594663/original.aspx" mce_href="http://blogs.msdn.com/photos/gisvarchitectureteam/images/8594663/original.aspx"&gt;click here for a larger&amp;nbsp;version of the image)&lt;/A&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;Choosing a communication strategy to hook all of the applications into the central Biztalk hub was solved by standardizing on &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms735119.aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms735119.aspx"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;Windows Communication Foundation (WCF)&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; as the framework for service-boundary communication.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Because an effort was needed to decouple the acquisition application and the composite applications from their stand-alone data sources, service layer boundaries were identified and data access components were modified to address WCF endpoints – both within and across machine boundaries for synchronous or asynchronous calls utilizing a custom &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms729840.aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms729840.aspx"&gt;&lt;FONT face=Calibri size=3&gt;WCF channel factory&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; and a &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms789027.aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms789027.aspx"&gt;&lt;FONT face=Calibri size=3&gt;WCF channel listener&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Using Biztalk 2006 R2 and the new &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=a976dc7d-2296-4f88-be4d-0d314fca9e59&amp;amp;displaylang=en&amp;amp;tm" mce_href="http://www.microsoft.com/downloads/details.aspx?familyid=a976dc7d-2296-4f88-be4d-0d314fca9e59&amp;amp;displaylang=en&amp;amp;tm"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;WCF Adapters for Biztalk&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; provided the opportunity to unify message patterns across applications and machine boundaries in-proc. In previous versions of Biztalk Server, the web-service implementation utilized an IIS host and ran out of process with the Biztalk server process. With the new adapter model in BTS2006R2 and the WCF Adapter, the exposed WCF adapter (receive port) runs in process with the Biztalk Server process, and avoids the overhead of excessive IIS service resource demands and marshalling across process boundaries. This provides obvious benefits for scaling when you consider the frequency of these operations with load. In addition, Biztalk server allows logical grouping of machine installations, so that end customers can simply deploy additional machines into a Biztalk group, and load balancing, guaranteed messaging and fault tolerance is automatically inherent and managed by the Biztalk group. If one machine node fails, any other machine can pick up an orchestration process directly where the last execution was handled and continue the processing.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The infrastructure required by ISVs to deliver this quality of service within their own application suite is onerous, and combined with Biztalk’s ability to handle diverse message formats easily and the available pre-built adapters packs provided out-of-box and available through 3&lt;SUP&gt;rd&lt;/SUP&gt; party partners makes Biztalk an easy adoption choice.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;Adopting Biztalk Server as a central hub in this way did pose a challenge for a small portion of the ISV customer base that either 1) only wanted client-only solutions, or 2) opposed Biztalk server because the customer already had some other integration product or different strategy. The ISV also was concerned about the sometimes complex configuration and deployment challenges that accompany a Biztalk server deployment. The ISV decided to leverage Microsoft’s new &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/windowsserver2008/en/us/virtualization-consolidation.aspx" mce_href="http://www.microsoft.com/windowsserver2008/en/us/virtualization-consolidation.aspx"&gt;&lt;FONT face=Calibri size=3&gt;Hyper-V virtualization engine&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; to virtualize the entire server-based Biztalk deployment. A challenge here was end customer requirements varied greatly for production support systems (ie; different anti-virus software, machine configuration requirements for security, etc).&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;To solve this, the ISV will be providing&amp;nbsp;pre-built answer files and full scripts for &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/windowsserver2008/en/us/default.aspx" mce_href="http://www.microsoft.com/windowsserver2008/en/us/default.aspx"&gt;&lt;FONT face=Calibri size=3&gt;Windows Server 2008&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; parent Hyper-V machine build (when Hyper-V ships), Windows Server 2003 host VM (Biztalk Server does not support Win2008 until R3 release, &lt;FONT size=2&gt;&lt;A href="http://blogs.msdn.com/stevemar/archive/2008/04/23/biztalk-server-platform-updates.aspx"&gt;http://blogs.msdn.com/stevemar/archive/2008/04/23/biztalk-server-platform-updates.aspx&lt;/A&gt;&amp;nbsp;&lt;/FONT&gt;)&amp;nbsp;SQL Server, and Biztalk Server installation and deployment.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;The ISV also needed to solve a requirement for providing offline storage for the entire suite, while preserving access to vital calculation engine rules.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;They achieved this by utilizing the &lt;/FONT&gt;&lt;A href="http://www.microsoft.com/sql/editions/express/default.mspx" mce_href="http://www.microsoft.com/sql/editions/express/default.mspx"&gt;&lt;FONT face=Calibri size=3&gt;Microsoft SQL Server 2005 Express Edition&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; for storing data locally on each users workstation/laptop, and then designed a synchronization strategy using the &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/sync/default.aspx" mce_href="http://msdn.microsoft.com/en-us/sync/default.aspx"&gt;&lt;FONT face=Calibri size=3&gt;Microsoft &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Sync Framework&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; for ADO.NET.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;o:p&gt;Freel free post&amp;nbsp;any questions/comments.&amp;nbsp; Thanks for dropping in!&amp;nbsp;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8594624" width="1" height="1"&gt;</content><author><name>GISVArchitectureTeam</name><uri>http://blogs.msdn.com/members/GISVArchitectureTeam.aspx</uri></author><category term="Biztalk" scheme="http://blogs.msdn.com/gisvarchitectureteam/archive/tags/Biztalk/default.aspx" /></entry><entry><title>Interesting Exception with CRM 4.0 Custom Security Roles and Reporting</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/gisvarchitectureteam/archive/2008/06/02/interesting-exception-with-crm-4-0-custom-security-roles-and-reporting.aspx" /><id>http://blogs.msdn.com/gisvarchitectureteam/archive/2008/06/02/interesting-exception-with-crm-4-0-custom-security-roles-and-reporting.aspx</id><published>2008-06-03T00:33:00Z</published><updated>2008-06-03T00:33:00Z</updated><content type="html">&lt;P&gt;Trent worked through an interesting issue with CRM 4.0 reporting&amp;nbsp;throwing a "CRM_CalendarType parameter is missing a value"&amp;nbsp;exception for users of a custom role.&amp;nbsp; You can find more details on his BLOG entry here (&lt;A href="http://www.trentswanson.com/post/2008/03/CRM-40-CRM_CalendarType-parameter-is-missing-a-value.aspx"&gt;http://www.trentswanson.com/post/2008/03/CRM-40-CRM_CalendarType-parameter-is-missing-a-value.aspx&lt;/A&gt;).&amp;nbsp; Aparantly, reporting in CRM 4.0 works against iltered views that are security trimmed based on the priveleges and roles assinged to a CRM user.&amp;nbsp; Some of the reports select user settings to be used in subsequent queries, such as "CRM_CalendarType" in this case the user does not have access to settings and the value is then missing.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8570358" width="1" height="1"&gt;</content><author><name>GISVArchitectureTeam</name><uri>http://blogs.msdn.com/members/GISVArchitectureTeam.aspx</uri></author><category term="CRM" scheme="http://blogs.msdn.com/gisvarchitectureteam/archive/tags/CRM/default.aspx" /></entry><entry><title>Software + Services - Opportunities and Challenges for Global ISVs</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/gisvarchitectureteam/archive/2008/06/02/software-services-opportunities-and-challenges-for-global-isvs.aspx" /><id>http://blogs.msdn.com/gisvarchitectureteam/archive/2008/06/02/software-services-opportunities-and-challenges-for-global-isvs.aspx</id><published>2008-06-02T22:32:00Z</published><updated>2008-06-02T22:32:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;FONT face=Calibri size=3&gt;A number of the GISVs we work with have been listening to the ‘&lt;/FONT&gt;&lt;A href="http://www.microsoft.com/softwareplusservices/"&gt;&lt;FONT face=Calibri size=3&gt;Software + Services (S+S&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;)’ strategy that Microsoft has been spearheading, and have themselves embarked on creating hosted versions of their solutions. I have been assisting some of these GISVs on their S+S efforts, and I thought it would be useful to share some key ISV-specific learning and resources that may be helpful to you in your endeavors. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;FONT face=Calibri size=3&gt;Today, most of our larger GISV partners produce products targeted to the enterprise space – that is, they are feature rich, highly customizable, and installed and deployed &lt;B style="mso-bidi-font-weight: normal"&gt;on-premise &lt;/B&gt;(e.g. within customer environments). However, there are various customer segments that are very interested in those products, but will not adopt a large, on-premise solution due to a variety of reasons - infrastructure cost and complexity, large long term licensing costs, and significant implementation times – to name just a few.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;FONT face=Calibri size=3&gt;Microsoft has been at the forefront of advancing the notion of hosted or ‘cloud-based’ solutions with its ‘&lt;/FONT&gt;&lt;A href="http://www.microsoft.com/softwareplusservices/"&gt;&lt;FONT face=Calibri size=3&gt;Software + Services (S+S)&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;’ approach. This approach embodies &lt;SPAN style="COLOR: black"&gt;a confluence of multiple industry phenomena including Software as a Service (&lt;/SPAN&gt;&lt;B&gt;&lt;SPAN style="COLOR: #336699; mso-bidi-font-family: Arial"&gt;SaaS)&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="COLOR: black"&gt;, Service-Oriented Architecture (&lt;/SPAN&gt;&lt;B&gt;&lt;SPAN style="COLOR: #336699; mso-bidi-font-family: Arial"&gt;SOA)&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="COLOR: black"&gt;, and &lt;/SPAN&gt;&lt;B&gt;&lt;SPAN style="COLOR: #336699; mso-bidi-font-family: Arial"&gt;Web 2.0&lt;/SPAN&gt;&lt;/B&gt;&lt;SPAN style="COLOR: black"&gt;. While different vendors are evolving their offerings from different starting points, the entire industry is converging on the S+S approach.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0in 0pt 10.1pt"&gt;&lt;FONT face=Cambria color=#4f81bd size=4&gt;ISV Challenges with S+S&lt;/FONT&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;FONT face=Calibri size=3&gt;GISVs that are adopting an S+S approach are usually faced with an interesting dichotomy. On one hand, their solutions are typically the most capable, feature-rich software products available (because ‘global’ ISVs usually target medium to large enterprises), which would suggest they have a lot of great IP that many smaller enterprises would love, and could be leveraged into an S+S offering. But the dichotomy is that, because of this traditional customer base, the entire product architecture and deployment approach is usually fundamentally geared toward an on-premise model. As I’ll describe below, there are some key differences between on-premise and S+S solutions that GISVs need to be aware of when contemplating a move to S+S.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0in 0pt 10.1pt"&gt;&lt;FONT face=Cambria color=#4f81bd size=4&gt;Key Differences between On-Premise and S+S Hosted Solutions&lt;/FONT&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;FONT face=Calibri size=3&gt;There are some key solution aspects which are markedly different between on-premise and S+S solution approaches. These are worth highlighting, in order to help you understand what may be involved in moving to an S+S offering. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;H3 style="MARGIN: 10pt 0in 0pt 10.1pt"&gt;&lt;FONT face=Cambria color=#4f81bd size=3&gt;Multi-Tenancy&lt;/FONT&gt;&lt;/H3&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 28.1pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 28.1pt"&gt;&lt;FONT face=Calibri size=3&gt;S+S solutions are fundamentally based on the notion of supporting multiple customers (tenants) within a shared set of resources (e.g. multiple customers running on one hosted web server, database, code version, etc). On-premise solutions, however, have (by definition) one ‘tenant’, and typically allow significant customized code, DB schema, UI elements, etc. Support for multi-tenancy is typically one of the most significant aspects that must be considered and supported in GISV solutions moving to S+S. There are a number of different approaches to multi-tenancy at the data tier, application tier, etc. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 28.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 28.1pt"&gt;&lt;FONT face=Calibri size=3&gt;Fundamentally, there are two key dimensions to multi-tenancy:&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 28.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 46.1pt; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level1 lfo1"&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Approach&lt;/B&gt;. Multi-tenancy can be fundamentally implemented in two ways: &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 82.1pt; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level2 lfo1"&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;o&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Within&lt;/B&gt;. Implementation &lt;I style="mso-bidi-font-style: normal"&gt;within &lt;/I&gt;the solution can be changed to be made multi-tenant aware (e.g. DB tables may have a ‘tenant’ column added, or middle tier services may be modified to load tenant-specific meta-data to allow for tenant-specific processing). The advantage to this approach is efficiency and reuse of implementation and resources – the same code, DB tables, UI components, etc. are shared across all tenants. One disadvantage is that it may take considerable modifications to applications, DBs, etc. to incorporate multi-tenancy. Additionally, per-tenant customization approaches usually need to be changed. Code-based customization needs to be severely limited (shared code base across tenants), and per-tenant customization usually needs to be modified to be more meta-data (configuration) driven.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 82.1pt; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level2 lfo1"&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;o&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Around&lt;/B&gt;. Implementation is isolated or ‘wrapped’ to be made multi-tenant supportive (e.g. virtualization used to create per-tenant images). The advantage to this approach is that it doesn’t require modification of existing single-tenant code – the multi-tenancy is managed by ‘wrapping’ it inside an isolation boundary (the virtualization image). The disadvantages to this approach are that virtualization may not provide the best performance for high # of concurrent tenants/users/processes, and virtualization introduces additional technologies around creation of images, deployment, tooling, monitoring, etc. The other thing to mention is that, while virtualization would allow for code-level customizations on a per-tenant basis, implementing and managing N-versions of custom applications in this case could lead to a maintenance nightmare… so it’s still ultimately better to try and reduce code-level customization and instead move to more a configuration/meta-data based approach.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 46.1pt; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l1 level1 lfo1"&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Tier. &lt;/B&gt;Different tiers can take different multi-tenancy approaches.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;For instance, the middle ‘business process’ tier can be multi-tenant aware (as above), while the data tier might have separate DB’s for each tenant (and not require any adjustment of DB table schemas).&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 0pt 46.1pt; mso-add-space: auto"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;H3 style="MARGIN: 10pt 0in 0pt 10.1pt"&gt;&lt;FONT face=Cambria color=#4f81bd size=3&gt;Scale&lt;/FONT&gt;&lt;/H3&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 28.1pt"&gt;&lt;FONT face=Calibri size=3&gt;For on-premise solutions, application performance and scaling is a function of the customers own hardware, resources, etc, and it impacts them only if/when issues arise. Dedicated hardware, DB servers, etc are usually the norm for enterprise solutions. Also, the # of concurrent users and processing is usually considerably less than in a hosted solution that is being accessed/used by 100’s or 1000’s of tenants and their users.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 28.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 28.1pt"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;In an S+S scenario, there can be many tenants (100’s, 1000’s) sharing machine resources, which may take the GISV on-premise solution into a whole new realm of net new scale and perf considerations.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Thus, S+S solutions have to be typically instrumented and monitored/managed better (to provide scale and perf details per tenant) and support per-tenant changes, throttling, etc).&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 28.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;H3 style="MARGIN: 10pt 0in 0pt 10.1pt"&gt;&lt;FONT face=Cambria color=#4f81bd size=3&gt;Hosting&lt;/FONT&gt;&lt;/H3&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 28.1pt"&gt;&lt;FONT face=Calibri size=3&gt;GISVs that today produce on-premise solutions are usually in brand new territory regarding hosting, and often initially suggest that they will ‘self host’. I guess this seems easier in a way (not having to select, and pay a hosting partner)… but, hosting is an entire discipline in itself, requiring specific skill sets, tooling, and of course, infrastructure to host on. There is a great white paper on ISVs and hosting – “&lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/bb891759.aspx"&gt;&lt;FONT face=Calibri size=3&gt;ISVs are from Mars and Hosters are from Venus&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;” which outlines SaaS-specific hosting, and ISV-specific considerations.&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/B&gt;&lt;/P&gt;
&lt;H3 style="MARGIN: 10pt 0in 0pt 10.1pt"&gt;&lt;FONT face=Cambria color=#4f81bd size=3&gt;Configuration and Customization&lt;/FONT&gt;&lt;/H3&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 28.1pt"&gt;&lt;FONT face=Calibri size=3&gt;On-premise software can usually be customized extensively, including modifying or extending source code, database schemas, user interface components, etc. In a multi-tenant hosting situation, all tenants usually run on the same implementation (code base), thus limiting the kinds of customization possible. In the move to an S+S offering, a GISV usually needs to modify their solution to reduce/eliminate code-level customizations, and instead support this via meta-data or configuration. ‘Customization’ by a particular tenant then means modifying or extending their metadata (e.g. extended DB schema, new workflows in XAML, etc). Of course this usually means severely constraining customization capabilities (there are some requirements which will not be supported by the configurability options)&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;FONT face=Calibri size=3&gt;These are just a few of the key areas to consider. There are of course lots of other considerations, and details to follow in future posts. But this is probably a good start.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;FONT face=Calibri size=3&gt;Microsoft provides some great technical resources to assist in understanding about these aspects in detail:&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 46.1pt; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo2"&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri size=3&gt;‘&lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/architecture/aa479069.aspx"&gt;&lt;FONT face=Calibri size=3&gt;Architecture Strategies for Catching the Long Tail’&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; – a core white paper on many aspects of S+S architecture and design&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 46.1pt; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo2"&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/architecture/cc185659.aspx"&gt;&lt;FONT face=Calibri size=3&gt;MSDN Software + Services Architecture center&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; – this location has a lot of great content/guidance on architecting and building S+S solutions.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 46.1pt; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo2"&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="http://www.codeplex.com/LitwareHR/Release/ProjectReleases.aspx?ReleaseId=13174"&gt;&lt;FONT face=Calibri size=3&gt;‘LitwareHR’&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;- Microsoft architects in the Platform Adoption Team have produced a great sample S+S application –with lots of great &lt;/FONT&gt;&lt;/FONT&gt;&lt;A href="http://blogs.msdn.com/gianpaolo/archive/2007/11/21/litwarehr-v2-from-saas-to-s-s.aspx"&gt;&lt;FONT face=Calibri size=3&gt;content/guidance&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; around it.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 46.1pt; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo2"&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/architecture/aa479086.aspx"&gt;&lt;FONT face=Calibri size=3&gt;Multi-tenant Data Architecture&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; – a great white paper on different approaches to multi-tenancy at the data tier, and how those approaches affect performance and scalablility&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 46.1pt; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level1 lfo2"&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri size=3&gt;Key S+S bloggers:&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 82.1pt; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level2 lfo2"&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;o&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="http://blogs.msdn.com/gianpaolo/default.aspx"&gt;&lt;FONT face=Calibri size=3&gt;Gianpaolo Carraro&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; – Director, Platform Adoption Team&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 0pt 82.1pt; TEXT-INDENT: -0.25in; mso-add-space: auto; mso-list: l0 level2 lfo2"&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;o&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="http://blogs.msdn.com/eugeniop/"&gt;&lt;FONT face=Calibri size=3&gt;Eugenio Pace&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt; – Senior Architect, Platform Adoption Team&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8570050" width="1" height="1"&gt;</content><author><name>GISVArchitectureTeam</name><uri>http://blogs.msdn.com/members/GISVArchitectureTeam.aspx</uri></author></entry><entry><title>Welcome to the GISV Architecture Team blog!</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/gisvarchitectureteam/archive/2008/05/28/welcome-to-the-gisv-architecture-team-blog.aspx" /><id>http://blogs.msdn.com/gisvarchitectureteam/archive/2008/05/28/welcome-to-the-gisv-architecture-team-blog.aspx</id><published>2008-05-29T03:36:00Z</published><updated>2008-05-29T03:36:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;FONT face=Calibri size=3&gt;Welcome to the blog of the Global ISV Architecture Team. We are a team of Solutions Architects within the Developer and Platform Evangelism (DPE) team that provide architecture/design assistance to the largest of our Global Independent Software Vendor (GISV) partners. We do deep dive architecture design and review engagements with GISVs to help them to define their solution architecture and design. We work with them through their unique and often complex solution goals, requirements, and constraints, to advise on applicable Microsoft or partner technology choices, make recommendations, and collaboratively define the architecture and design of GISV solutions. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;FONT face=Calibri size=3&gt;This blog is intended to share with you some of the interesting learning and results from our engagements, distilled into a form that (hopefully) you can apply in your own situations. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Since our focus is on ‘Solutions’ (and not just specific technologies), much of our work (and contributions here) rest on how various Microsoft technologies and products work together, communicate, etc. within an overall solution. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Additionally, since our space is large global ISVs, we often advise/assist on heterogeneous solutions (e.g. Java and .NET, portal integration, security interoperability, etc) so those are areas we cover as well. &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;FONT face=Calibri size=3&gt;We hope that this blog will provide you with some useful info, guidance, examples, etc. for&amp;nbsp;your own solutions work.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt 10.1pt"&gt;&lt;FONT face=Calibri size=3&gt;Regards, the GISV Architecture Team&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8557121" width="1" height="1"&gt;</content><author><name>GISVArchitectureTeam</name><uri>http://blogs.msdn.com/members/GISVArchitectureTeam.aspx</uri></author></entry></feed>