我正在使用框架struts 2并在Struts中使用Tiles来设计视图。但我得到一个错误,但没有解决它!虽然我在google上搜索了很多。
我已经提交了tiles.xml:
<tiles-definitions>
<definition name="baseLayoutAdmin" template="/admin/BaseLayoutAdmin.jsp">
<put-attribute name="title" value="" />
<put-attribute name="header" value="/admin/Header.jsp" />
<put-attribute name="menu" value="/admin/Menu.jsp" />
<put-attribute name="body" value="" />
<put-attribute name="footer" value="/admin/Footer.jsp" />
<put-attribute name="pageCss" type="strings" value="{'stylesheets/theme.css','lib/bootstrap/css/bootstrap.css','lib/font-awesome/css/font-awesome.css'}" />
<!--<put-attribute name="cssTheme" value="stylesheets/theme.css" />
<put-attribute name="cssbootstrap" value="lib/bootstrap/css/bootstrap.css"/>
<put-attribute name="cssFont" value="lib/font-awesome/css/font-awesome.css"/>
<put-attribute name="cssJquery" value="lib/jquery-1.7.2.min.js" type="strings"/>-->
</definition>
<definition name="/admin/index.tiles" extends="baseLayoutAdmin">
<put-attribute name="title" value="Home Page News Online Manager" />
<put-attribute name="body" value="/admin/index.jsp" />
</definition>
</tiles-definitions>
在文件BaselayoutAdmin.jsp中,我使用了:
<s:set var="pageCssArray"><tiles:getAsString name="pageCss" /></s:set>
<s:iterator value="%{#pageCssArray}">
<s:set var="CurrentCss"><s:property/></s:set>
<link rel="stylesheet" type="text/css" href="<s:url value='%{#CurrentCss}'/>" />
</s:iterator>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title><tiles:insertAttribute name="title" ignore="true" /></title>
从tile中获取css文件。
但是当我部署项目时,会出现以下错误:
取消部署?路径= / NewsOnline
OK - 在上下文路径/ NewsOnline上取消部署的应用程序
在C:\ Users \ san \ Documents \ NetBeansProjects \ NewsOnline \ build \ web中进行就地部署 部署?配置文件=%3A%2FC%3A%2FUsers%2Fsan%2FAppData%2FLocal%2FTemp%2Fcontext5234232918126270598.xml&安培;路径= / NewsOnline
失败 - 在上下文路径/ NewsOnline部署应用程序但上下文无法启动 C:\ Users \ san \ Documents \ NetBeansProjects \ NewsOnline \ nbproject \ build-impl.xml:1086:尚未部署模块。
有关详细信息,请参阅服务器日志 建筑失败(总时间:1秒)
如果我删除:
<put-attribute name="pageCss" type="strings" value="{'stylesheets/theme.css','lib/bootstrap/css/bootstrap.css','lib/font-awesome/css/font-awesome.css'}" />
然后它工作正常。 我该如何解决这个问题?
答案 0 :(得分:0)
错误是由于文件(js,css,js)到admin中的文件夹(我定义为单独的管理员和用户文件)。如果你将它们留在网页文件夹之外,就不会发生错误!并且您不需要将css或javascript文件添加到另一个文件tiles.xml中。你可以将它们留在文件baseLayout.jsp文件继承它将接收css和js。我不擅长英语使用谷歌翻译希望人们同情!