`

frameset框架访问web_inf目录下的jsp

阅读更多

框架结构是:SpringMVC4+hibernate4+tomcat

springmvc视图解析路径配置:

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix" value="/WEB-INF/views/"/>
		<property name="suffix" value=".jsp"/>
	</bean>

 jsp页面全部放在WEB-INF/views目录下面的不同目录下的,/WEB-INF/views/frame/admin.jsp页面中的frame框架如下:

<FRAMESET id="index" border=0 frameSpacing=0 rows=80,* frameBorder=no>
  <FRAME id=headFrame name=headFrame src="/WEB-INF/views/frame/top.jsp" noResize scrolling=no>

  <FRAMESET border=0 frameSpacing=0 frameBorder=no cols=150px,*>
    <FRAME id=leftFrame name=leftFrame src="/WEB-INF/views/frame/catalog.jsp" noResize scrolling=no>
    <FRAME id=mainFrame name=mainFrame src="/WEB-INF/views/frame/mainDefault.jsp" >
  </FRAMESET>
</FRAMESET>

 打开admin.jsp一直出现404路径出错,我也知道/WEB-INF/下的文件目录不能直接访问,可是这里要怎么实现啊?请大家各抒己见,谢谢!

 

分享到:
评论
2 楼 yunlian0621 2015-09-09  
根据1楼的思路,具体解决方案如下:
jsp代码:
<FRAMESET id="index" border=0 frameSpacing=0 rows=80,* frameBorder=no>
    <FRAME id=headFrame name=headFrame src="域名/项目名/adminTop" noResize scrolling=no>
    <FRAMESET border=0 frameSpacing=0 frameBorder=no cols=150px,*>
      <FRAME id=leftFrame name=leftFrame src="域名/项目名/adminCatalog" noResize scrolling=no>
      <FRAME id=mainFrame name=mainFrame src="域名/项目名/adminMainDefault" >
    </FRAMESET>
</FRAMESET>

mvc配置如下:
<mvc:view-controller path="adminTop" view-name="frame/top"/>
<mvc:view-controller path="adminCatalog" view-name="frame/catalog"/>
<mvc:view-controller path="adminMainDefault" view-name="frame/mainDefault"/>
其中,path即是FRAME的src的action名;view-name是对应 jsp所在地址,jsp文件的.jsp后缀不用写。
1 楼 yunlian0621 2015-09-08  
This is a shortcut for defining a ParameterizableViewController that immediately forwards to a view when invoked. Use it in static cases when there is no Java controller logic to execute before the view generates the response.

An example of forwarding a request for "/" to a view called "home" in Java:

@Configuration
@EnableWebMvc
public class WebConfig extends WebMvcConfigurerAdapter {

    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        registry.addViewController("/").setViewName("home");
    }

}
And the same in XML use the <mvc:view-controller> element:

<mvc:view-controller path="/" view-name="home"/>

相关推荐

Global site tag (gtag.js) - Google Analytics