`
L.G.Alexander
  • 浏览: 156219 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

9、bug修正及删除功能实现

阅读更多
bug修正及删除功能实现
1、log4j-1.2.15版本bug,建议不要使用它,而建议使用log4j-1.2.14
引用
After upgrading from 1.2.14 to 1.2.15 the following error show up during
shutdown:
log4j:ERROR LogMananger.repositorySelector was null likely due to error in
class
reloading, using NOPLoggerRepository.

No errors at all with 1.2.14

This probably is related to bug 40212

2、对应${org.parent.name},当org为顶级机构时候回报错空指针异常,修改
Organization.hbm.xml添加 not-found="ignore":
<many-to-one column="pid" access="field" name="parent" not-found="ignore"/>

Organization.java添加not-found="ignore":
      
/**
	 * @hibernate.many-to-one
	 * column="pid" not-found="ignore"
	 */
	private Organization parent;
index.jsp修改
<td align="center" vAlign="center">
	<c:out value="${org.parent.name}"></c:out>
</td>


<td align="center" vAlign="center">
<c:if test="${!empty org.parent.name}">
	<c:out value="${org.parent.name}"></c:out>
</c:if>
</td>

3、添加机构的唯一编号,修改OrgManagerImpl.java的addOrg(Organization org, int parentId)方法为:
    
public void addOrg(Organization org, int parentId) {
        if(parentId != 0)
        	org.setParent((Organization)getHibernateTemplate().load(Organization.class, parentId));
       getHibernateTemplate().save(org);
       //TODO 设置机构的唯一编号
       org.setSn(org.getParent() == null ? "" + org.getId(): org.getParent().getId() + "_" + org.getId());
       getHibernateTemplate().update(org);
	}
4、完成删除功能:
public_del_success.jsp文件:
<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>删除记录成功</title>
<script type="text/javascript">
function closewindow(){
	window.returnValue = true;
	window.close();
}
function clock(){
	i = i -1;
	if(document.getElementById("info")){
		document.getElementById("info").innerHTML = "本窗口将在"+i+"秒后自动关闭";
	}
	if(i > 0)
		setTimeout("clock();",1000);
	else
		closewindow();
}

var i = 4;
clock();

</script>
</head>
<body>
<center>
	删除记录成功!<p>
	<div id="info">本窗口将在3秒后自动关闭</div>
	<input type="button" value="关闭窗口" onclick="closewindow();">
</center>
</body>
</html>

public_update_success.jsp文件:
<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>更新记录成功</title>
<script type="text/javascript">
function closewindow(){
	if(window.opener){
		window.opener.location.reload(true);
		window.close();
	}
}
function clock(){
	i = i -1;
	if(document.getElementById("info")){
		document.getElementById("info").innerHTML = "本窗口将在"+i+"秒后自动关闭";
	}
	if(i > 0)
		setTimeout("clock();",1000);
	else
		closewindow();
}

var i = 4;
clock();

</script>
</head>
<body>
<center>
	更新记录成功!<p>
	<div id="info">本窗口将在3秒后自动关闭</div>
	<input type="button" value="关闭窗口" onclick="closewindow();">
</center>
</body>
</html>

update_add_succes.jsp文件
<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>添加记录成功</title>
<script type="text/javascript">
function closewindow(){
	if(window.opener){
		window.opener.location.reload(true);
		window.close();
	}
}
function clock(){
	i = i -1;
	if(document.getElementById("info")){
		document.getElementById("info").innerHTML = "本窗口将在"+i+"秒后自动关闭";
	}
	if(i > 0)
		setTimeout("clock();",1000);
	else
		closewindow();
}

var i = 4;
clock();

</script>
</head>
<body>
<center>
	添加记录成功!<p>
	<div id="info">本窗口将在3秒后自动关闭</div>
	<input type="button" value="关闭窗口" onclick="closewindow();">
</center>
</body>
</html>

DelOrgAction.java文件
package com.oa.action;

import com.oa.manager.OrgManager;
import com.opensymphony.xwork2.ActionSupport;

public class DelOrgAction extends ActionSupport {
	private OrgManager orgManager;
	private int id;

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public void setOrgManager(OrgManager orgManager) {
		this.orgManager = orgManager;
	}
	@Override
	public String execute() throws Exception {
		orgManager.deleteOrg(id);
		return "del_success";
	}
}

修改OrgManagerImpl.java的deleteOrg(int orgId)方法为:
    
 public void deleteOrg(int orgId) {
		Organization org = (Organization) getHibernateTemplate().load(Organization.class, orgId);
		if(org.getChildren().size() > 0)
			throw new RuntimeException("有子机构存在,不允许删除!");
		getHibernateTemplate().delete(getHibernateTemplate().load(Organization.class, orgId));
	}
修改index.jsp文件中
<a href="#" onclick="del('del.do?mentod=del&id=${org.id }');">删除</a></td>


<a href="#" onclick="del('del.action?id=${org.id }');">删除</a></td>

修改struts.xml文件为:
<package name="struts2" namespace="/" extends="struts-default">
        <global-results>
            <result name="add_success">/common/pub_add_success.jsp</result>
            <result name="del_success">/common/pub_del_success.jsp</result>
            <result name="update_success">/common/pub_update_success.jsp</result>
        </global-results>
        <action name="Login" class="loginAction">
            <result name="success">/result.jsp</result>
            <result name="input">/login.jsp</result>
        </action>
        
        <action name="org" class="orgAction">
            <result name="success">/org/index.jsp</result>
        </action>
        
        <action name="add_input" class="orgAction" method="add">
            <result name="success">/org/add_input.jsp</result>
        </action>
        
        <action name="add" class="addAction">
            <result name="success">/common/pub_add_success.jsp</result>
        </action>
        
        <action name="del" class="delAction"></action>
    </package>
applicationContext-actions.xml文件中添加:
   
<bean id="addAction" class="com.oa.action.AddOrgAction">
        <property name="orgManager" ref="orgManager"/>
    </bean>
    
    <bean id="delAction" class="com.oa.action.DelOrgAction">
        <property name="orgManager" ref="orgManager"/>
    </bean>


启动tomcat,测试!








分享到:
评论

相关推荐

    数据结构 广义表的c++实现(链表)[!注意!描述中有一个bug要修正]

    实现的功能包括复制,拼接,删除,求深度,判断相等. 所有的功能都用递归实现,写完之后发现头有点大了.. [BUG:'GenList.cpp文件中,在Copy函数内,首先要调用Clear(*this), 不然对象原来的内存空间将泄漏]

    功能强大的bbs论坛

    - 强化标签功能:单个标签使用统计、标签不再仅仅关联于主题而是与某一帖子对应、增加标签推荐功能、修正标签重复时重复统计BUG、增加单个标签长度的判断。 - 优化搜索页面,搜索出某类主题之后,可批量将其删除,...

    商用版本文本编辑器DotNetTextBoxV6.0.8Source 源码

    5)修正上传文件、上传模板及上传媒体文件功能中文件无法删除的BUG! 6)调整了控件弹出窗口的方式,部分功能的模式窗口转换为Div+CSS的窗口! 7)调整pathtype属性默认值为AbsoluteFull(绝对全路径)! 8)增加对VS2008的...

    DotNetTextBox V6.0.10 商业版 下载 (已知最新)

    5)修正上传文件、上传模板及上传媒体文件功能中文件无法删除的BUG! 6)调整了控件弹出窗口的方式,部分功能的模式窗口转换为Div+CSS的窗口! 7)调整pathtype属性默认值为AbsoluteFull(绝对全路径)! 8)增加对VS2008的...

    手机 pdf 阅读器

    暂时删除了播放功能及网络相关的功能,由于以上两项功能一直没有能稳定下来,故暂时删除 增强了ZIP功能,支持带文件夹结构的ZIP/JAR文件 (对于大部分JAR电子书都,可以从文件管理器中找到非.class结尾的文件,并且...

    DotNetTextBox所见即所得编辑器控件 v3.3.1

    4) 改进了转换相对及绝对路径的算法,此算法除了修正了上一版本无法正确转换全部路径的BUG外,还修正了以前算法在非IE浏览器下可能引起的脚本停止响应的严重BUG。 5) 修改Word文档导入功能生成的图片文件名为...

    XueTr0.24 修正版 安全工具

    修正结束进程并且删除文件的问题 本工具目前初步实现如下功能: 1.进程、线程、进程模块、进程窗口信息查看,杀进程、杀线程、卸载模块等功能 2.内核驱动模块查看,支持内核驱动模块的内存拷贝 3.SSDT、Shadow ...

    无名网络整站程序修正版

    [改进] 论坛功能大幅度的增加和改进,批量删除,上传文件等; [改进] 下载增加图片和关键字,增强其功能,改善版面; [改进] 后台管理,主要有可在后台设定网站配置参数等; [改进] 本站修改的UBB功能再次...

    智动博客助手 v2.94.zip

    软件帮助站长和博客写手快速发送博客文章到博客网站,可以方便管理博客数据,支持数据自动备份恢复、博客库自动更新、发文章时动态伪原创功能等诸多功能,帮助用户优化网站排名,是用户实现博客推广功能的好帮手。...

    ASP ISchool随机抽题考试系统

    2.修正批量删除试题点取消仍然删除的BUG 3.修正练习提交简答题题解没显示的BUG 4.修正练习点击查看答案无效的BUG V3.2(20100411) 增加 1.增加防误关提示(适用于IE浏览器) 2.增加考试防拖拽文本限制 修改 1.整理...

    Discuz!英文版 v7.2.20100628.rar

    7.1版本的基础之上完成了产品的升级换代,实现了当前站长需求最迫切的数十项产品功能。 Discuz! 7.2 Changelog 20100110 更新内容: 修复版本存在的重要安全问题 修复版本中存在的其他使用 bug Discuz! 7.2...

    Discuz! v7.2 Bulid 20100628 全英文版本 独立安装包.rar

    7.1版本的基础之上完成了产品的升级换代,实现了当前站长需求最迫切的数十项产品功能。 Discuz! 7.2 Changelog 20100110 更新内容: 修复版本存在的重要安全问题 修复版本中存在的其他使用 bug Discuz! 7.2 ...

    LPAS个人相册 1.7.1.rar

    改进了数据存储方式改进了模板引擎增加了相册密码保护功能增加了图片尺寸自动缩小以防止页面过度拉宽的功能增加了参数检查和过滤、增强了LPAS系统安全性能增加了夏日沙滩模板修正了Firefox下相册图片列表显示不正常...

    Discuz! v7.2 Bulid 20101020 简体UTF8 独立安装包.zip

    7.1版本的基础之上完成了产品的升级换代,实现了当前站长需求最迫切的数十项产品功能。 Discuz! 7.2 Changelog 20100110 更新内容: 修复版本存在的重要安全问题 修复版本中存在的其他使用 bug Discuz! 7.2...

    Discuz! v7.2 Bulid 20101020 简体GBK 整合安装包.zip

    7.1版本的基础之上完成了产品的升级换代,实现了当前站长需求最迫切的数十项产品功能。 Discuz! 7.2 Changelog 20100110 更新内容: 修复版本存在的重要安全问题 修复版本中存在的其他使用 bug Discuz! 7.2...

    Discuz! v7.2 Bulid 20101020 简体GBK 独立安装包.zip

    7.1版本的基础之上完成了产品的升级换代,实现了当前站长需求最迫切的数十项产品功能。 Discuz! 7.2 Changelog 20100110 更新内容: 修复版本存在的重要安全问题 修复版本中存在的其他使用 bug Discuz! 7.2...

    Discuz! v7.2 Bulid 20101020 繁体UTF8 整合安装包.zip

    7.1版本的基础之上完成了产品的升级换代,实现了当前站长需求最迫切的数十项产品功能。 Discuz! 7.2 Changelog 20100110 更新内容: 修复版本存在的重要安全问题 修复版本中存在的其他使用 bug Discuz! 7.2...

    Discuz! v7.2 build 0110 繁体UTF8 独立安装包.zip

    7.1版本的基础之上完成了产品的升级换代,实现了当前站长需求最迫切的数十项产品功能。 Discuz! 7.2 Changelog 20100110 更新内容: 修复版本存在的重要安全问题 修复版本中存在的其他使用 bug Discuz! 7.2...

    Discuz! v7.2 Bulid 20101020 简体UTF8 整合安装包.zip

    7.1版本的基础之上完成了产品的升级换代,实现了当前站长需求最迫切的数十项产品功能。 Discuz! 7.2 Changelog 20100110 更新内容: 修复版本存在的重要安全问题 修复版本中存在的其他使用 bug Discuz! 7.2...

    Discuz! v7.2 Bulid 20101020 繁体BIG5 整合安装包.zip

    7.1版本的基础之上完成了产品的升级换代,实现了当前站长需求最迫切的数十项产品功能。 Discuz! 7.2 Changelog 20100110 更新内容: 修复版本存在的重要安全问题 修复版本中存在的其他使用 bug Discuz! 7.2...

Global site tag (gtag.js) - Google Analytics