2010-06-22 88 views
1

我使用的JbossNetbeans的在Windows上创建Spring MVC的 Web应用程序。 它运行在http://localhost/myapplication/获得Spring MVC的相对路径

我的项目路径是d:\ MyApplication的\

我的JSP视图是在d:\ MyApplication的\网络\ JSP \

的Javascript在d:\为MyApplication \网络\ JS \

控制器是在d:\ MyApplication的\网络\ SRC \ java的\控制器\

我已创建1个控制器,它需要建立在Java中的HTML文件脚本位置即D:\ Myapplication \ web \ js \

我正在使用Jquery.sheet创建一个Web电子表格。 我想用这个HTML来加载这个Jquery.sheet,我只想要那个存储在JAVASCRIPT位置的HTML的相对URL。

回答

1

这取决于执行jQuery.sheet的页面的请求URL。

首先在浏览器地址栏中检查使用jQuery.sheet的网页的绝对URL。它可能是例如http://localhost/myapplication/jsp/page.jsp

然后在浏览器地址栏中检查/测试生成的HTML文件的绝对URL。它可能是例如http://localhost/myapplication/js/generated.html

两者的通用路径只有一个文件夹级别:../这将最终在http://localhost/myapplication。从那里你可以通过js/generated.html访问JS文件夹和生成的HTML文件。

总结,你需要的相对URL是../js/generated.html


更新:按照注释事实证明,你已经在完全不同的角度阐述您的问题。你在谈论的是客户端视角的URL,而你实际上是指服务器端的本地磁盘文件系统路径。在这种情况下,只需使用ServletContext#getRealPath()即可将相对网络路径转换为绝对磁盘文件系统路径。

String relativeWebPath = "/js"; 
String absoluteDiskPath = servletContext.getRealPath(relativeWebPath); 
File generatedHtml = new File(absoluteDiskPath, "generated.html"); 
+0

Actualy我无法在http:// localhost/myapplication/js/using相对路径中创建html文件。 我可以在Windows中硬编码路径并创建html文件。 但我想创建一个HTML文件,使得文件存储在Windows和Linux的http:// localhost/myapplication/js /文件夹中,并且应该很容易访问。 然后我可以按照你的建议使用HTML文件的相对URL。 我的项目的执行路径是C:\ Program Files \ NetBeans \ NetBeans 6.8 谢谢。 – Prasen 2010-06-23 06:24:34