What is SOA? What is SOAP-RPC?

The now almost age-old question; “but what is SOA then?” has been out for debate at the office where i am right now. It must be stated that this is a gang of developers and quite often the questions bubbles down to; “but this line of code then, is this SOA?”. I took some time over the weekend and though about it - and came to the conclusion that you cannot answerer that question because the question is not correct in itself. SOA has to do with switching position and behold your world from another angle, was my conclusion. And lo and behold; today i found an article that explained a lot of stuff surronding this for me: http://wisdomofganesh.blogspot.com/2008/02/deciding-characteristic-of-soa.html Great explanation of the differences between SOA and SOAP-RPC.
Read More

WCF - wsdl configurations explained

OK - after an intensive coding session i can now proudly say that I understand 4 attributes of the WCF configurations (of the 1200 + that exists ;)) The attributes that you should set are: ServiceBehavior.Namespace - this get generated as the targetNamepace in the wsdl (instead of http://tempuri.org/). Also you should use this namespace in the endpoint, with the bindingNamespace-attribute in the config-file: <endpoint bindingNamespace=”[http://www.marcusoft.net/Services/](http://www.marcusoft.net/Services/)” /> ServiceBehavior.ConfigurationName - this is the name that you use as service name in the configuration file: <service name=”OffertTjanst” > ServiceBehavior.Name - the name property has solely to do with the generated wsdl-file. It is generated as the Name-attribute in the wsdl-file: <wsdl:definitions name=”ListDataTjanst” … ServiceContract.ConfigurationName - (note: this is on the interface, service contract, all other attributes are on the service implementation) this name is used to reference the interface in the endpoint: <endpoint address=”…” binding=”…” contract=”OffertContract” /> As i said at the...
Read More

WCF, WSDL and tempuri.org

It’s back! Just when we thought that we’ve seen the dreadful namespace http://tempuri.org is coming back at us with full power. The feeling you get when a web service is exposed under the namespace tempuri.org is that the developer of that web service is either sloppy or don’t now what he is doing. Well, well - don’t be like that when it comes to using WCF. Here is an article describing how to do it. The key points are quite easy: Use the ServiceBehavior attribute. Note: on the service implementation - not on the contract! Set the namespace-property to the namespace you want. Here is an example (yes, i know, it’s in dredded VB.NET): <ServiceBehavior(Namespace:=”http://www.marcusoft.net/Services/2008/04/MyService”, )> _ Public Class MyServiceImplementation implements IService … End Class
Read More

WCF configuration or Do it yourself

Configuration of WCF-services is a vast area… anyone who looked into the subject are sure to agree on that. The whole idea with WCF-services is that you can via configuration tweak the behavior and appearance of a service without having to change any internal logic of the service. When I tried my first services I was “tricked” into choosing one of the pre-manufactured project templates that Microsoft ships with Visual Studio 2008. This was bad decision. The number of configuration properties and stuff generated for me was so great that I didn’t understand the true important stuff that I needed to know. However, this Tuesday we had a interesting visitor at Avega - Christan Weyer. He gave an introduction on WCF. From that lecture I got so much more than from what the templates showed me. So this is what you really need to configure on your service: Name -...
Read More

Sending parameters to msbuild in TFS

The build process in Team Foundation Server is the one part where you still miss some stuff. Although it is much better in TFS 2008 than in TFS 2005 it is still quite cumbersome to handle. The way you start off with a wizard and then almost always need to go into the .proj-file to do updates is also confusing. Most people don’t want to be fiddling around with the nitty-gritty details of a MSBuild-script - it is not pretty. These, and other reasons, has led many of the projects that i am involved in to create a lot of build scripts - and some of them is not need. Like, for example, you shouldn’t be needing a separate build script to deploy to a certain environment, or the deploy part should not have to get and rebuild the sources. The solution to this is of course to send and...
Read More

Required file 'alink.dll with IAlink3' could not be found - and the solution to it

OK - a bit irritating but the first time I tried to compile … well anything (a console-application in this case) on my newly installed Visual Studio 2008 on Vista - I got this error: Required file ‘alink.dll with IAlink3’ could not be found Fortunately a lot of people seems to be having the same problem. Here is one guy describing the solution. But just to be sure I’ve copied the solution into here: ========= The solution was to install two Windows Update items found on the Visual Studio 2008 DVD in the “<dvddrive>:\WCU\dotNetFramework\dotNetMSP\x64” folder (for 32-bit version look in the “<dvddrive>:\WCU\dotNetFramework\dotNetMSP\x86” folder): NetFX2.0-KB110806-v6000-x64.msu. Run it, wait forever, reboot when it’s done. NetFX3.0-KB929300-v6000-x64.msu. Run it, wait forever, reboot when it’s done ========
Read More

Naming service reference to get namespace-like behavior

In my current project we are accessing a legacy system using Microsoft Transaction Integrator. Luckily for us we don’t have to write any of that stuff, that is done by another team who exposes the objects and methods in the legacy system as web services. However - they have chosen to encapsulate each object.method as one web service. Since we will have about 50 methods to call it we be … 50 web service references for us to keep track on. That is not a problem if it wasn’t for the namespacing. There are a lot of wsGetBusinessCodes and wsUpdateInsurance namespaces running around in our code. Yesterday we found a “solution” to how to organize the web service references on our, the client, side - and still let the server side publish the web service how they like. The solution is quite simple; as it turns out you can include...
Read More

New York Staff Band and Enfield together

Wow - here is a whole concert with the two great bands, in top form as it sounds. And with the extra treat of hearing Philip Smith playing Victorious (is it a bit sloppy for the worlds greatest trumpeter…?). There are also some other great items from other occations Click on “Band profile” for the complete concert… Here is the same thing in full screen-mode
Read More