我正在使用Java在Google应用引擎上构建网站。 我正在尝试使用servlet映射映射jsp页面,如下所示:
http://localhost:8080/<any text>
应映射到r.jsp
http://localhost:8080
应映射到home.jsp
但这两个网址始终会映射到r.jsp
。
我的web.xml如下:
<servlet>
<servlet-name>r</servlet-name>
<jsp-file>/r.jsp</jsp-file>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>r</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>home</servlet-name>
<jsp-file>/home.jsp</jsp-file>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>home</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>home.jsp</welcome-file>
</welcome-file-list>
我还尝试了<url-pattern>""</url-pattern>
而不是<url-pattern>/</url-pattern>
,但它也无效
这个 servlet映射解决方案?
答案 0 :(得分:1)
将web.xml更改为此类
<servlet>
<servlet-name>r</servlet-name>
<jsp-file>/r.jsp</jsp-file>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>r</servlet-name>
<url-pattern>/ewerw</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>r</servlet-name>
<url-pattern>/rrrxdsfwef</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>r</servlet-name>
<url-pattern>/xy1</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>home</servlet-name>
<jsp-file>/home.jsp</jsp-file>
<load-on-startup>0</load-on-startup>
</servlet>
<welcome-file-list>
<welcome-file>home.jsp</welcome-file>
</welcome-file-list>