在配置好了eclipse的tomcat外部署的方式后,我的程序最近经常出现一些异常
1、莫名其妙的WEB-INF文件夹下的很多文件消失:
上面那个截图上的除了文件夹以外的单独的文件很多时候都会莫名其妙的消失。我的老大教我方法是将这些文件拷贝出来,以防止下次再次出现的时候再次拷贝进去。我试过这种方式,失败。
2、在debug程序的时候经常出现问题,有时会出现Failed to connect to remote VM. Connection refused
有时会出现Unable to install breakpoint due to missing line number attributes. Modify compiler options to generate line number attributes”,
像上面的问题,如果是第一个问题的话,有可能是已经启动了debug。
第二个问题的话暂时不清楚怎么解决,好像直接点ok了程序也可以正常运行。
这里有一个链接,感觉还是有点用处的。虽然对解决我上面的那个问题暂时帮不上忙,但是暂时保存下,为以后留做备份
http://blog.csdn.net/caihaijiang/article/details/5903154
3、dorado初次接触,很多东西都不敢轻易的写。所以第一次在网格的表格中添加列。但是我们的程序是先加载程序员
自己的列,然后才加载的模版中的列。而用户要求新添加的列要放在当前的网格的后面。这种情况下有三种解决方式;
解决方式一:
采用下面的sortTableElementAfterImprove方法。这种方法的确是将两列交换了位置。但是如果要交换的两列在
模版中配置的,这样很容易给客户照成误会说我在模板中的列是在最前面,怎么现在到了最后面或者中间去了,所以这样
做不是很好
if ("tableLink".equals(control.getId())) {
DataTable dt = (DataTable)control;
EquipmentCommonUtil.sortTableElementAfterImprove(dt,"APORTNAME", "LINK2ALOC_NAME");
EquipmentCommonUtil.sortTableElementAfterImprove(dt,"ZPORTNAME", "LINK2ZLOC_NAME");
// 所属传输系统 所属传输子网 , 除传输子网外其他隐藏
if (!CommonUtil.isNull(metaClassName) && !metaClassName.equals(MetaClassNameConst.getMetaClassName("TransNetwork"))) {
dt.getColumn("LINK2TRANSPORTSYSTEM_NAME").setVisible(false);
dt.getColumn("LINK2TRANSNETWORK_NAME").setVisible(false);
dt.getColumn("LENGTH").setVisible(false);
}
//所属高阶通道 , 除传输群路外,其他的界面都隐藏
if(!CommonUtil.isNull(metaClassName) && !metaClassName.equals(MetaClassNameConst.getMetaClassName("TransportGroup"))) {
dt.getColumn("LINk2HCHANNEL_NAME").setVisible(false);
}
}
解决方式二:(推荐)
采用dorado中server apidataTable 中的方法:
columns();
| columns () 取得所有列的集合对象。 |
com.bstek.dorado.utils.collection下的remove()方法
remove();
remove (java.lang.Object key)
删除对象列表中的一个对象。
com.bstek.dorado.view.control.AbstractControl下的addColumn()方法
addColumn
(Column
column)
添加一个列对象。
else if( control.getId().equals("tableSubNetwork"))
{
System.out.println(" control id is ; " + control.getId() );
DataTable tableSubNetwork = (DataTable) control;
//EquipmentCommonUtil.sortTableElementAfterImprove(tableSubNetwork,"NECOUNT", "NENAME");
System.out.println(tableSubNetwork.getColumnCount());
ObjectCollection oc = tableSubNetwork.columns();
// System.out.println("oc.size(): one " + oc.size());
Object neCount = oc.remove("necount");
System.out.println("oc.size(): " + oc.size());
// oc.set(oc.size()-1, neCount);
tableSubNetwork.addColumn((Column)neCount);
Object neName = oc.remove("nename");
System.out.println("");
tableSubNetwork.addColumn((Column)neName);
}
解决方式三:采用dorado的client api中dataTable的方法
setColumnIndex (Column column, int index) 设置列的序号.此方法可改变列的顺序 |