由于在一个项目局方要求使用JAVA平台, 而当前又都是.net平台的应用. 重新用JAVA开发工作量太大. 时间也来不及. 想到在.net中有url rewrite功能, 何不先"骗"过去再说, 反正只要不上服务器, 不看网页源代码, 估计要发现不太容易, 特别是对技术不懂的人.
实现之后应该是输入http://host/XXX.jsp的时候,其实调用的是XXX.aspx. 对于任何页面都是如此.
有两种方法可以实现此项功能, 第一种:
1. 在IIS中添加一个映射".jsp", "C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll";
2. 在web.config中添加一个config section, 指明实现重定向的实现类, 然后在system.web节中添加映射;
3。编译实现的类为DLL,并拷贝到测试WEB应用的bin目录;
4。修改WEB应用目录下的global.asax中的Application_BeginRequest方法。
具体代码和示例见:http://www.codeproject.com/aspnet/URLRewriter.asp
另一种方法是使用IHttpHandler实现过滤,只需要编译成DLL,并拷贝到应用程序的bin目录,设置web.config中的HttpHandler即可,优点是不需要修改WEB应用程序,可实现即插即用,缺点是不能灵活定制单个页面。具体示例见:http://msdn.microsoft.com/msdnmag/issues/02/08/HTTPFilters/