Web Services for Remote Portlets (WSRP) is a standard for content aggregators, such as Web portals, to access and display content sources (i.e. portlets) that are hosted on a remote server.
WSRP is a technology agnostic protocol designed for accessing remote Portlets in a standard manner.
The WSRP specification defines a web-service interface for interacting with interactive presentation-oriented web services.
Initial work was produced through the joint efforts of the Web Services for Interactive Applications (WSIA) and Web Services for Remote Portlets (WSRP) OASIS Technical Committees. With the approval of WSRP v1 as an OASIS standard in September, 2003, these two Technical Committees merged and continued the work as the Web Services for Remote Portlets (WSRP) OASIS Technical Committee.
The advent of the .NET framework has also provided an opportunity to reimplement from the ground up scripting practices and procedures that have grown up since the introduction of VBScript in 1996. As an example in the area of Web applications, Microsoft
has overhauled earlier work on remote scripting to better follow community standards such as XML and SOAP.
The end result is an emphasis in the .NET framework on tools and facilities that facilitate the creation and implementation of Web services.
Web services, a community-driven technical approach to Web application design, continues the steady move of Web applications from the static to the dynamic. When first introduced, the Web was mostly about serving static data formatted in HTML. Over the years, Web functionality has become increasingly dynamic through extensions of both web server and web browser functionality. Initiatives such as Microsoft's Remote Scripting showed how Web applications could even be distributed between client and server (by allowing client-side script to instantiate
and use objects running on the server).
.NET Web services as implemented by Microsoft do much the same thing as remote scripting, but by making better use of newavailable community standards such as XML and SOAP. Web services in ASP.NET are implemented through the use of ASP pages, where the default file extension is .asmx 
These pages include a WebService directive, which informs the ASP.NET service regarding service implementation programming language and class names. Available public methods and resources are then enumerated and scripted in the .asmx page .
NET Web services have advantagesover older style remote scripting approaches in thatthey rely less on proprietary technologies and they utilize HTTP POST (rather than HTTP GET, which is limited interms of data size communicated). By designating a particular file extension for Web services pages, ASP.NET also facilitates development by separating conventional ASP pages from those intended to be used for Web services.
If you request the URL of an .asmx page from your Web browser, ASP.NET will generate and send you an HTMLpage suitable for testing and debugging the functionality of your Web service.
An ASMX file serves as the end point for an ASP.NET Web service. It is similar to an . ASPX file, but is used specifically for XML Web services. ASMX files are often part of ASP.NET applications and may reference other files.