Can Infopath replace ASP.Net as a UI for 3 tier applications...
I have been having animated discussions on using Infopath as the frontend for 3 tier applications. Infopath forms are very good XML consumers, throw a schema at it and it throws back a rich UI. They are also fantastic XML generators. If you want to use ASP.NET instead, you will have to do the custom XML parsing yourself and also have to handle the code for generating the UI and the bindings.
Lets suppose we have a situation where in you have some predefined schema's of data that need to be captured. You are using XML capable DB server like SQL2005. Also assume that you have a well defined set of business components that implement all the necessary logic for creation of the business entities (as XML schema instances) and also you have your DB accept predefined schema instances through users. Here comes the big lollypop...all your clients already have Office 2003 (SP1) installed....
In this situation, would it not be easier to just snap on a web services facade on the business layer and then have Infopath access this facade? Or would ASP.NET web pages be the way to go...
I know i am trying to compare apples and oranges here, but the crux of the matter is that Infopath templates can be published with some logic in them, they can saved onto a users machine and submitted once the user is online....they represent a paradigm shift with respect to usage of Smartclients as opposed to browser based thin clients. But, and its a big but in this case, does Infopath usage be justified as an optimum solution, how would users react to accessing a crucial applications through Infopath without any 'comfort feeling' of having either a Windows Forms app or a web site that would logically give them some feeling of a real application?
On the usage aspect, i feel, users ( and developers alike) are not used to the idea of 'not' having a windows form client or a web application. Today most developers seem to think that any 3 tier application development has to have a Web interface, they have to have a HTTP endpoint and some submits and some page navigation etc etc...I have participated in one too many discussion where developers vehemently oppose any idea of anything else other than a browser based client ( leave alone Infopath) as the UI, my experiences prompt me to ask these questions:
- Why do developers feel that all application development is only Web application development?
- Am I isolated in these experiences?
- Are there others who have experienced such situation?
- Am I missing something here that is glaringly evident to everybody else on this side of the planet?
Any ideas???