发表于: 2017-09-13 21:52:32

1 846


今天完成的事情:修改了title里面的错误  总是出现什么为空 嵌套异常等

                             对照着师兄的程序自行研究对比修改了很多次   解决

                             听老大讲了一些修真院的理念思想

                           参照着写了一个时间转换的工具类

    private String value;

   @Override
   public int doStartTag() throws JspException {
String vv = "" + value;
       long time = Long.valueOf(vv);
       Calendar c = Calendar.getInstance();
       c.setTimeInMillis(time);
       SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
       String s = dateFormat.format(c.getTime());
       try{
pageContext.getOut().write(s);
       }catch (IOException e){
e.printStackTrace();
       }

return super.doStartTag();
   }

public void setValue(String value){
this.value = value;
   }

}

明天计划的事情:优化代码 提交任务四
遇到的问题:主要是昨天的问题 不知道为何 使用*无法跳转到相应的页面 经过不断的摸索研究对比终于改好了

 <!-- 主布局 -->
<definition name="sss" template="/WEB-INF/pages/module/main.jsp" >
    <put-attribute name="cssresources" value="/WEB-INF/pages/module/css.jsp"/>

</definition>

<!--项目-->
<definition name="*.page" extends="sss" >
    <put-attribute name="title" value="fghd"/>
    <put-attribute name="header" value="/WEB-INF/pages/module/{1}.jsp"/>
<!--     <put-attribute name="menu" value=""/>
    <put-attribute name="body" value=""/>
    <put-attribute name="footer" value=""/>-->
</definition>

主要是项目里要和主布局保持一致

否则就会出这个异常

Cannot render an attribute that is not a string, toString returns: null

当然还跟主文件有关 也就是这个

<head>
  <%-- <title>Title</title>--%>
       <title><tiles:insertAttribute name="title"/></title>
</head>
<body>
<tiles:insertAttribute name="cssresources"/>
<tiles:insertAttribute name="header"/>

这里要跟主布局和页面匹配

原来没用通配符 没匹配也没有出错 用了就报错 什么嵌套异常

这里还要说一下

"/WEB-INF/pages/module/{1}.jsp"/>

这个{1}代表的是* 也就是说我页面设置不动 根据return不同的值就可以跳转到不同的页面

还有一个不严重的问题 这里不能用Ctrl跳转进入页面 但是我看佳义的可以 不过不影响 程序运行正常

public String ad(){


return "header.page";
}

对工具类还是有点疑惑

收获:1 / ./ ../ 的不同含义 首先强调一下这里讨论在jsp文件或者html中 而非在linux系统中

这里要先提一下绝对路径 与相对路径

HTML中绝对路径(absolute path)在网页制作中指带域名的文件的完整路径。/  HTML中相对路径(Relative Path)是同一个目录的文件引用,如果源文件和引用文件在同一个目录里,直接写引用文件名即可。

再看下我们现在用的html中 ./即代表当前路径下 ../代表他的上一级路径下 这两个都是相对路径的引用

在注意一下我在这里是在所有非struts标签的路径前加${pageContext.request.contextPath},来使用绝对路径,如原路径为:  ”/images/title.gif”,改为  “${pageContext.request.contextPath}/images/title.gif”。  代码” ${pageContext.request.contextPath}”的作用是取出部署的应用程序名,这样不管如何部署,所用路径都是正确的。

注意:Struts提供了五个标签库,即:HTML、Bean、Logic、Template和Nested。

           ${pageContext.request.contextPath}只能jsp解析js不能

2、一直在研究title的错误 感觉程序出现嵌套异常 一定是代码的结构有问题 比如曾经碰到的未闭合标签  或者这次的标签不匹配

3、对于修真院的理念有了更深入的了解 包括日报  小课堂 等

 


进度: 

         任务开始时间:9.10

         预计完成时间:9.14

         是否有延期风险:暂无

禅道链接:http://task.ptteng.com/zentao/my-task.html



返回列表 返回列表
评论

    分享到