A friend of mine in India had some problems with calling a Java web service from .NET 2.0 using web references generated using Visual Studio 2005. Some serialization error occured, but the message was very much useless.
I recommended using WSCF to them and as it turns out the WSCF gave a much more detailed message pinpointing the error to a namespace issue on the Java side.
WSCF is a tool created by Thinktecture supporting the Web Service Contract First approach to developing web services.
Microsoft has released version 1.0 of Microsoft Robotics Studio.
The Microsoft Robotics Studio delivers in three areas of software:
- A scalable, extensible runtime architecture that can span a wide variety of hardware and devices. The programming interface can be used to create applications to drive robots using 8-bit or 16-bit processors (from a connected PC) as well as 32-bit systems with multi-core processors; and devices from simple touch sensors to laser distance finding devices.
- A set of useful tools that make programming and debugging robot applications scenarios easier. These include a high resolution visual simulation environment that integrates software physics supplied by the Ageia Technologies PhysX engine.
While Microsoft Robotics Studio can be used with programming languages such as those included in Microsoft Visual Studio and Microsoft Visual Studio Express, also included is a new visual programming language that enables the creation of applications using a simple drag-and-drop interface.
- A set of useful technology libraries services to help developers get started with writing robot applications, and tutorials which illustrate the basics of how to get started in a variety of programming languages.
Read more: http://msdn.microsoft.com/robotics/getstarted/v1_0/default.aspx
With Microsoft Robotics Studio, robotics applications can be developed using a selection of programming languages, including those in Microsoft Visual Studio® and Microsoft Visual Studio Express languages (Visual C#® and Visual Basic®), which are free to download, as well as Microsoft IronPython. Third-party languages that support the Microsoft Robotics Studio services-based architecture are also supported.
Ofcourse the most interesting part to me is the fact that it can all be done with C#, the language and tool I love most 
Microsoft Patch Tuesday has come and gone. I'm running IE7 so I guess I don't need to worry. Application Development Trends mentions a tiny possibility of VS2005 being attacked, but you have to be an idiot to get caught. Here's what they say about the IE patches:
IE Patches Microsoft today also issued a cumulative patch that addresses at least four serious vulnerabilities in Internet Explorer versions 5.01 and 6. The vulnerabilities -- which are susceptible to memory corruption and information disclosure exploits -- affect IE's script handling, DHTML scripting and Temporary Internet File features. At least two of them, a Script Error Handling Memory Corruption Error and a DHTML Script Function Memory Corruption Error, could allow attackers to execute code on -- and gain control over -- vulnerable systems.
All Windows versions running Internet Explorer 5.01 or 6.0 are affected by the vulnerability. Internet Explorer 7.0 is not affected, Microsoft said.
Nice to see that a newer version of IE finally delivers better security, from this article I gather that IE6 was not much of an improvement over IE5.01 which I think was released in 1998!?
Just wanted to congratulate my buddy Marcel Meijer on becoming C# Groupleader within the SDN.
Congratulations dude!!!
I had some problems with my blog crashing my application pool. Last night I upgraded from Das Blog 1.8 to version 1.9.6264.0.
It was still up and running this morning so let's hope it helped.
In the category: 'interesting numbers', I just ran across this info-bit on the Citrix website:
With industry analysts expecting the WAN optimization market to double to more than $1.2 billion by 2009(1), and an estimated 55 percent of all employees worldwide accessing their applications from branch offices, WAN optimization solutions are rapidly becoming a critical infrastructure requirement for enterprises around the world.
1) Gartner Dataquest: Forecast: Application Acceleration Equipment, Worldwide, 2005-2010, Aug. 10, 2006, Joe Skorupa.
Microsoft MSDN has published a white paper on software factories written by my friend Marcel de Vries. He worked together with Jack Greenfield, pretty cool!
This white paper discusses how software factories and Microsoft Visual Studio Team System can be used together to improve quality, predictability, and productivity. Using Visual Studio Team System data-warehouse and reporting capabilities, the software-factory builder can reliably determine which aspects of product development need improvement and how to modify the software factory to improve them.
This white paper concludes that greater quality, predictability, and productivity can be achieved with a software-factory approach, rather than with traditional one-off development. The concepts and working methods are targeted at an audience of systems integrators and enterprise customers who develop custom software.
Read the paper at: http://msdn2.microsoft.com/en-us/library/aa925157.aspx
Good design, smart data access and optimizing the results of your web service are good way to improve performance of your web service. In an earlier post I also mentioned turning off XML schema validation. As it turn out, this may not be necessary.
A company called Stampede offers a solution for improving Web Service perfomance by offloading XML schema validation!!!
The product is actually much more comprehensive than that, read below a copy from an interesting piece of text from their website.
SOA Optimization Services
The Stampede Web 2.0 Performance Series also addresses the demands placed on the network and Web servers as a result of the proliferation of XML data and Service Oriented Architecture applications. Stampede's client and appliance technology are now XML-aware, and add services specifically designed to optimize this environment.
- XML Document Differencing extends our Cache Differencing technology to only transmit the actual changes in the XML document; significantly reducing the data that is transmitted
- XML Schema Validation to validate the grammar of the XML message, and ensure the message does not contain unexpected or potentially malicious content
- XML Content Based Routing enables routing decisions to be made based on a dynamic analysis of the XML document
XML Threat Management Services
The transaction intensive demands of Web Services, AJAX and other XML applications require bullet-proof security. XML applications are vulnerable to maliciously corrupted data, denial of service (DoS) attacks, and intrusion attempts. The Stampede Web 2.0 Performance Series provides hardened security features to address these issues.
- XML Content Inspection uses parallel hardware to do symantec threat analysis on the entire XML message
- XML Well-formedness Checking protects the host environment against non-malicious message corruption
- XML Denial of Service (XDoS) Detection provides detection of specific XML parser attacks
- Message Anomaly Detection provides adjustable tolerance levels for recognition of message traffic patterns and identification of packet anomalies
The session schedule for the next SDN meeting, on the 11th of december is available (www.sdn.nl). We have a great line up!
Overzicht sprekers en sessies
|
Delphi |
C# |
Visual Basic.NET |
DotNetNuke |
St. dotNed |
Visual Objects |
| 8:30 |
Registratie / Ontvangst |
| 9:00 |
Delphi Roadmap: Look into the future
Nick Hodges & Gerard vd Pol |
Programmeren met Project 2007
Marianne van Wanrooij |
Software development in extreem tempo met UML, MDA en .NET
Sander Hoogendoorn |
Intrduction to DotNetNuke
Erik van Ballegoij |
What's new in .NET 3.0?
Thomas Huijer |
Dialogs and windows without using the GUI libraries
Frans de Wit
|
| 10:15 |
Pauze - 30 min. |
| 10:45 |
ECO III - Basics
Holger Flick |
Windows Cardspaces en Claim Based authorisatie met WCF
Erik van de Ven |
Hoe indexen een SQL Server database kunnen versnellen
Hugo Kornelis |
DotNetNuke and Ajax
Stefan Kamphuis |
More on Cardspace
Sander Gerz |
Visual Objects vs Vulcan.NET
Chris Pyrgas |
| 12:00 |
Lunch - 60 min. |
| 13:00 |
NDA sessie over Delphi Highlander
Nick Hodges & Bob Swart |
Robotica for fun and profit
Mark Rexwinkel |
Visual Studio Code Name ‘Orcas’
Serge van Schie |
User, profile and role management and subscription-based websites with DotNetNuke
Peter Schotman |
More on WCF
Dennis Vroegop |
Utilizing Design Patterns with VO and Vulcan.NET (part 1)
Meinhard Schnoor-Matriciani |
| 14:15 |
Pauze - 15 min. |
| 14:30 |
What's new in Interbase 2007
Henrik Jondell |
Next-Generation Data Access with ADO.NET vNext
Paul Gielens |
CLR User-defined types in SQL Server 2005
Hugo Kornelis |
Intermodule Communication
Leigh Pointer |
More on WPF
Waseem Sadiq |
Utilizing Design Patterns with VO and Vulcan.NET (part 2)
Meinhard Schnoor-Matriciani |
| 15:45 |
Pauze - 30 min. |
| 16:15 |
ECO III with ASP.NET: Authentication and Authorization
Holger Flick |
WCF Service Model Internals & Extensibility
Gijs de Jong |
Workflow Foundation what is hot, what is not
Maurice de Beijer |
Designing UI for modules and integration with skinning
Sebastian Leupold |
Panel discussie: Alles over .NET 3.0 en waarom je je daar mee bezig moet houden
dotNed panel |
Using VO GUI classes and .Net Forms together
Chris Pyrgas |
| 17:30 |
Einde |
I have the pleasure of being part of project which has started using Visual Studio Team Suite and Team Foundation Server.
I love the smooth integration of source control and issue management. It's fantastic, no more buggy add-ins! Perhaps coolest of all is the ability to move files and retain version history. No more crazy work-arounds.
Here is the sample SQL script to create a simple queue in SQL Server 2005:
-- Needed to send messages! CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'MyPassword'; GO
-- All messages need to be typed. CREATE MESSAGE TYPE [//DEVELOP-ONE.COM/schemas/Test/XmlMessage] VALIDATION = VALID_XML; GO
-- Create a contract CREATE CONTRACT [//DEVELOP-ONE.COM/schemas/Test/BasicXmlQueueContract] ( [//DEVELOP-ONE.COM/schemas/Test/XmlMessage] SENT BY ANY ) ; GO
-- Create a queue which is turned on and which retains -- messages in the database. CREATE QUEUE BasicXmlQueue WITH STATUS=ON, RETENTION=ON; GO
-- Create the service needed to send messages. CREATE SERVICE [//DEVELOP-ONE.COM/Sql/Services/Test/BasicXmlService] ON QUEUE [dbo].[BasicXmlQueue] ([//DEVELOP-ONE.COM/schemas/Test/BasicXmlQueueContract]) ; GO
-- Create a stored procedure to send a message CREATE PROCEDURE SendXMLMessage @MessageContent XML AS BEGIN
DECLARE @dialog_handle UNIQUEIDENTIFIER;
BEGIN DIALOG CONVERSATION @dialog_handle FROM SERVICE [//DEVELOP-ONE.COM/Sql/Services/Test/BasicXmlService] TO SERVICE '//DEVELOP-ONE.COM/Sql/Services/Test/BasicXmlService' ON CONTRACT [//DEVELOP-ONE.COM/schemas/Test/BasicXmlQueueContract] ;
SEND ON CONVERSATION @dialog_handle MESSAGE TYPE [//DEVELOP-ONE.COM/schemas/Test/XmlMessage] (@MessageContent) ;
-- return dialog_handle SELECT @dialog_handle ;
END ; GO
CREATE PROCEDURE ReceiveXMLMessage @Timeout int AS BEGIN DECLARE @tempTable as TABLE( conversation_handle UNIQUEIDENTIFIER, message_body XML) ;
WAITFOR( RECEIVE TOP (1) conversation_handle, message_body FROM BasicXmlQueue INTO @tempTable ), TIMEOUT @Timeout;
DECLARE @conversation_handle as UNIQUEIDENTIFIER;
SELECT TOP (1) @conversation_handle = conversation_handle FROM @tempTable ;
IF ( @conversation_handle IS NOT NULL ) BEGIN -- remove message from queue without sending an End Of Conversation message. END CONVERSATION @conversation_handle WITH CLEANUP ; END
-- return the message body select message_body from @tempTable;
END ; GO
Microsoft Developer Division has started DevDiv Hotfix Public Availability Pilot Program. This is a program where hotfixes are made available to the general public. The fixes are not as ruggedly tested as a Service Pack, but if you happen to run into a specific problem the fix may just be the solution for you.
Go to: https://connect.microsoft.com/content/content.aspx?ContentID=3705&wa=wsignin1.0&siteid=210
As of now there are 7 hotfixes available.
SQL Server 2005 introduces Service Broker, an extensive mechanism for supporting asynchronous messaging with SQL Server.
The very heart of Service Broker is the new SQL Server object: QUEUE. To utilize just the queue you still have to go through the service broker and do all the extensive stuff which you may or may not need.
The minimum steps you need to create a queue are:
- Create a message type
- Create a contract
- Create a queue
- Create a service
Make sure there is a master encryption key available in your database, otherwise the message won't get send.
I've created stored procedures for sending en receiving messages. Works quite well. I'll post some SQL code later.
I just created a new virtual machine image and installed .NET Framework 3.0 and the Windows Workflow Foundation extension for Visual Studio 2005. Pretty smooth install, the 2.9MB download for the .NET Framework turned out to be just a bootstrapper which in turn downloaded another 30MB. Don't you just love high speed Internet, it only took 25 seconds.
I just was wondering, so I looked it up. Tech-Ed 2007 will be held on June 4-8, 2007 in Orlando at the Orange County Convention Center (OCCC).
|