关于项目首页(欢迎页)跳转问题
来源:互联网 发布:百度浏览器打不开淘宝 编辑:程序博客网 时间:2024/05/17 01:56
大家好!小弟入行不久,经验尚浅。工作中遇到不少问题。绞尽脑汁。费了很大神才找到解决的方法。。不过原因还是有点想不通,,在此先把问题和解决的方法写上,以后弄懂了原因再附加上
首先呢今天遇到的问题是这样,项目原先访问登陆首页的路径 如: http://localhost:8088/yitai-ces-web/front/index.html#/login
文件配置则是
<!-- MVC --><mvc:default-servlet-handler /><mvc:annotation-driven /><!--将请求信息转换为字符串 --> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/html</value> <value>text/plain;charset=UTF-8</value> <value>text/html;charset=UTF-8</value> </list> </property> </bean> <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> <property name="messageConverters"> <util:list id="beanList"> <ref bean="mappingJacksonHttpMessageConverter" /> </util:list> </property></bean> <bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/html;charset=UTF-8</value> </list> </property></bean><!-- 定义JSP文件的位置 --><bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/"/> <property name="suffix" value=".jsp"/></bean><!-- 定义无需Controller的url<->view直接映射 --><mvc:view-controller path="/" view-name="redirect:/loginTo/index"/><!--Range_For_Spring_Inside_Exception--><bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver"> <property name="exceptionMappings"> <props> <prop key="java.lang.Exception">ExceptionPage</prop> </props> </property></bean><!-- 文件上传 --><bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver" />web.xml 部分配置:
<servlet> <servlet-name>spring-mvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:/META-INF/spring-web/spring-mvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup></servlet><servlet-mapping> <servlet-name>spring-mvc</servlet-name> <url-pattern>/</url-pattern></servlet-mapping><!-- Spring Listener --><context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath*:/META-INF/spring/root.xml</param-value></context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><context-param> <param-name>spring.profiles.default</param-name> <param-value>production</param-value></context-param><session-config> <session-timeout>20</session-timeout></session-config>
以上是部分配置:
让小弟想不通的事 同样配置下 在其他的项目中 可以通过访问地址 http://localhost:8088/yitai-ces-web/ 或者 http://localhost:8088/yitai-ces-web/front 直接跳转到登陆首页
当然是通过
<mvc:view-controller path="/" view-name="redirect:/loginTo/index"/>进入controller 层 然后通过方法跳转至 /webapp/front/index.html ,再由js 跳转至登陆页
唯独其中一个项目使用http://localhost:8088/yitai-ces-web 不能跳转到登陆首页 。而使用其他的如http://localhost:8088/yitai-ces-web/front http://localhost:8088/yitai-ces-web/fss 等都能进入到登陆首页。。 此时跳至的页面是webapp/index.html 这就很尴尬了 小弟百思不得其解。
经过漫长时间的排查发现 在直接访问 http://localhost:8088/yitai-ces-web (相当于直接 访问 / 时)自动的默认访问了 /index.html 。。。 由于此问题是小弟临时接手 在查看各配置和代码后,并没有找到问题所在。可谓是相当的纳闷!!
无奈之下只好投机取巧,
由于上面小弟所将的,既然不管怎么做都会跳入这里,并且此页面并没有其他的地方在使用,索性就在这里去获取登陆首页的地址并跳转,,但是经过试验后发现此方法虽然成功跳入了登陆页,缺带来了另外一个小问题。。
最后小弟又将所有的配置和代码检查后发现 在web.xml 文件中 并没有配置 welcome-file-list
。再次一瞬间,我突然感觉到春天依然来临,在光速的噼里啪啦之下,耗时几秒以后 配置完成
<welcome-file-list> <welcome-file>login.jsp</welcome-file></welcome-file-list>
此时小弟重启项目之后 发现问题已然解决。。。
然而。。小弟不由想起在项目中 并没有login.jsp .并且welcome-file-list的工作原理是,按照welcome-file的.list一个一个去检查是否web目录下面存在这个文件,如果存在,继续下面的工作(或者跳转到index.html页面,或者配置有struts的,会直接struts的过滤工作).如上例,先去webcontent(这里是Eclipse的工程目录根目录)下是否真的存在index.html这个文件,如果不存在去找是否存在index.jsp这个文件,以此类推。
还要说的是welcome-file不一定是html或者jsp等文件,也可以是直接访问一个action。
如果配置了servlet的url-pattern是/*,那么访问localhost:8080/会匹配到该servlet上,而不是匹配welcome-file-list;如果url-pattern是/(该servlet即为默认servlet),如果其他匹配模式都没有匹配到,则会匹配welcome-file-list。
所以此时我的不解是 , 项目中小弟servlet的url-pattern是/ 应先按照其他配置去匹配并跳转页面,找不到才会来匹配welcome-file-list 下面的页面。而小弟项目中在存在/front/index.html 的情况下 却跳转至/index.html 并且在配置welcome-file-list后 。 在项目中并不存在 login.jsp 的情况下 还成功的由错误的index.html页面跳转至登陆首页。 可能这里小弟表达的不怎么清楚。。但是确实存在了这么一个小疑问。。。
以上的问题是小弟今天遇见的比较怪的问题。。。没弄懂的地方待小弟解惑以后会补上答案 。 也欢迎各位大大能为小弟解惑一下 ,同时希望在将来能为出现同样问题的小伙伴一点小小的助力!!!
- 关于项目首页(欢迎页)跳转问题
- web项目首页跳转问题
- 关于TPshop2.0访问内页跳转首页问题
- 关于Web项目发布时跳转首页
- 项目初始化首页跳转页面
- struts首页新闻跳转问题
- nginx 解决首页跳转问题
- spring MVC项目中,欢迎页首页根路径
- 关于java+flex项目欢迎页的问题
- 总结一下关于 spring-security 3 ajax session 超时首页无法跳转的问题
- Android开发首页欢迎界面跳转功能的实现
- Android欢迎页面自动跳转和触摸进入首页
- 【js】pagination分页(支持首页,末页,跳转)
- web项目访问首页问题
- 关于打不开百度首页问题
- APP欢迎页跳转
- spring MVC项目中,欢迎页首页根路径到底是怎么设置的
- spring MVC项目中,欢迎页首页根路径到底是怎么设置的
- Redis基础——sort排序
- 数据结构图文解析之:AVL树详解及C++模板实现
- 1044. 火星数字(20)
- ubuntu 16.04 无法重启
- RGB-D数据集汇总 List of RGBD datasets
- 关于项目首页(欢迎页)跳转问题
- 第八周项目一
- golang设计模式(10)外观模式
- android 美团-->首页轮播功能
- DOM、HTML DOM、XML DOM关系的深度解析
- module.exports与exports??关于exports的总结
- 绩效指标SMART原则
- for-for嵌套之 三角形 九九乘法口诀表
- 20171024-管理自己